Comments (7)
To be quick, I have just applied the patch to the "installed" file on my machine, rather than rebuilding a package for xpra.
Seems OK!
Thanks for the attention and for being extra quick!
from xpra.
then xpra startx misbehaving.
xpra does not use startx
.
launch
run_scaled xpra
That's a strange command to run.
Is the /usr/bin/xpra
installed correctly?
https://github.com/Xpra-org/xpra/blob/master/fs/bin/xpra
it may not be running under the correct python interpreter or that there is no module named xpra
IIRC, run_scaled
uses --attach=yes
.
The initial command will start the server and spawn a separate client command to attach to it.
Perhaps it is using the wrong interpreter for doing that?
Lines 1588 to 1590 in 7777ba4
Maybe the problem comes from here:
xpra/xpra/platform/posix/paths.py
Lines 198 to 203 in 7777ba4
And it ends up using pain
xpra
which would use the current interpreter.
I don't know how else to locate the correct interpreter to run.
from xpra.
Sorry many typos, in my report, should look better now
from xpra.
Perhaps it is using the wrong interpreter for doing that?
My wild guess is that the server launches fine, but then the client uses the python from the virtual environment. That is actually the same python interpreter on my system, but with a different setup for the packages paths... As a consequence xpra ends up not being able to find its own module...
from xpra.
That is actually the same python interpreter on my system, but with a different setup for the packages paths...
Like I said, I don't see how xpra is supposed to figure out which executable and PYTHONPATH
to use.
This does not look like a bug to me.
from xpra.
The problem does not seem to be the python executable, but the prefix by which it gets called because of the following:
-
python sets
sys.path
usingsys.prefix
that in turn gets set from the path by which the python interpreter is called. For instance, if you launch/usr/bin/python3
thensys.prefix
gets set to/usr
, but if you have a virtual environment active, calling justpython
will end up insys.prefix
being the path of the virtual environment itself, sosys.path
will be set up differently. -
when you call xpra, you call a shell script that has a shell bang pointing to
/usr/bin/python3
. So you getsys.prefix
set up to the prefix of the system python andsys.path
containing the directory wherexpra
can be found. However, when xpra (server) tries to launch xpra (client), your code determinespythonx.y
as the interpreter to start, without any absolute path. In turn that ends up calling thepython
of the virtual environment, which causessys.prefix
to be set to the virtual environment itself andsys.path
not to include the location of thexpra
module.
I think that the path of the interpreter to call should be based on:
sys.executable
when not empty- this assures that the same interpreter at the same path is used for the server and the client
sys.prefix
/bin/pythonx.y otherwise where thepythonx.y
string is determined as in your code- this is the best guess should
sys.executable
not be set, as it sets the path of the interpreter correctly
- this is the best guess should
from xpra.
@callegar does the commit above fix things?
from xpra.
Related Issues (20)
- Python3 Installation on RHEL HOT 2
- Problems with 4k screen HOT 28
- invalid compressor(s) specified: lzo HOT 6
- Debian Buster: Repository metadata mismatch HOT 1
- Client-initiated `shadow` fails with `ModuleNotFoundError: No module named 'xpra.gtk'` HOT 4
- setup.py cannot find nvcc or nvjpeg HOT 6
- `LIVE session at :noabstract` HOT 6
- Missing dependencies on Ubuntu 22.04 HOT 2
- Complete screen turns white HOT 6
- Connection failure: connection refused HOT 1
- Build issue with --minimal (build works, install doesn't) HOT 6
- some keys don't work HOT 2
- [v6.0] Latest Beta Builds missing from https://xpra.org/beta/stable/main/binary-amd64/ HOT 2
- Konsole screen doesn't update properly HOT 12
- Sub menus do not open in Firefox HOT 5
- README has incorrect information about PGP key HOT 3
- new h264 codec implementation causes virtual screen tearing HOT 17
- Paramiko does not work on Official Windows Installer Build HOT 3
- Using html5 client via ssh HOT 19
- x11 client v6 segfault on exit 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 xpra.