1 |
Ühel kenal päeval, K, 06.01.2016 kell 16:23, kirjutas tot-to: |
2 |
> I'm a user of a KISS wm, which does not provide Windows™-like menus, |
3 |
> desktop icons, etc. GUI software is called just by typing the binary |
4 |
> name in PATH, just like any other software. For me the desktop-files |
5 |
> are |
6 |
> some kind of useless junk. |
7 |
> |
8 |
> Recently a lot of software were made harddep on |
9 |
> dev-util/desktop-file-utils, i.e. from now on there are not only junk |
10 |
> text files, but also a junk software required without any reason. |
11 |
> I've |
12 |
> added it to /etc/portage/profile/package.provided and everything |
13 |
> compiles and works just fine. It means that in reality there is no |
14 |
> real |
15 |
> need in this software. |
16 |
> |
17 |
> Please make these dependencies optional. |
18 |
> |
19 |
|
20 |
This is not going to happen, because this dependency is not optional. |
21 |
The fact that it seems to build for you without an apparent immediate |
22 |
breakage on emerge, doesn't mean things aren't broken for you. |
23 |
At least in the GNOME team we are not in the business of having silent |
24 |
breakages to avoid build time dependencies of a 19kB simple utility |
25 |
(192kB with a couple other tools and documentation). |
26 |
|
27 |
desktop-file-utils is used to update the MIME types handling |
28 |
applications cache database after .desktop files are installed or |
29 |
removed. |
30 |
xdg desktop files are not only for showing GUI applications in |
31 |
application menus, but also handling of automatic startup on login of |
32 |
things, MIME type associations (which this is used in particular at |
33 |
buildtime to update the association database as stated above) |
34 |
|
35 |
If you choose to INSTALL_MASK /usr/share/applications and/or other |
36 |
.desktop files, you aren't just avoiding tiny text files from being |
37 |
installed that you believe are only needed for application menu |
38 |
entries, you are also breaking MIME type associations and various other |
39 |
features these FreeDesktop.org standard files provide to the overall |
40 |
system. |
41 |
|
42 |
If such a USE=desktop-file is added and then these desktop-file-utils |
43 |
utility calls are not made via xdg.eclass, then your system will have |
44 |
no idea of MIME type capabilities. Your browser (opened via your dear |
45 |
terminal from command line) will not be able to know what to use to |
46 |
open a PDF file or whatever other file. That's just one example. |
47 |
|
48 |
You are free to continue having things broken in such a way, but this |
49 |
is not going to be made optional in the main tree in the name of |
50 |
avoiding a 192kB package (as is its size when installed in the system, |
51 |
including all of its documentation and manual pages). If you are |
52 |
building an embedded system or whatever, it's a buildtime dep and can |
53 |
be removed in the end. However care should be taken then to have a |
54 |
properly up to date MIME association cache shipped as well in the final |
55 |
image for things to work properly or in a properly performant manner. |
56 |
|
57 |
If we are looking for something to improve here, it would be in the |
58 |
package manager to support postinst triggers that could be grouped to |
59 |
not be ran after each package, but only once in a while (but at least |
60 |
once). Calling this after each package might be unnecessary, and a |
61 |
couple times in the whole emerge session should be fine - that MIME |
62 |
association can be a bit delayed, and not called after each package |
63 |
postinst. |
64 |
|
65 |
|
66 |
On behalf of the GNOME team, |
67 |
Mart Raudsepp |