Thoughts on Flatpaks and AppImages

Tolkem

Well-Known Member
Credits
5,467
Yes those can do the same but I felt that while installing Arch the Archway gave me more control over my installation
It is true you get a bit more of control, to a certain extent, at least that's how I see it from my experience, I don't know, maybe you use some other options I didn't but the "archway" and the "non-archway" seem to achieve basically the same results in the end, at least from a regular-desktop user point of view; create partitions, hostname, users ... set timezone, language, passwords ... the one thing, and I'm not sure how important that can be is that using the archway you have to "genfstab" yourself, but it's the system which actually writes the mount options, not you, as far as I remember. Installing pkgs is pretty much under pacstrap control, at least for the basics; you have to install base and base-devel most of the time, you might skip base-devel but not base, of course. A GUI installer like yast installer from openSUSE does the same, and it's actually one of the most complete installers I've ever used, and it's not exactly "user-friendly", I mean, you have to play a bit with it before proceeding to install otherwise you might get confused on what options to use, once you know that, it's gets easier to understand how it works and what options do what. Calamares has evolved and it's a pretty good installer too. The Debian installer does a good job too, and you can choose to use the expert mode which is terminal based. And then you have custom/modified installers; MX-installer, Q4OS-installer, etc, etc ... I really enjoyed installing arch "the archway", but it was also a bit of time-consuming.
the reason they have that way of installing is that people asking for support on the Arch forums are able to actually answer questions(unlike here, where you have to ask the most basic questions before getting anywhere) when asked something because they know how their system is built and setup.
New Linux users usually struggle to extract information from their systems, back in the day I wouldn't know how to do it either, I was even accused of "help vampirism" once, which is just absurd but anyway, now I can solve pretty much any issue I may find in my OS without having to ask in any forum. There are users who make some effort to learn their systems, there are others who don't care about that and IMO use Linux just because they can afford a Windows license, but given the choice they'd use the MS OS, these users are not willing to learn anything because they think the OS should be ... something, not sure what lol
 


f33dm3bits

Gold Member
Gold Supporter
Credits
16,431
My point of recommending Arch or an Arch based distribution was more for if you are wanting to get away from Ubuntu you might as well have a look at Arch or an Arch based distribution. Debian would be just as good of choice but it would depend a person's situation and needs whether they choose old/stable or bleeding edge. I ran a RHEL clone on my desktop for some years and after sometime I started running into problems with games and various other applications not running properly because of old libraries and such and compiling manually each time became a pain in buttocks. I then switched to Ubuntu for my desktop which was an improvement. Eventually I ended up trying Arch because I wanted something new and I had never tried a rolling release distribution before.

As for myself when I switched over to Arch I did a lot of reading around the archwiki and it was enough for me to understand the installation process and configuration etc. I actually stuck to Arch because of bleeding edge and because of everything being so easy on Arch. Like I said I did recently try a lot of Arch based installers and Arch based distributions and found the one I like the most to be Archlabs. Now funny fun thing about it, I recently installed a new system and was planning to use Archlabs, I did boot into Arch first to do just the partitioning because it was just easier to do the partitioning myself because I don't like the limited options the installer has when it comes to partitioning. I was then was going to then use Archlabs for the rest of the installation, I then ended up saying to myself well might as well do the remaining part of the installation the Arch way as well since it won't take that much time because I actually have gone through it the installation enough times to know what to do without thinking about it.

Getting back op topic, as for Snaps and Flatpaks. I am going to stay as far away as I can from Snaps and Flatpaks because the normal way of installing packages works just fine. @Linuxembourg I only recommended Arch or an Arch based distribution because I have really grown to love Arch ever since installed it for the first time about two years ago and it's not pre-installed with Snaps but a distribution like Debian, Springdale Linux or another distribution without Snaps are just as good. I just love to share and promote my favorite desktop distribution when someone says they are looking to migrate to another distribution hoping they may experience the same. If they aren't interested that's okay because most people eventually run into a distribution they like to call home, which distribution that is doesn't matter but when you find the place you call home it is the perfect match for you :)
 
Last edited:

captain-sensible

Well-Known Member
Credits
10,311
My point of recommending Arch or an Arch based distribution to Linuxembourg was more for if you are wanting to get away from Ubuntu you might as well have a look at Arch or an Arch based distribution
..or even Slackware

certainly it would be nice to have another option. I'm looking at installing Arch , not a distro based on Arch using archfi or anarchy
 

Nelson Muntz

