Skip to content
This repository has been archived by the owner on Oct 3, 2020. It is now read-only.

appimaged: Move in all desktop files at once #12

Open
probonopd opened this issue Jun 9, 2018 · 9 comments
Open

appimaged: Move in all desktop files at once #12

probonopd opened this issue Jun 9, 2018 · 9 comments
Labels
good first issue Good for newcomers help-wanted Extra attention is needed high-priority

Comments

@probonopd
Copy link
Member

(from AppImage/AppImageKit#577)

Currently we are writing desktop files as soon as we have extracted them to .local/share - this triggers some desktop managers to rebuild the menus after every desktop file, resulting in a major slowdown of the system.
So instead, we should extract them to a temp location and only after we are "done" (as in: we did not process any new AppImages in the last second or so), move them in together at once.

@probonopd
Copy link
Member Author

And then run

update-desktop-database ~/.local/share/applications
gtk-update-icon-cache-3.0  ~/.local/share/icons/hicolor/ -t
gtk-update-icon-cache  ~/.local/share/icons/hicolor/ -t

@probonopd
Copy link
Member Author

I think that parts (or all?) of this logic ("scheduled... for integration") might be implemented in AppImageLauncher. Correct @TheAssassin? If so, could the logic be moved to libappimage so that all libappimage consumers would get to use it?

@azubieta
Copy link
Contributor

azubieta commented Jun 4, 2019

@probonopd From my point of view libappimamge already have all the required parts. You can provide a custom $HOME path to deploy the files without editing the environment variable. This feature is used in the tests cases to avoid polluting the developer system.

The schedule feature implies threading which is a very error prone feature and every developer has a different favorite library to do it. My vote goes to keep such feature out of libappimage

@probonopd
Copy link
Member Author

@azubieta can you make it work in appimaged then?

@azubieta
Copy link
Contributor

azubieta commented Jun 4, 2019

Sure, but as you suggested it would be nice to have part of this feature on libappimage without the synchronization thing. So the client will be responsible for starting and committing transactions.

@probonopd
Copy link
Member Author

Yes, I thought it would be good to abstract that away in libappimage so that the individual consumers of libappimage don't have to implement any of this. Actually I still think that would be great to have.

The schedule feature implies threading which is a very error prone feature and every developer has a different favorite library to do it.

Exactly because of this I would say let's do it once and in a correct way rather than have every developer fight with this on their own, leading to many (different) bugs.

@probonopd probonopd unpinned this issue Jun 5, 2019
@probonopd probonopd pinned this issue Jun 5, 2019
@probonopd
Copy link
Member Author

So @azubieta how can we get the situation improved?

@probonopd
Copy link
Member Author

probonopd commented Jun 9, 2019

What can we do to get this done after all? Instead of duplicating (copying) code from AppImageLauncher, I still think it would be great if libappimage would provide this functionality, so that not each user of libappimage needs to do this on their own.

@azubieta
Copy link
Contributor

libappiamge will receive this feature as part of the solution to this issue: AppImageCommunity/libappimage#28

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
good first issue Good for newcomers help-wanted Extra attention is needed high-priority
Projects
None yet
Development

No branches or pull requests

2 participants