Comments (8)
I'm not reading the spec incorrectly! the spec is REALLY clear: you can use a full path OR just the name,
there is no priority involved...Both method are valid, any other interpretation is just speculations :)
I really think using only the name is much better, as in this way the DM can choose to show a different icon for styling purpose. (infact I was doing this in a lightdm efl greater theme)
In the end I really suggest you to fix Entrance...at least if you want it to be FDO compliant.
from epymc.
FDO spec says:
Icon to display in file manager, menus, etc. If the name is an absolute path, the given file will be used. If the name is not an absolute path, the algorithm described in the Icon Theme Specification will be used to locate the icon.
source: https://standards.freedesktop.org/desktop-entry-spec/desktop-entry-spec-latest.html
So the way epymc set the icon is correct and entrance should search the icon using the theme spec (if icon is not a full path of course)
If you use efreet in entrance than it should be a really easy to correctly follow the standard :)
from epymc.
hmmm, hard-coding the path doesn't seems the correct solution to me, icons can be installed in different paths based on system configuration (that is "/usr/share" can be different).
It seems to me more a missing feature (bug?) in your login manager, what are you using to login?
Otherwise I need to edit the .desktop file on build/install (like usually happen with autofoo stuff) but this is not really a clean solution to my eyes.
from epymc.
I am using entrance, and the E session entry has this path hard coded via autotools. Login managers may not have an icon pack selected. I am not sure using just the name is the correct way. Very few if any log in mangers seem to use such icons. Others like plasma do not have an icon at all. I can see about changing the code in entrance to find the image. Not sure that is correct given how E hard codes a path to the icon file in its xsession desktop entry.
from epymc.
Then tell my why Enlightenment does it differently? I assume they did that for a reason. They could do it just as you do, but they did not. Why?
You are actually reading that spec incorrectly
"Icon to display in file manager, menus, etc. If the name is an absolute path, the given file will be used. If the name is not an absolute path, the algorithm described in the Icon Theme Specification will be used to locate the icon."
Thus the order is
- If its an absolute path use that
- If it is NOT an absolute path then use the Theme Specification.
Absolute path comes before looking up an icon by name. That is a Desktop Entry specification and this usage is in Display Manager, pre-desktop. I do not believe the same rules apply and you cannot make the same assumptions. Only Lightdm uses system themes. SDDM and Entrance, likely others like anna, all use their own theme that has nothing to do with a desktop theme. Thus cannot rely on Desktop Entry spec, or that a theme will be set to be able to lookup items.
I was going to modify Entrance code, but then I have to code a special case for epymc only. That does not make much sense. I looked at the Enlightenment desktop entry for its xession, and it uses a absolute path. Enlightenment is likely doing it for a reason. Thus epymc should likely do the same.
from epymc.
It is up to you either way, I already addressed this in the epymc ebuild I made. I modify via sed. Just wanted to be consistent with other E stuff, and wasn't sure if I should modify entrance code or not. I can always use eina_file_path_relative and switch between elm_image_file_set and elm_image_icon_get. Or drop the icon aspect entirely. But if epymc is the only thing doing it that way, seems a bit much to code for a corner case.
As a closing note, I think use of desktop files for xsessions is likely abuse of that specification. Though it is the current standard way. Just mentioning that for the irony. I think they will be used for Wayland sessions as well but maybe not. Anyway up to you from here. Thank you for your time and consideration.
from epymc.
I will ask Carsten a some point he is the one who added the icon to E's xsession desktop entry file.
That the spec starts with full path, then goes to name, shows its secondary. Otherwise it would say it starts with FDO and then tries absolute. The reason is because the FDO logic uses more resources than via absolute path. Icon lookup logic
Also your assuming 2 things here.
- That someone else will make a different Epymc icon. Which does not exists now. If no other exist, then via name or path is moot as there is no alternative for FDO to use/find if they switch icon sets.
- That someone will want to override a X session icon, if another icon is even available
FDO is about desktop icons in menus, buttons, toolbars, etc. This is about X sessions, that would be identified via Logo/brand, E logo for E, gnome Foot, kde K, etc. Thus the user can visually select which session based on icon. Those are not likely to change, and rarely does a icon set override a brand logo like that.
I will change entrance IF and WHEN the E xsession desktop entry switches from absolute to name. Or if I come across another that does it that way. Presently only E and Epymc are setting icons at all. One does it via absolute, one via name. I have to go with Carsten did it that way for a reason. More will log into E desktop than Epymc. Thus if one is correct and one is wrong, seems Epymc is wrong and E is correct. E is used by considerably more.
I still have to see what it will take to log into Epymc, as it does not work. Which is another matter entirely. Thus the icon is completely moot if you cannot log in or use it. But again unless another alternative icon is exists with the same name. Using a name lookup gives you nothing. It will always be that 1 icon till another exists.
Anyway no need for further discussion.
from epymc.
I agree with you: no need for further discussion :P
from epymc.
Related Issues (16)
- Allow translation using an online service HOT 7
- lock keyboard ability HOT 1
- Cannot start epymc with the last python-efl HOT 5
- Can not build epymc 1.1.0 HOT 2
- Desktop file is missing a semi colon HOT 1
- Using epymc over HDMI-CEC remote control HOT 2
- Media library not scanning HOT 7
- Accelerate the music scan HOT 11
- Build with python2 HOT 3
- SyntaxWarning for 'is' with literals HOT 1
- music python 3 support HOT 4
- Virtual Keyboard Layouts HOT 5
- Youtube plugin no longer functions HOT 4
- utente epymc.pot HOT 2
- brocken suggestion for freeroms.org. 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 epymc.