Well-Known Member
Credits
4,773
Like them or hate them AppImages / Flatpaks / Snaps will become the norm for the mainstream distros regardless of the developer.

Least wise Snaps is for Ubuntu and perhaps the official Ubuntu flavors.

It's not about what's best for the user it never was it's what's easier for the developers and package maintainers.

Personally I don't care as I've used them here and there and never had a problem with any of them.

OK they ain't perfect but again it's something I have zero say or control over.

As with everything else the old ways are going to the curb and enter the new ways and I don't have to like it I just have to accept it.
 

Linuxembourg

Active Member
Credits
838
It's not about what's best for the user it never was it's what's easier for the developers and package maintainers.
I get that for standalone applications, but not sure why it'd be done for system integrals. I suppose what's easiest for developers is not even bothering to offer any installation package. Much to my annoyance.

I ran my first AppImage today and they seem far better than snaps. Very portable too. Certainly better than source code and build instructions I can't follow!
 

Nelson Muntz

Well-Known Member
Credits
4,773
I ran my first AppImage today and they seem far better than snaps. Very portable too.
AppImages run good from my experience.
Snaps can be finicky depending on the Snap.

I think the more Snaps get used and become the norm the developers and maintainers will get them working better although I may be wrong.

Certainly better than source code and build instructions I can't follow!
When I first started using Linux I tried building packages from source code and after many failures and a PITA I figured screw building packages.

I'm an OOTB Linux user plain and simple.
 

Tolkem

