Comments (4)
yes, so we should not be affected. So anything to do for us here?
from vim-appimage.
On the compromise, no, we should be more than OK (but I thought I'd check).
I'm trying to figure out what's going on with the embedded languages. We clearly ship some libraries as ldd
shows (and unlike what the release notes state).
- Python 3 apparently does not run out of the box (
:python3
yields E319). - Python 2 also does not work (
E887
) but it seems like it might be fixable by using the target's runtime (?) Lua
seems to work and fixed at 5.3Perl
at 5.30
I think the release notes are also wrong about installing those interpreters on the system — if they work at all, they will work with the builtin appimage version.
from vim-appimage.
Findings: all interpreters are currently configured with --enable-*interp
. This means right now:
- all interpreters are "available" regardless of what's installed on the user's system
- but unless the user has Ubuntu 20.04, no interpreter will find their default packages
- in particular, Python 2 is enabled, but it can't actually run anything useful
- the others work to varying degrees (e.g. Lua doesn't seem to need anything)
I've reconfigured my builds to include this in scripts/build_vim.sh
CFG_OPTS+=( "--disable-pythoninterp" )
CFG_OPTS+=( "--enable-python3interp=dynamic" )
CFG_OPTS+=( "--with-python3-stable-abi=3.8" )
Only Python3 seems to have stable-ABI capabilities. On any system, one can set pythonthreedll=libpython3.11.so
or whatever, and appimage-vim will use it. To simplify things, I've written a vim script to auto-search for an the appropriate "dll" (link below); it seems to work on at least Debian derivatives.
For the other interpreters , vimhelp says this about */dyn
configurations:
The version of the shared library must match the $INTERP version Vim was compiled with.
… so for those, maybe non-dynamic is the least bad option.
What do you think should be done? I could
- turn on dynamic python3 and disable python2 with the
CFG
ops above - document the real state of affairs
- add a PR for
search-interpreter-dlls.vim
to the main branch, and -
- (maybe?) add it to the appimage-vim's default startup sequence, though this seems too much
from vim-appimage.
fixed by #70
from vim-appimage.
Related Issues (20)
- Release stopped HOT 3
- In Ubuntu 22.04 error libpango-1.0.so.0: undefined symbol: g_memdup2 HOT 10
- No v9.0 appimage HOT 3
- incorrect vim 9 runtime path
- What python version does this appimage link to ? HOT 8
- github is deprecating the ubuntu 18.04 images HOT 3
- libcrypt.so.1: version `XCRYPT_2.0' not found (on debian bullseye, ubuntu 22.10, mageia 9) HOT 1
- Build another AppImage with all popular dependencies HOT 4
- GVim - 'xapp and canberra' Modules failed HOT 4
- Current working directory not correctly set when running inside Docker Container/FUSEless system HOT 3
- Vim failes to find runtime files
- GVim lacks all GUI elements? HOT 12
- Vim fails to source `defaults.vim`? HOT 2
- Consider to enable python-stable-api for appimage build ? HOT 2
- Releases for 9.1.x can't find files in /usr/share/vim/vim90
- Vim AppImage configuration not persisting across sessions HOT 7
- glib version issues on both images while system has GNU libc 2.17 HOT 2
- gvim appimage: run vim if called as vim; work with extracted appimage HOT 4
- Runtime path doesn't include help tags. HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from vim-appimage.