I wanted to share my work with the AppImage community, a PortableApps.com type launcher for linux Apps. It’s a fairly simple project I started when I decided I didn’t feel like digging around my flash drive to see what apps I have. As AppImages are platform independent and will work just fine off a flash drive it’s a natural match. Some of the features are:
GTK-based UI (should work on most DEs)
Run Windows apps via wine
Runs before apps (so you can set environment variables such as HOME)
Can make most AppImages truly portable
Download AppImages (Still a bit iffy )
Made with GoLang (compiles into a single executable)
I believe I already have support for the .home and .config directories, the code is there at least and I might have just forgot to add it in settings. I’ll definitely look into sand-boxing through FireJail and I’ll also look at appimaged since it seems to have some features I’d like to dissect. Thanks for the suggestions, I’ve been looking for a reason to work on this lately.
Definitely not, I’m more interested in how it gets information such as MIME, name, and icon and seeing if I can use that method. Might not be anything I can integrate into LinuxPA, but I’ll look into it.
Well the thing that you want (something in the “system tray”) is basically appimaged with a tiny GUI to manually launch and to stop it, and to set the watched directories (the directory in which it itself resides being the default). Correct?
Just wanted to give a quick update on progress:
So at the moment I’m having “fun” learning/figuring out how to use make/cmake with cgo to allow me to build LinuxPA with the necessary AppImageKit C library to keep it as a single executable. At the moment It’s not going great, but there have been some glimmers of hope.
Option 2, which is actually what I REALLY want to do, is to find a way to get the information in a more pure go way. I have found a way for type 1 appimages, but have yet to find a way to do it with type 2 appimages (there doesn’t seem to be a squashfs library for go anywhere and programs that do work with squashfs just call the necessary commands, which won’t work due to the ELF header.
Option 3, which would require a rework of a couple things, particularly updating, is to just package LinuxPA as an AppImage itself. Would definitely work, and would probably be really easy, but I’m hoping I can make one of the above options work (because I like to make things hard on myself. Plus it makes building the app a bit easier)