Well-Known Member
Credits
5,467
Like them or hate them AppImages / Flatpaks / Snaps will become the norm for the mainstream distros regardless of the developer.
It's the developers the ones who use them, not the distro package maintainers. Distro package maintainers don't care what the format is, they just have to get the source from the developer and apply the necessary patches to make it available in their respective distros, the problem is not every pkg makes its way to a distro repo because there's no one willing to maintain it, there's where appimages, snaps and flatpacks come into play; they allow the developer to distribute the pkg regardless of the distro, and they alone are responsible for providing updates and bug fixes.
It's not about what's best for the user it never was it's what's easier for the developers and package maintainers.
I disagree. The easier the devps and maintainers have it, the easier we-users have it as well, after all they're the ones providing the software we-users use and enjoy. I support whatever helps to improve user's experience, that being said, I prefer appimages over snaps and flatpacks; easier to use and maintain.
I ran my first AppImage today and they seem far better than snaps.
I think so too. I've been running appimages for a while now and really like doing it. In reality, snaps, flatpacks and appimages works pretty much the same; they are self-contained squashfs file systems that get mounted in /tmp where they unpack and load everything that make them able to run. Snaps and flatpacks do get updated "automatically" while new versions for appimages need to be downloaded, which I like better too; I get to know exactly what's been changed before deciding whether to update or not, and I can keep both versions just in case. Appimages can be extracted
Code:
./some_app.appimage --appimage-extract
this command will extract it to a folder called
squashfs-root inside that folder you'll find a file system structure similar to this
Code:
./pkg2appimage-1796-x86_64.AppImage --appimage-extract
squashfs-root/.DirIcon
squashfs-root/AppRun
squashfs-root/appimagetool.png
squashfs-root/etc
squashfs-root/etc/alternatives
squashfs-root/etc/alternatives/README
squashfs-root/etc/cron.daily
squashfs-root/etc/cron.daily/dpkg
squashfs-root/etc/dpkg
squashfs-root/etc/dpkg/dpkg.cfg
squashfs-root/etc/dpkg/dpkg.cfg.d
squashfs-root/etc/logrotate.d
squashfs-root/etc/logrotate.d/dpkg
squashfs-root/pkg2appimage.desktop
squashfs-root/sbin
squashfs-root/sbin/start-stop-daemon
squashfs-root/usr
squashfs-root/usr/bin
squashfs-root/usr/bin/AppRun
squashfs-root/usr/bin/appimagetool
squashfs-root/usr/bin/convert
squashfs-root/usr/bin/desktop-file-validate
squashfs-root/usr/bin/dpkg
squashfs-root/usr/bin/dpkg-deb
squashfs-root/usr/bin/dpkg-divert
squashfs-root/usr/bin/dpkg-maintscript-helper
squashfs-root/usr/bin/dpkg-query
squashfs-root/usr/bin/dpkg-split
squashfs-root/usr/bin/dpkg-statoverride
squashfs-root/usr/bin/dpkg-trigger
squashfs-root/usr/bin/update-alternatives
squashfs-root/usr/bin/zsyncmake
squashfs-root/usr/lib
squashfs-root/usr/lib/appimagekit
squashfs-root/usr/lib/appimagekit/mksquashfs
squashfs-root/usr/lib/libffi.so.5
squashfs-root/usr/lib/libgio-2.0.so
squashfs-root/usr/lib/libgio-2.0.so.0.5600.0
squashfs-root/usr/lib/libglib-2.0.so
squashfs-root/usr/lib/libglib-2.0.so.0.5600.0
squashfs-root/usr/lib/libgmodule-2.0.so
squashfs-root/usr/lib/libgmodule-2.0.so.0
squashfs-root/usr/lib/libgmodule-2.0.so.0.5600.0
squashfs-root/usr/lib/libgobject-2.0.so
squashfs-root/usr/lib/libgobject-2.0.so.0.5600.0
squashfs-root/usr/lib/libgthread-2.0.so
squashfs-root/usr/lib/libgthread-2.0.so.0
squashfs-root/usr/lib/libgthread-2.0.so.0.5600.0
squashfs-root/usr/lib/libpcre.so
squashfs-root/usr/lib/libpcre.so.1
squashfs-root/usr/lib/libpcre.so.1.2.11
squashfs-root/usr/lib/libpcrecpp.so
squashfs-root/usr/lib/libpcrecpp.so.0
squashfs-root/usr/lib/libpcrecpp.so.0.0.1
squashfs-root/usr/lib/libpcreposix.so
squashfs-root/usr/lib/libpcreposix.so.0
squashfs-root/usr/lib/libpcreposix.so.0.0.6
squashfs-root/usr/lib/x86_64-linux-gnu
squashfs-root/usr/lib/x86_64-linux-gnu/libbz2.so.1.0
squashfs-root/usr/lib/x86_64-linux-gnu/libffi.so.6
squashfs-root/usr/lib/x86_64-linux-gnu/libgmodule-2.0.so.0
squashfs-root/usr/lib/x86_64-linux-gnu/liblzma.so.5
squashfs-root/usr/lib/x86_64-linux-gnu/libpcre.so.3
squashfs-root/usr/lib/x86_64-linux-gnu/libselinux.so.1
squashfs-root/usr/lib64
squashfs-root/usr/share
squashfs-root/usr/share/applications
squashfs-root/usr/share/applications/pkg2appimage.desktop
squashfs-root/usr/share/doc
squashfs-root/usr/share/doc/dpkg
squashfs-root/usr/share/doc/dpkg/AUTHORS
squashfs-root/usr/share/doc/dpkg/README.feature-removal-schedule.gz
squashfs-root/usr/share/doc/dpkg/THANKS.gz
squashfs-root/usr/share/doc/dpkg/changelog.Debian.gz
squashfs-root/usr/share/doc/dpkg/copyright
squashfs-root/usr/share/doc/dpkg/usertags.gz
squashfs-root/usr/share/dpkg
squashfs-root/usr/share/dpkg/abitable
squashfs-root/usr/share/dpkg/cputable
squashfs-root/usr/share/dpkg/ostable
squashfs-root/usr/share/dpkg/triplettable
squashfs-root/usr/share/icons
squashfs-root/usr/share/icons/hicolor
squashfs-root/usr/share/icons/hicolor/128x128
squashfs-root/usr/share/icons/hicolor/128x128/apps
squashfs-root/usr/share/icons/hicolor/128x128/apps/appimagetool.png
squashfs-root/usr/share/lintian
squashfs-root/usr/share/lintian/overrides
squashfs-root/usr/share/lintian/overrides/dpkg
squashfs-root/usr/share/locale
squashfs-root/usr/share/locale/ast
squashfs-root/usr/share/locale/ast/LC_MESSAGES
squashfs-root/usr/share/locale/ast/LC_MESSAGES/dpkg.mo
squashfs-root/usr/share/locale/bs
squashfs-root/usr/share/locale/bs/LC_MESSAGES
squashfs-root/usr/share/locale/bs/LC_MESSAGES/dpkg.mo
squashfs-root/usr/share/locale/ca
squashfs-root/usr/share/locale/ca/LC_MESSAGES
squashfs-root/usr/share/locale/ca/LC_MESSAGES/dpkg.mo
squashfs-root/usr/share/locale/cs
squashfs-root/usr/share/locale/cs/LC_MESSAGES
squashfs-root/usr/share/locale/cs/LC_MESSAGES/dpkg.mo
squashfs-root/usr/share/locale/da
squashfs-root/usr/share/locale/da/LC_MESSAGES
squashfs-root/usr/share/locale/da/LC_MESSAGES/dpkg.mo
squashfs-root/usr/share/locale/de
squashfs-root/usr/share/locale/de/LC_MESSAGES
squashfs-root/usr/share/locale/de/LC_MESSAGES/dpkg.mo
squashfs-root/usr/share/locale/dz
squashfs-root/usr/share/locale/dz/LC_MESSAGES
squashfs-root/usr/share/locale/dz/LC_MESSAGES/dpkg.mo
squashfs-root/usr/share/locale/el
squashfs-root/usr/share/locale/el/LC_MESSAGES
squashfs-root/usr/share/locale/el/LC_MESSAGES/dpkg.mo
squashfs-root/usr/share/locale/eo
squashfs-root/usr/share/locale/eo/LC_MESSAGES
squashfs-root/usr/share/locale/eo/LC_MESSAGES/dpkg.mo
squashfs-root/usr/share/locale/es
squashfs-root/usr/share/locale/es/LC_MESSAGES
squashfs-root/usr/share/locale/es/LC_MESSAGES/dpkg.mo
squashfs-root/usr/share/locale/et
squashfs-root/usr/share/locale/et/LC_MESSAGES
squashfs-root/usr/share/locale/et/LC_MESSAGES/dpkg.mo
squashfs-root/usr/share/locale/eu
squashfs-root/usr/share/locale/eu/LC_MESSAGES
squashfs-root/usr/share/locale/eu/LC_MESSAGES/dpkg.mo
squashfs-root/usr/share/locale/fr
squashfs-root/usr/share/locale/fr/LC_MESSAGES
squashfs-root/usr/share/locale/fr/LC_MESSAGES/dpkg.mo
squashfs-root/usr/share/locale/gl
squashfs-root/usr/share/locale/gl/LC_MESSAGES
squashfs-root/usr/share/locale/gl/LC_MESSAGES/dpkg.mo
squashfs-root/usr/share/locale/hu
squashfs-root/usr/share/locale/hu/LC_MESSAGES
squashfs-root/usr/share/locale/hu/LC_MESSAGES/dpkg.mo
squashfs-root/usr/share/locale/id
squashfs-root/usr/share/locale/id/LC_MESSAGES
squashfs-root/usr/share/locale/id/LC_MESSAGES/dpkg.mo
squashfs-root/usr/share/locale/it
squashfs-root/usr/share/locale/it/LC_MESSAGES
squashfs-root/usr/share/locale/it/LC_MESSAGES/dpkg.mo
squashfs-root/usr/share/locale/ja
squashfs-root/usr/share/locale/ja/LC_MESSAGES
squashfs-root/usr/share/locale/ja/LC_MESSAGES/dpkg.mo
squashfs-root/usr/share/locale/km
squashfs-root/usr/share/locale/km/LC_MESSAGES
squashfs-root/usr/share/locale/km/LC_MESSAGES/dpkg.mo
squashfs-root/usr/share/locale/ko
squashfs-root/usr/share/locale/ko/LC_MESSAGES
squashfs-root/usr/share/locale/ko/LC_MESSAGES/dpkg.mo
squashfs-root/usr/share/locale/ku
squashfs-root/usr/share/locale/ku/LC_MESSAGES
squashfs-root/usr/share/locale/ku/LC_MESSAGES/dpkg.mo
squashfs-root/usr/share/locale/lt
squashfs-root/usr/share/locale/lt/LC_MESSAGES
squashfs-root/usr/share/locale/lt/LC_MESSAGES/dpkg.mo
squashfs-root/usr/share/locale/mr
squashfs-root/usr/share/locale/mr/LC_MESSAGES
squashfs-root/usr/share/locale/mr/LC_MESSAGES/dpkg.mo
squashfs-root/usr/share/locale/nb
squashfs-root/usr/share/locale/nb/LC_MESSAGES
squashfs-root/usr/share/locale/nb/LC_MESSAGES/dpkg.mo
squashfs-root/usr/share/locale/ne
squashfs-root/usr/share/locale/ne/LC_MESSAGES
squashfs-root/usr/share/locale/ne/LC_MESSAGES/dpkg.mo
squashfs-root/usr/share/locale/nl
squashfs-root/usr/share/locale/nl/LC_MESSAGES
squashfs-root/usr/share/locale/nl/LC_MESSAGES/dpkg.mo
squashfs-root/usr/share/locale/nn
squashfs-root/usr/share/locale/nn/LC_MESSAGES
squashfs-root/usr/share/locale/nn/LC_MESSAGES/dpkg.mo
squashfs-root/usr/share/locale/pa
squashfs-root/usr/share/locale/pa/LC_MESSAGES
squashfs-root/usr/share/locale/pa/LC_MESSAGES/dpkg.mo
squashfs-root/usr/share/locale/pl
squashfs-root/usr/share/locale/pl/LC_MESSAGES
squashfs-root/usr/share/locale/pl/LC_MESSAGES/dpkg.mo
squashfs-root/usr/share/locale/pt
squashfs-root/usr/share/locale/pt/LC_MESSAGES
squashfs-root/usr/share/locale/pt/LC_MESSAGES/dpkg.mo
squashfs-root/usr/share/locale/pt_BR
squashfs-root/usr/share/locale/pt_BR/LC_MESSAGES
squashfs-root/usr/share/locale/pt_BR/LC_MESSAGES/dpkg.mo
squashfs-root/usr/share/locale/ro
squashfs-root/usr/share/locale/ro/LC_MESSAGES
squashfs-root/usr/share/locale/ro/LC_MESSAGES/dpkg.mo
squashfs-root/usr/share/locale/ru
squashfs-root/usr/share/locale/ru/LC_MESSAGES
squashfs-root/usr/share/locale/ru/LC_MESSAGES/dpkg.mo
squashfs-root/usr/share/locale/sk
squashfs-root/usr/share/locale/sk/LC_MESSAGES
squashfs-root/usr/share/locale/sk/LC_MESSAGES/dpkg.mo
squashfs-root/usr/share/locale/sv
squashfs-root/usr/share/locale/sv/LC_MESSAGES
squashfs-root/usr/share/locale/sv/LC_MESSAGES/dpkg.mo
squashfs-root/usr/share/locale/th
squashfs-root/usr/share/locale/th/LC_MESSAGES
squashfs-root/usr/share/locale/th/LC_MESSAGES/dpkg.mo
squashfs-root/usr/share/locale/tl
squashfs-root/usr/share/locale/tl/LC_MESSAGES
squashfs-root/usr/share/locale/tl/LC_MESSAGES/dpkg.mo
squashfs-root/usr/share/locale/vi
squashfs-root/usr/share/locale/vi/LC_MESSAGES
squashfs-root/usr/share/locale/vi/LC_MESSAGES/dpkg.mo
squashfs-root/usr/share/locale/zh_CN
squashfs-root/usr/share/locale/zh_CN/LC_MESSAGES
squashfs-root/usr/share/locale/zh_CN/LC_MESSAGES/dpkg.mo
squashfs-root/usr/share/locale/zh_TW
squashfs-root/usr/share/locale/zh_TW/LC_MESSAGES
squashfs-root/usr/share/locale/zh_TW/LC_MESSAGES/dpkg.mo
squashfs-root/usr/share/man
squashfs-root/usr/share/man/de
squashfs-root/usr/share/man/de/man1
squashfs-root/usr/share/man/de/man1/dpkg-deb.1.gz
squashfs-root/usr/share/man/de/man1/dpkg-maintscript-helper.1.gz
squashfs-root/usr/share/man/de/man1/dpkg-query.1.gz
squashfs-root/usr/share/man/de/man1/dpkg-split.1.gz
squashfs-root/usr/share/man/de/man1/dpkg-trigger.1.gz
squashfs-root/usr/share/man/de/man1/dpkg.1.gz
squashfs-root/usr/share/man/de/man5
squashfs-root/usr/share/man/de/man5/dpkg.cfg.5.gz
squashfs-root/usr/share/man/de/man8
squashfs-root/usr/share/man/de/man8/dpkg-divert.8.gz
squashfs-root/usr/share/man/de/man8/dpkg-statoverride.8.gz
squashfs-root/usr/share/man/de/man8/start-stop-daemon.8.gz
squashfs-root/usr/share/man/de/man8/update-alternatives.8.gz
squashfs-root/usr/share/man/es
squashfs-root/usr/share/man/es/man1
squashfs-root/usr/share/man/es/man1/dpkg-deb.1.gz
squashfs-root/usr/share/man/es/man1/dpkg-query.1.gz
squashfs-root/usr/share/man/es/man1/dpkg-split.1.gz
squashfs-root/usr/share/man/es/man1/dpkg-trigger.1.gz
squashfs-root/usr/share/man/es/man1/dpkg.1.gz
squashfs-root/usr/share/man/es/man5
squashfs-root/usr/share/man/es/man5/dpkg.cfg.5.gz
squashfs-root/usr/share/man/es/man8
squashfs-root/usr/share/man/es/man8/dpkg-divert.8.gz
squashfs-root/usr/share/man/es/man8/start-stop-daemon.8.gz
squashfs-root/usr/share/man/es/man8/update-alternatives.8.gz
squashfs-root/usr/share/man/fr
squashfs-root/usr/share/man/fr/man1
squashfs-root/usr/share/man/fr/man1/dpkg-deb.1.gz
squashfs-root/usr/share/man/fr/man1/dpkg-query.1.gz
squashfs-root/usr/share/man/fr/man1/dpkg-split.1.gz
squashfs-root/usr/share/man/fr/man1/dpkg-trigger.1.gz
squashfs-root/usr/share/man/fr/man1/dpkg.1.gz
squashfs-root/usr/share/man/fr/man5
squashfs-root/usr/share/man/fr/man5/dpkg.cfg.5.gz
squashfs-root/usr/share/man/fr/man8
squashfs-root/usr/share/man/fr/man8/dpkg-divert.8.gz
squashfs-root/usr/share/man/fr/man8/start-stop-daemon.8.gz
squashfs-root/usr/share/man/fr/man8/update-alternatives.8.gz
squashfs-root/usr/share/man/hu
squashfs-root/usr/share/man/hu/man5
squashfs-root/usr/share/man/hu/man5/dpkg.cfg.5.gz
squashfs-root/usr/share/man/it
squashfs-root/usr/share/man/it/man1
squashfs-root/usr/share/man/it/man1/dpkg-deb.1.gz
squashfs-root/usr/share/man/it/man1/dpkg-query.1.gz
squashfs-root/usr/share/man/it/man1/dpkg-split.1.gz
squashfs-root/usr/share/man/it/man1/dpkg.1.gz
squashfs-root/usr/share/man/it/man5
squashfs-root/usr/share/man/it/man5/dpkg.cfg.5.gz
squashfs-root/usr/share/man/it/man8
squashfs-root/usr/share/man/it/man8/start-stop-daemon.8.gz
squashfs-root/usr/share/man/it/man8/update-alternatives.8.gz
squashfs-root/usr/share/man/ja
squashfs-root/usr/share/man/ja/man1
squashfs-root/usr/share/man/ja/man1/dpkg-deb.1.gz
squashfs-root/usr/share/man/ja/man1/dpkg-query.1.gz
squashfs-root/usr/share/man/ja/man1/dpkg-split.1.gz
squashfs-root/usr/share/man/ja/man1/dpkg-trigger.1.gz
squashfs-root/usr/share/man/ja/man1/dpkg.1.gz
squashfs-root/usr/share/man/ja/man5
squashfs-root/usr/share/man/ja/man5/dpkg.cfg.5.gz
squashfs-root/usr/share/man/ja/man8
squashfs-root/usr/share/man/ja/man8/dpkg-divert.8.gz
squashfs-root/usr/share/man/ja/man8/start-stop-daemon.8.gz
squashfs-root/usr/share/man/ja/man8/update-alternatives.8.gz
squashfs-root/usr/share/man/man1
squashfs-root/usr/share/man/man1/dpkg-deb.1.gz
squashfs-root/usr/share/man/man1/dpkg-maintscript-helper.1.gz
squashfs-root/usr/share/man/man1/dpkg-query.1.gz
squashfs-root/usr/share/man/man1/dpkg-split.1.gz
squashfs-root/usr/share/man/man1/dpkg-trigger.1.gz
squashfs-root/usr/share/man/man1/dpkg.1.gz
squashfs-root/usr/share/man/man5
squashfs-root/usr/share/man/man5/dpkg.cfg.5.gz
squashfs-root/usr/share/man/man8
squashfs-root/usr/share/man/man8/dpkg-divert.8.gz
squashfs-root/usr/share/man/man8/dpkg-statoverride.8.gz
squashfs-root/usr/share/man/man8/start-stop-daemon.8.gz
squashfs-root/usr/share/man/man8/update-alternatives.8.gz
squashfs-root/usr/share/man/pl
squashfs-root/usr/share/man/pl/man1
squashfs-root/usr/share/man/pl/man1/dpkg-deb.1.gz
squashfs-root/usr/share/man/pl/man1/dpkg-query.1.gz
squashfs-root/usr/share/man/pl/man1/dpkg-split.1.gz
squashfs-root/usr/share/man/pl/man1/dpkg-trigger.1.gz
squashfs-root/usr/share/man/pl/man1/dpkg.1.gz
squashfs-root/usr/share/man/pl/man5
squashfs-root/usr/share/man/pl/man5/dpkg.cfg.5.gz
squashfs-root/usr/share/man/pl/man8
squashfs-root/usr/share/man/pl/man8/dpkg-divert.8.gz
squashfs-root/usr/share/man/pl/man8/start-stop-daemon.8.gz
squashfs-root/usr/share/man/pl/man8/update-alternatives.8.gz
squashfs-root/usr/share/man/sv
squashfs-root/usr/share/man/sv/man1
squashfs-root/usr/share/man/sv/man1/dpkg-deb.1.gz
squashfs-root/usr/share/man/sv/man1/dpkg-query.1.gz
squashfs-root/usr/share/man/sv/man1/dpkg-split.1.gz
squashfs-root/usr/share/man/sv/man1/dpkg-trigger.1.gz
squashfs-root/usr/share/man/sv/man1/dpkg.1.gz
squashfs-root/usr/share/man/sv/man5
squashfs-root/usr/share/man/sv/man5/dpkg.cfg.5.gz
squashfs-root/usr/share/man/sv/man8
squashfs-root/usr/share/man/sv/man8/dpkg-divert.8.gz
squashfs-root/usr/share/man/sv/man8/start-stop-daemon.8.gz
squashfs-root/usr/share/man/sv/man8/update-alternatives.8.gz
squashfs-root/usr/share/metainfo
squashfs-root/usr/share/metainfo/pkg2appimage.appdata.xml
squashfs-root/usr/share/pkg2appimage
squashfs-root/usr/share/pkg2appimage/appdir-lint.sh
squashfs-root/usr/share/pkg2appimage/excludedeblist
squashfs-root/usr/share/pkg2appimage/excludelist
squashfs-root/usr/share/pkg2appimage/functions.sh
squashfs-root/var
squashfs-root/var/lib
squashfs-root/var/lib/dpkg
squashfs-root/var/lib/dpkg/alternatives
squashfs-root/var/lib/dpkg/info
squashfs-root/var/lib/dpkg/parts
squashfs-root/var/lib/dpkg/updates
I just extracted pkg2appimage-1796-x86_64.AppImage and as you can see there are a few dirs you might see in any Linux FS structure containing everything the app needs to run, dirs such as /etc, /usr/lib, /usr/share, /usr/bin, /var/lib ... with some knowledge of the inner workings of the app, you can modify the contents, edit some config files and put it back together using appimagetool https://github.com/AppImage/AppImageKit .
The --appimage command can take more options too:
Code:
./pkg2appimage-1796-x86_64.AppImage --appimage-help
AppImage options:

--appimage-extract [<pattern>] Extract content from embedded filesystem image
If pattern is passed, only extract matching files
--appimage-help Print this help
--appimage-mount Mount embedded filesystem image and print
mount point and wait for kill with Ctrl-C
--appimage-offset Print byte offset to start of embedded
filesystem image
--appimage-portable-home Create a portable home folder to use as $HOME
--appimage-portable-config Create a portable config folder to use as
$XDG_CONFIG_HOME
--appimage-signature Print digital signature embedded in AppImage
--appimage-updateinfo[rmation] Print update info embedded in AppImage
--appimage-version Print version of AppImageKit

Portable home:

If you would like the application contained inside this AppImage to store its
data alongside this AppImage rather than in your home directory, then you can
place a directory named

/path/to/pkg2appimage-1796-x86_64.AppImage.home

Or you can invoke this AppImage with the --appimage-portable-home option,
which will create this directory for you. As long as the directory exists
and is neither moved nor renamed, the application contained inside this
AppImage to store its data in this directory rather than in your home
directory
Note that it might not work with every appimage out there, it depends on the appimagekit version used to build the app, but most will. You can confirm with
Code:
./some_app.appimage --appimage-help
 

KGIII

Super Moderator
Staff member
Gold Supporter
Credits
16,111
Snaps (as far as I understand - I don't actually use them, though I probably should if I'm gonna test Lubuntu) also keep the previous version when they update. It has a revert command and I *think* (again, not sure) that it can revert automatically in case of crashes.

This is just stuff gleaned from watching the devs talk about it. I've never so much as installed a single snap.
 

Nelson Muntz

Well-Known Member
Credits
4,773
Well however it works I ain't got no problems using Snaps which looks like the direction Canonical Ubuntu is going from what I've read and see.

Bottom line if I don't like a particular distro's way I'll dump it and move to another.

I don't need much as long as I can get online I'm good.
 

Nelson Muntz

Well-Known Member
Credits
4,773
Snaps (as far as I understand - I don't actually use them, though I probably should if I'm gonna test Lubuntu)
I wasn't aware Lubuntu started to include Snaps as default and was under the impression you had to install Snaps in Lubuntu.
 

KGIII

Super Moderator
Staff member
Gold Supporter
Credits
16,111
I wasn't aware Lubuntu started to include Snaps as default and was under the impression you had to install Snaps in Lubuntu.
None are installed by default in 21.04 - but the system is there and the package manager defaults to Snap apps in some instances. There will be more, and more integration. The system is there in 20.04, but no defaults are installed. Some apps default to Snaps by default (when installed). That's why there are two package managers - Muon and Discover.
 

Tolkem

Well-Known Member
Credits
5,467
It has a revert command and I *think* (again, not sure) that it can revert automatically in case of crashes.
Code:
sudo snap revert snap_pkg_name
Though it doesn't revert automatically, you have to explicitly do it by running that command. However, you won't be able to use the 2 versions, just one, with an appimage you can use whichever you prefer. For example, I use VSCodium appimage https://github.com/VSCodium/vscodium and it gets updated quite frequently, when I download a new version, I just don't delete the previous one but only after making sure the newer one works fine and with no issues, so if something doesn't work the way it should, I can keep on using the old one without having to revert or whatever. This seems quite easier and much more convenient to me than the snap approach.
That's why there are two package managers - Muon and Discover.
There's snapcraft store too https://snapcraft.io/store and of course the snap command. Muon doesn't include snaps or flatpacks, Discover does. Read here https://apps.kde.org/muon/
 

