Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

.desktop terminal applications in menu not running on debian/openbox #23

Open
xenogenesi opened this issue Dec 29, 2015 · 10 comments
Open

Comments

@xenogenesi
Copy link

I'm running fbpanel with openbox on a minimal debian/unstable installation, I used to run fbpanel in a very similar environment until few weeks ago without problems, but it was a 32bit arch and I needed to switch to 64.

I'm not sure this is a fbpanel issue but fbpanel is where it show up.

fbpanel is launched from ~/.config/openbox/autostart (a shell script), it works almost fine but can't get it to run .desktop/terminal applications from the menu (mc for instance), here's fbpanel stderr:

The TERM environment variable is unset!

If I wrapp fbpanel in a script (exporting TERM=xterm) and launch it using gmrun, the error become:

Cannot get terminal settings: Inappropriate ioctl for device (25)
Failed to open terminal.SLang_getkey returned SLANG_GETKEY_ERROR
Assuming EOF on stdin and exiting

That's the strace log:

3627  fstat(0, {st_mode=S_IFCHR|0666, st_rdev=makedev(1, 3), ...}) = 0
3627  ioctl(0, TCGETS, 0x7ffd575d5870)  = -1 ENOTTY (Inappropriate ioctl for device)
3627  mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f41e63a1000
3627  read(0, "", 4096)                 = 0
3627  write(2, "SLang_getkey returned SLANG_GETK"..., 75) = 75
3627  exit_group(1)                     = ?
3627  +++ exited with 1 +++

If I launch fbpanel from a terminal the menu terminal applications are executed within the terminal.

x-terminal-emulator is set to terminator but xterm is installed.

Any help would be appreciated.

@Fluffkin
Copy link

Unsure if this is the same problem, related problem, or just a similar problem...
But! fbpanel 6.1-r2 running on Gentoo seems to be ignoring the PATH statement in .desktop files entirely, meaning applications that need to be started from a specific path fail.
The same .desktop files work flawlessly in XFCE

@capt-d
Copy link

capt-d commented Jan 7, 2017

Aloha
I wrote patch which makes possible to run terminal applications from menu.

@xenogenesi
Copy link
Author

@capt-d I can test it, just link me the patch and sources hash version to use

@capt-d
Copy link

capt-d commented Jan 8, 2017

Aloha

I'm also using fbpanel and Openbox but on Gentoo. The TERM variable must be set before running fbpanel. Set it to desired terminal emulator in autostart.sh, otherwise its value is "linux" when fbpanel is starting. To test my patch, download main branch from fork on my account.

@xenogenesi
Copy link
Author

@capt-d I see what you did and is working, but I've a couple of concerns

the XTERM variable should be set by the terminal itself and I don't think it map always to an executable, if my understanding are correct it should label the current terminal capabilities, its profile if you want, it doesn't always map to a command, mine is empty at the time of openbox's autostart, terminator/zsh set it to xterm-256color (which is not a command)
Your patch run a terminal so XTERM should be replaced and run fine, but wouldn't be better to use a fbpanel's configuration entry to set the terminal command to use? (terminal = someterm -e %c)

the second concern is... I think I remember fbpanel working with terminal commands, not in the recent past so I don't remember my exact environment, but I think was openbox already, so what different? Something changed? Does it really need a patch?

@xenogenesi
Copy link
Author

@capt-d so I finally took the time to look info fbpanel and this issue, it does need a patch as Terminal=true in .desktop files is currently ignored, the only way I had seen terminal .desktop run is if they had the terminal command already within the Exec key.

Still, I wouldn't use XTERM, something like FBPANEL_TERM? so it could be exported from ~/.config/openbox/environment

Also I would trim away extra % arguments as the current fbpanel's parser does, or you'll get errors like:

terminator: error: Additional unexpected arguments found: ['%F']

@xenogenesi
Copy link
Author

@capt-d more something like that

@capt-d
Copy link

capt-d commented Jan 10, 2017

Aloha

You are right. Using TERM variable is not a good idea. I will write new patch.

@xenogenesi
Copy link
Author

xenogenesi commented Jan 10, 2017

@capt-d I'm using the one linked in the comment above from a couple of days and seems to be working fine, feel free to use the same or take and modify if you like (the concept is the same as your just the implementation a bit different)

@capt-d
Copy link

capt-d commented Jan 14, 2017

Aloha

I've added terminal option for systemmenu in menu plugin. In my case its value is: xterm -fb green -bg black.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants