flattool / warehouse Goto Github PK
View Code? Open in Web Editor NEWA versatile toolbox for viewing flatpak info, managing user data, and batch managing installed flatpaks
License: GNU General Public License v3.0
A versatile toolbox for viewing flatpak info, managing user data, and batch managing installed flatpaks
License: GNU General Public License v3.0
Warehouse is a great app, however it would be even more useful if it could install new Flatpak apps (either directly from existing remote or at least *.flatpakref files from Flathub or other places). It would be really helpful on Linux distributions such as Ubuntu that do not support Flatpak installation using GUI. :-)
"Warehouse" is not name that someone can easily remember, so I suggest to add "flatpak" keyword to https://github.com/flattool/warehouse/blob/main/data/io.github.flattool.Warehouse.desktop.in as "Keywords=flatpak;", so when you would search for this app in your apps list, you can just type "flat".
In the window showing info about selected runtime there should be also a list of apps which use that runtime.
Greetings, great work and thanks for a super useful app!
The only issue I have is a UI one that should be a simple fix. But the padding style on the top line is almost nonexistent and needs to be adjusted. I don't know if Gnome HiG has a specific size, but if you look at other Gnome apps, which I'll show below they all have a bit of padding in the top, which in part helps with legibility/readability. I say padding, perhaps it goes by another name, but hopefully the following screenshots below illustrate my point. It'd be nice to fix this so it is more inline with other Gnome apps, thank you!
I'm sure there's more apps that use padding, it just depends, but please let me know if this is something you can adjust, thanks again.
Congratulations, this app looks very promising! It could become the one-stop app for managing flatkpaks via UI.
As a suggestion, I would love to have a way to execute the equivalent of the flatpak uninstall --unused
command from the UI. It could be a new option in the menu, or a similar feature (maybe a filter) that allows me to see unused or orphaned packages and remove them.
$ sudo flatpak install io.github.heliguy4599.FlattoolGUI.flatpak
error: The application io.github.heliguy4599.FlattoolGUI/x86_64/master requires the runtime org.gnome.Platform/x86_64/master which was not found
but
$ sudo flatpak remotes
Name Options
flathub system
README.md
documentDemonstration video:
Screencast from 2024-03-04 10-36-51.webm
flatpak install --user org.gnome.gitgDevel
with GNOME Nightly versionResult: nothing happens in practice. Both warehouse and flatpak on the commandline confirm that the package has remained at the latest version.
There was no output in the terminal.
The icons from the user's icon theme should be used for the Flatpak icons, like Flatseal and GNOME Settings do.
First, my compliments for this smoothly working and good-looking application!
Will there be any ability to (batch) update installed flatpaks? I can't find anything about that topic. Or am I missing some point?
Warehouse falsely stated "This application is no longer maintained." (or something very similar) for an application which had been updated only 5 months previously. That was presumably because it was using a just out-of-date Flatpak platform. Flathub simply and accurately stated that it was using an out-of-date platform.
PLANNED & NOT PLANNED.md
documentSupport make application icon
example on google chrome, i created file with this content, for run google chrome, i use this schema on other program
[Desktop Entry]
Version=1.0
Type=Application
Terminal=false
Exec=flatpak run com.google.Chrome
Name=Google Chrome
Comment=Google Chrome
I think this feature will very helpfull.
The app has huge black barriers when run in a KDE Wayland session with "direct graphics rendering" enabled.
Install the Flatpak on a Fedora Kinoite KDE Wayland system
flatpak run io.github.flattool.Warehouse
in a terminal and if applicable, show any output(with direct graphic rendering disabled)
F: Not sharing "/usr/share/icons" with sandbox: Path "/usr" is reserved by Flatpak
libEGL warning: wayland-egl: could not open /dev/dri/renderD128 (Datei oder Verzeichnis nicht gefunden)
with direct graphic rendering enabled the second warning doesnt show, but the black borders are there
Heya!
A feature I think would be useful (and probably not too cumbersome) would be the ability to launch an app directly.
Love the app, both in terms of looks and functionality ^^
PLANNED & NOT PLANNED.md
documentFlathub has recently added the blue verified icon to indicate when a Flathub package is owned by the owner/author of the packaged application. I would love to see:
The search views in Warehouse do not display an AdwStatusPage
when there are no search results; they simply display an empty GtkListBox
, which looks slightly jarring.
Main Window | Orphaned Data Window |
---|---|
![]() |
![]() |
Other similar apps with search views implement an AdwStatusPage
with a loupe-symbolic
icon as per the HIG for search views.
Jellybean | Workbench | Flatseal |
---|---|---|
![]() |
![]() |
![]() |
I can help add UI definitions to the .blp
files to aid with showing a status page when no results are returned, as well as contribute to the Python code (despite me not knowing Python or PYGObject that well).
Nice app! It would be nice to remember settings.
Hey! Very cool app, you should consider applying for the GNOME Circle [1]
Tried Warehouse for the first time on an Ubuntu 20.04. On the first attempt the app crashed after trying to empty all on Manage Leftover Data. On the second attempt, I run on CLI (see below) and the app crash immediately after trying to go to that section. The third attempt everything go as expected.
$ flatpak run io.github.flattool.Warehouse # Second run, crash immediately after trying to go to Manage Leftover Data
**
Gtk:ERROR:../gtk/gtkboxlayout.c:646:gtk_box_layout_compute_opposite_size_for_size: assertion failed: (sizes[nvis_children - n_inconstant].data == child)
Bail out! Gtk:ERROR:../gtk/gtkboxlayout.c:646:gtk_box_layout_compute_opposite_size_for_size: assertion failed: (sizes[nvis_children - n_inconstant].data == child)
$ flatpak run io.github.flattool.Warehouse # Third run
(warehouse:2): Gdk-CRITICAL **: 08:34:22.884: gdk_monitor_get_geometry: assertion 'GDK_IS_MONITOR (monitor)' failed
(warehouse:2): Gdk-CRITICAL **: 08:34:22.896: gdk_monitor_get_geometry: assertion 'GDK_IS_MONITOR (monitor)' failed
(warehouse:2): Gdk-CRITICAL **: 08:34:22.908: gdk_monitor_get_geometry: assertion 'GDK_IS_MONITOR (monitor)' failed
(warehouse:2): Gdk-CRITICAL **: 08:34:23.372: gdk_monitor_get_geometry: assertion 'GDK_IS_MONITOR (monitor)' failed
/usr/lib/python3.11/site-packages/gi/overrides/Gio.py:42: Warning: Source ID 1610 was not found when attempting to remove it
return Gio.Application.run(self, *args, **kwargs)
$ flatpak run io.github.flattool.Warehouse # On the other runs everything worked fine
$ flatpak run io.github.flattool.Warehous
Feature Request
Description:
I would very much like to see an option to enable an application folder (/home/user/applications/ by default) where the users would simply put .flatpakref files and those would get installed and uninstalled depending on the contents of the folder (perhaps it could open flattool with a prompt how to deal with uninstalling it? or maybe a popup in the panel as an extension?)
Use Case:
I believe many macOS users are used to this behaviour, as well as it being a genuinely useful function.
Additional Information:
@axtlos has a similiar projects
Implementation Suggestions:
This could be achieved with some sort of a filesystem watcher (check @axtlos's project for more details)
README.md
documentWhen I open Warehouse, the tool often freezes for about 20 seconds and my DE thinks the app is not responding. Occasionally, the app will just crash.
flatpak run io.github.flattool.Warehouse
in a terminal and if applicable, show any output(process:2): Gtk-WARNING **: 16:56:00.450: Unknown key gtk-modules in /home/cameron/.var/app/io.github.flattool.Warehouse/config/gtk-4.0/settings.ini
Gdk-Message: 16:56:11.513: Lost connection to Wayland compositor.
PLANNED & NOT PLANNED.md
documentif someone has "nor/mal" or other bigoted bullshittery in their bio somewhere, warehouse should automatically nuke all flatpaks and associated data.
So, I've noticed after installing the flatpak version, that the GUI is not displaying correctly:
See this screenshot as an example. I'm not sure if the terminal output is related to this error.
Sys Info:
Operating System: openSUSE Tumbleweed 20230929
KDE Plasma Version: 5.27.8
KDE Frameworks Version: 5.110.0
Qt Version: 5.15.10
Kernel Version: 6.5.4-1-default (64-bit)
Graphics Platform: Wayland
Flatpak version: Flatpak 1.15.4
README.md
documentFollow-up to #90:
With my --user
installation,
Warehouse's GUI never shows the latest available commit ID, even if you downgraded a package:
README.md
documentWarehouse shows author names for some flatpaks instead of using normal flatpak names since v1.5.0
.
Dvlv instead of BoxBuddy, Felix Zwettler instead of Rnote, dec05eba instead of GPU Screen Recorder etc.
I notice that this output is also reflected when using flatpak list
command.
So this could be a flatpak upstream issue.
Hello
PR #92 was merged yesterday, but it seems to clear several localization files, including Dutch in nl.po
.
Related to this, the Weblate translation page is mostly empty for several languages, such as Dutch.
I would appreciate it if you implemented flathub.org verification (so that users know that builds from GitHub are actually what end up on Flathub.org). I believe if you login to Flathub.org, there are instructions in your developer profile.
PLANNED & NOT PLANNED.md
documentI find it useful in case of troubleshooting flatpak issues.
Recent example where this was necessary was to fix this upstream flatpak bug on running system:
flatpak/flatpak#5700
The command is basically:
System flatpak:
flatpak install --system --reinstall -y appname
User flatpak:
flatpak install --user --reinstall -y appname
It seems kind of ironic to show Warehouse in the app list, since you probably want to keep using it (or at least not uninstall it) if you just opened it. When loading the app list, there should probably be some kind of check that skips the app if the App ID matches Warehouse's.
It's too wide!
Maybe you should consider saving the adjusted shape.
This issue is mostly relevant if you’d like as much design integration into GNOME as possible. Feel free to close it if it feels like too much work or if it’s irrelevant.
GNOME’s app name guidelines discourages made-up word combinations, which the current app name has. To make it match other GNOME app names and follow the guidelines, we could find one or two simple nouns related to the domain/purpose of the app, and use those.
I’d be happy to assist if this is considered wanted and actionable.
I think it'd be pretty great if warehouse and @tchx84's https://github.com/tchx84/flatseal would merge to become the one-stop-shop for flatpak management.
I am well aware that projects like this are voluntary projects, for example as a hobby in spare time, where you may just want to do your own thing.
But still, I think these 2 combined would be very useful indeed!
README.md
document
Can't uninstall app by warehouse.
I'm using wsl2 ubuntu on windows 11 environment.
install warehouse by windows11 cmd wsl command from flathub.
run warehouse
uninstall mousai.
error message come out.
flatpak run io.github.flattool.Warehouse
in a terminal and if applicable, show any outputPLANNED & NOT PLANNED.md
documentCurrently, you can see the commit ID hashes in the properties of an app:
…however, the date and time stamps of those commits are missing, unlike in the Downgrade dialog. It would be convenient to be able to see those dates and times here, whether as a way of confirmation, for troubleshooting, and for knowing how far behind you are on your updates for a particular package.
PLANNED & NOT PLANNED.md
documentWhen adding a remote, it would be nice to be able to specify where in the filesystem it will install to. This is useful when you want to install Flatpaks to a different storage medium, such as a secondary internal hard drive or an SD card in the case of phones. It may also be useful to be able to "copy" configured remotes to new directories.
I would like to congratulate your work, it is really very good.
If your application could install the application via the flathub repository it would be a complete manager, I know that this may not be your project vision and I don't know how complicated the implementation must be, but I leave here my thoughts.
I am in the Gnome Gitlab right now, as this app was the only one with a weird graphical bug with black borders around the window which disappeared when disabling direct Graphics rendering.
I dont know how to find out the GTK version used, sorry
Currently Warehouse sorts apps by their app ID. That's the same as flatpak list
does but I think it makes for a jumbled reading because app names are not in alphabetical order:
I think the list would be easier to navigate if it were sorted by app name, same as Flatseal does for example. I realize I can search for app names but I don't know which all apps I have installed. If the default won't be changed to sort by name, could it be a filter option or preference?
Hi, I have a problem with "Open User Data Folder" button. It won't do anything. I've tried launching warehouse from terminal to see if there's any logs but no, it's empty
If I press "Open User Data Folder" button for a few times warehouse shows an error - "Could not open folder"
Is there any permissions what I should enable in Flatseal to actually open that user data folder?
Distro: Arch
WM: Sway
after adding flathub beta remote either as user or system when i go to gnome software and search for OBS Studio there in the application page there were two flathub beta option in the drop down menu and both beta show two different versions of software , on one flathub beta i am getting version 30.0.0 and another showing 29.1.0(which is older than current stable which is version 29.1.3)
Screencast from 2023-10-24 18-08-17.webm
add the flathub beta remote from hamburger menu in Warehouse then open gnome software and search or obs and change source from the drop down menu
flatpak run io.github.flattool.Warehouse
in a terminal and if applicable, show any outputCurrently using Solus Budgie, everything up to date. Inside of nautilus you can open files with the "Open With." option, where you can choose what program to run/open the file with. Sadly Warehouse doesn't appear on this list, i think it's not creating some kind of references that you can be used to open flatpakref files directly.
PLANNED & NOT PLANNED.md
documentadd permission management on warehouse just like flatseal. The problem with flatseal is that it has dependencies on Webkitgtk and GnomeJS. Adding flatpak app permissions on warehouse makes a great flatpak management tool.
README.md
documentflatpak run io.github.flattool.Warehouse
in a terminal and if applicable, show any outputTraceback (most recent call last):
File "/app/share/warehouse/flattool_gui/downgrade_window.py", line 114, in <lambda>
task.run_in_thread(lambda *_: self.get_commits())
^^^^^^^^^^^^^^^^^^
File "/app/share/warehouse/flattool_gui/downgrade_window.py", line 76, in get_commits
self.versions.append([commits[i], changes[i], dates[i]])
~~~~~~~^^^
IndexError: list index out of range
Just upgraded to 1.2.0 and can't seem to find the "Wbekit Testing" option under the popular repositories referenced in the changelog. Is this a bug? I was really looking forward to test out this brand new Wbekit which I've never heard of before.
Can we resolve this to 1.2.1?
README.md
documentAny system wide remote cannot be removed with the Manage Remotes Window
Add any flatpak remote as --system, open Warehouse -> Manage Remotes, and try to remove the system remote
flatpak run io.github.flattool.Warehouse
in a terminal and if applicable, show any outputNo message in terminal
The window is a bit too wide to be used on mobile screens. It also doesn't declare itself as supporting mobile devices, so it doesn't show on mobile home screens. Otherwise, it works great on those devices. This issue is to address the two issues.
As written above.
Flatpak maintains a list of patterns that define which refs are pinned. A pinned ref will never be automatically uninstalled (as are unused runtimes periodically). This can be useful if for example you are using a runtime for development purposes.
Runtimes that are explicitly installed, rather than installed as a dependency of something else, are automatically pinned.
However, that also means that in order to remove unused pinned patterns u need to get into the terminal to remove them via (example):
flatpak --system pin --remove org.freedesktop.Platform//19.08
or
flatpak --user pin --remove org.freedesktop.Platform//19.08
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.