craigevil

Member
Credits
714
If you install Discover on Manjaro KDE it also installs the needed flatpak/snap depends. Then when you use it and search or just scroll through it, it shows apps that are Snaps and Flatpaks.
 

Tolkem

Well-Known Member
Credits
5,467
Midori%20Next%20Generation-1.1.4
You mean this https://astian.org/navegador-midori/descarga/ ? I just downloaded it, made it executable and it worked fine here

1618836584895.png

Maybe, you need to download it again and make sure it's correct; it must be a 72.8 MB file, I had to download it twice because the first time it didn't work, then I realized the downloaded file wasn't complete. I think this might have happened to you too, since the damaged file I got was named Midori%20Next%20Generation-1.1.4 just like yours, the correct one doesn't have those numbers plus the .appimage extension was missing, the correct file is Midori Next Generation-1.1.4.AppImage Give it a try at a second download and make sure the file is ok, make it executable and try launching it again.
 
Last edited:

welinton-paulista

New Member
Credits
108
You mean this https://astian.org/navegador-midori/descarga/ ? I just downloaded it, made it executable and it worked fine here

View attachment 9112
Maybe, you need to download it again and make sure it's correct; it must be a 72.8 MB file, I had to download it twice because the first time it didn't work, then I realized the downloaded file wasn't complete. I think this might have happened to you too, since the damaged file I got was named Midori%20Next%20Generation-1.1.4 just like yours, the correct one doesn't have those numbers plus the .appimage extension was missing, the correct file is Midori Next Generation-1.1.4.AppImage Give it a try at a second download and make sure the file is ok, make it executable and try launching it again.
Didn't change anything
 

LorenDB

Active Member
Credits
1,878
I must admit to being a bit ignorant of the possible ramifications involved here

I do not use snaps. period.

I am reluctant to use flatpaks because of their size. As @craigevil said above, flatpaks are huge. Bloody big !
I wonder if our reluctance to install them stems from the days when we were particularly mindful of how much space we used up?....small hard drives etc...?

I have used a couple of appimages. Easy to install. Takes a very small amount of space. The resulting app works. Whats not to like ?

We have been led to believe that snaps have some security implications. that was started by Clem when LM19 (?) was released. I can only assume that Clem doesn't get his knickers in a knot for no reason.

I will continue watching here with great interest.
I am pretty much the same as @Condobloke, except that I don't even really use AppImages. I purged my Ubuntu of snap months ago and haven't regretted it once.
 
$100 Digital Ocean Credit
Get a free VM to test out Linux!

Staff online


Latest posts

Top