Skip to content
This repository has been archived by the owner on Jul 1, 2024. It is now read-only.

Entrance reading cairo-dock as an Xsession even though it's type Application #50

Closed
TheTechRobo opened this issue Nov 24, 2020 · 4 comments

Comments

@TheTechRobo
Copy link
Contributor

TheTechRobo commented Nov 24, 2020

Description

As stated by @Thanatermesis:
The issue is from entrance reading the .desktop incorrectly, see:

~ ❯❯❯ grep "^Type=" /usr/share/xsessions/e16-session.desktop
Type=XSession
~ ❯❯❯ grep "^Type=" /usr/share/xsessions/cairo-dock.desktop
Type=Application

I don't know why cairo-dock is on this directory but in any case is not the correct type of .desktop file that should be used for init X sessions, so entrance should only consider the ones of type XSession

Steps to reproduce

  1. Install Cairo-Dock
  2. Make sure that the .desktop file is in /usr/share/xsessions
  3. Launch Entrance

How entrance is started (doesn't matter)

I installed it with Apt, does this answer your question?
I think systemd.

System information

  • OS/Distro: elive 3.8.17
  • Pam enabled: Idk (doesn't matter)
  • Consolekit enabled: NO
  • Systemd or other init (openrc, sysvinit, etc): Systemd (doesn't matter)
  • EFL Version: Git i think (doesn't matter)
@wltjr
Copy link
Member

wltjr commented Dec 4, 2020

Thanks for the report. I will see about adding code to ignore the unwanted types in desktop files. It is not likely to happen till after the 15th, but it is on my TODO list, and it should not require too much to fix. Thank you for the report, and sorry for the issues!

@TheTechRobo
Copy link
Contributor Author

Sorry for the issues!

No problem! Thanks for making Entrance actually work OK!

@wltjr
Copy link
Member

wltjr commented Dec 19, 2020

@TheTechRobo after looking further into this issue, I do not think it can be resolved as intended. Starting with the desktop specification, it only lists three types, application, link, and directory. That rules out using a type of xsession, as that is not valid. While it could be a valid custom type, it is not standard, and not too many things use that. Entrance accesses those files via efreet desktop support, which per the spec, reads the type field as a integer not a string. That makes reading custom types very difficult, if not unknown.

Then there are the things using Type=Application. Even Enlightenment itself lists its type as an application. Another example is the xsession.desktop file used with xinit, that also uses application. Given the amount of things using application, that is not a type that could be ignored without causing a lot of issues. Trying to get other things to switch to xsession from application would probably not be very successful.

It seems the best solution would be to change the location of cairo-dock.desktop file. Otherwise, entrance would need some sort of blacklist to ignore certain desktop files found in the default location. But as for ignoring them based on type, that does not seem to be a viable option. Therefore, I will close this issue, as short of implementing a black list, which I may be open to, but would need more than just a single application to justify that effort, there does not seem to be any way to resolve this issue in entrance. Sorry, I took a look, and am sympathetic to the issue, but have to resolve it in other ways. Thanks!

@wltjr wltjr closed this as completed Dec 19, 2020
@TheTechRobo
Copy link
Contributor Author

Sounds good. I'll let you know if there's any other conflicts with applications.

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

No branches or pull requests

2 participants