Comments

This profile is from a federated server and may be incomplete. Browse more on the original instance.

boredsquirrel, to linux in GNOME 47 Can Now Be Built With X11 Support Disabled

Laughing in kwin-wayland

boredsquirrel, to linux in Turn tablet into ereader

Very interesting project. Cage is a wayland kiosk, right?

But what about doing system updates and stuff like shutting down? KOReader doesnt have such an interface

boredsquirrel, to linux in Switch from Ubuntu to something immutable?

I share the exact same experience with you.

I use the ublue kinoite-main base image, not one of their very opinionated variants. It is best as a base, better than Fedoras (even though you need to trust Github 100%)

config creep is solved only partly. I am currently overhauling the kind-of guide here

Local stuff in your home is persistent, and /etc is also persistent.

But we are working on that.

Bazzite has a ton of WINE stuff on the system, not really the “immutable small core” principle. At the same time they uninstall Firefox, while Flatpak Firefox does not support all things.

So I recommend to install Fedora Kinoite from the official website and follow the rebase guideline here at the bottom

boredsquirrel, to linux in Inkscape Flatpak is looking for a maintainer!

~/Applications is no a random place, it comes from macos.

Hahaha I would call that VERY random. It is problematic that the default xdg directories are hidden.

And I just learned that you can just source scripts into bash and thus being executable or not doesnt matter. What an incredible design flaw… at least this just works with some binaries, I guess?

You mean appimagetool

No the Flatpak Appimage Pool. But a solution to easily package a bunch of files sounds really awesome. I miss that for RPMs, sddm2rpm did this kind of.

appman

Very interesting tool. So this is for appimages but also binaries?

I am a bit confused, especially as they state to prefer official releases, which for me means tarballs.

But a very good concept.

Interesting set of apps you have there. And ironically I have to agree they are small. Flatpak libraries are too huge and the deduplication doesnt work if it us not used for downloads and if there are dozens of runtimes.

A modular approach would be very much needed, instead of a damn KDE runtime that is nearly the entire desktop.

But I have some questions.

Yes that’s aisap sandbox

Thats not a sandbox, its a nice wrapper for firejail, at least what they write. I only knew some Github issue where they discussed this, and because Appimages require fuse they couldnt be sandboxed with bubblewrap.

Then they say “bubblewrap is used in Flatpak” but no comment if THEY also use it.

Firejail is the setuid binary I talked about, they likely have fixed their security issues but bubblewrap/bubblejail are probably better as they dont need setuid binaries.

If Appimages are possible to sandbox with bubblewrap, that would for sure be cool.

I also found rustysnakes crabjail, dont know the state it is in, but that is a possible candidate for replacing bubblejail.

right now its biggest limitation is that a sandboxed appimage can’t launch another sandboxed appimage.

No idea if Flatpaks can do that. But I would say the biggest issue is that the big vendors just put their appimage on some file server without any data on the sandbox.

Flatpak is way better here, where the sandbox is checked BEFORE apps are successfully submitted. And there are warnings etc.

And, of course, every app is sandboxed, not just a few.

those menus rely on desktop entries in $XDG_DATA_HOME/Applications.

Not the “create new” to my knowledge. That is in $XDG_TEMPLATES_DIR but I am currently struggling to make Flatpaks use that.

AppImage is just a format, same as a deb or rpm

Yes, so is Flatpak. But Appimages were introduced to be Windows-like. Sure there are companies that dont care and publish random rpms on their website too.

But with Appimages that is the only way as there is no real repo. AppMan is a cludge here, bundling together tons of different sources, kind of like Obtainium.

github.com/AppImageCommunity/AppImageUpdate

That tool is either completely finished or kind of abandoned.

Interesting, didnt know they have a signature builtin. That would also be useful.

That zsync2 thing explained in AppMan was just like delta updates. If a malicious actor has access to the old appimage and the fileserver, they can produce the correct zsync2 thing and the updates work, until signature verification is enforced.

I like to keep all the software that I need in my home, because that way I don’t depend on what my distro provides.

As I said, as long as bash script.sh works with nonexecutable stuff, noexec home is pretty worthless. Just another layer of defence.

You mean the APK itself does the signature verification or what?

No, android APKs are like Distro packages, they can be sideloaded however you want and then are forwarded to the “session installer” (on modern android), which is the “package manager” of android.

That installer saves the signature somewhere, and from then on you can only update the APK if the signature was made with the same private key.

Found out you can also not sign APKs, which happened here. I honestly dont know if more developers dont sign their APKs.


I will update my repo text to get to the current state of facts.

boredsquirrel, to linux in Inkscape Flatpak is looking for a maintainer!

get around the 3-5 people

What people?

Nonexecutable home directories I mean. /tmp too. This only makes sense as normally programs are in different areas. I will experiment with that.

boredsquirrel, to linux in Furi Phone FLX1: Debian smartphone debuts • The Register

True. Apple is straight up dystopia.

boredsquirrel, to linux in Furi Phone FLX1: Debian smartphone debuts • The Register

I mean Android is not magic, but a huge step up from desktop Linux regarding security, minimalism, battery life, …

They also just use an LTS kernel, and I even found a Vulkan package.

The simple, core principle, security without compromises, is not hard, everythig is there.

And at the same time you can fix many of the Google issues, privacy invasiveness, design that sucks…

boredsquirrel, to linux in Inkscape Flatpak is looking for a maintainer!

Lol

boredsquirrel, to linux in Inkscape Flatpak is looking for a maintainer!

Yes true, thats why it is not published on Flathub.

I will add an override to it that makes sense.

boredsquirrel, to linux in Inkscape Flatpak is looking for a maintainer!

Interesting, will look into this. The issue is of course that these tools are optional.

But if they work, they may fix nearly many issues. Some will remain, for example many proprietary apps dont use Github releases, while these may be especially targets of fakes.

boredsquirrel, to linux in Inkscape Flatpak is looking for a maintainer!

Appimages came before these tools, and the tools (forgot the name GearLever, AppimagePool is another one) came afterwards.

They are structurally better as they are external.

That verification is interesting. So it is another appimage, used to verify appimages? Are all Appimages using that, if not what percentage of the ones you know? And are tools like Gearlever enforcing or using that signature check?

boredsquirrel, to linux in Inkscape Flatpak is looking for a maintainer!

You still have to give the exec permission to the appimage.

True, but this only prevents against stuff executing itself.

Mandatory access controls and sandboxes only protect the core system. Like installing packages with root.

You put things there privileged, so you know what you run comes from a protected area.

Running things from random directories (like ~/Applications which AppimagePool uses) destroys that.

Suddenly you rely on an executable home dir, which means any regular software (including appimages which are nearly impossible to sandbox) can write to the area where your programs are.

That concept is so broken that it needs to go.

I am against flatpak install --user for that reason, because no program should come from an unprivileged directory.

The issue especially is if it doesnt follow standards. ~/.local/bin is a standard, and with SELinux confined users you may be able to protect that directory. But random ones like ~/Applications that dont follow any standards, will not work.

Maybe no context menu depending on what you mean exactly

The “open with” and “create new” things. Actually,

Flatpaks cannot create “create new” entries too. I am currently experimenting with these, as it sucks to not be able to “create new Libreoffice writer document”. And the xdg-templates directory doesnt do anything lol, you still need desktop entries.

but the rest are fully possible and I do it on a regular basics

The concept of an installer is that the app does that on its own. That is pretty bad and the kind of Windows crap we absolutely dont want.

But on good operating systems, a privileged package manager does all that. Puts the stuff where it belongs. Flatpak for example links the desktop entry that the app itself contains in a sandboxed directory, to the export directory where the OS sees it.

And some portal or whatever deals with the “standard apps” stuff, like that Okular Flatpak will be shown to support opening PDFs.

If apps do this on their own that means a single app can mess up your entire system, also malicious.

Appimage may have tools, I only tried AppimagePool for curiosity and the experience was pretty bad and incomplete.

But the issue is that they were just thrown out there, “here devs, do the same shit you do on Windows, it is totally normal for people to double click an executable, not have any sandboxing, deal with updates on their own, dont have any cryptographic verification, …”.

And only afterwards came the managers, the daemons, which cover a part of it.

They (could) solve:

  • being privileged, placing apps in not user-writable directories
  • having access to integration locations, that apps should never touch
  • downloading from defined, maintained locations (instead of letting people click on random internet malware ads)
  • running in the background, notifying about updates
  • centrally managing these updates
  • verifying signatures before allowing updates
  • doing the actual update process (instead of deleting a file and placing a new one)

And they often dont even do that. There are no signatures, as devs were never told “either you add a signature, or people will not install your app”. So there is zero verification

But they dont solve the core issues that are:

  • devs were told they dont need to care about…
  • creating metadata
  • creating a real repository
  • signing their apps
  • using a standardized build system
  • transparently declaring used dependencies (i.e. using a given set of them), thus deduplicating them
  • going through a review process
  • being affected when dependencies are end of life
  • declaring opt-in permissions, so users know if the app is insecure (appimages are impossible to sandbox with bubblewrap, and hard with firejail (which is a setuid binary and had security issues), dont know about nsjail, crabjail, minijail or others)

Flatpak is similar to Android. On Android you still have a package manager but the APKs are signed individually, updates just allowed if the signatures match. So you can sideload how you want, it is still secure.

And using Obtainium, which is kind of like an AppimagePool, you can get all the apps from independend developers.

But they were told they need to follow all these rules, Appimage developers can do whatever they want.

Sorry that was long.

I see you haven’t changed one bit.

Regarding what? XD

boredsquirrel, to linux in Inkscape Flatpak is looking for a maintainer!

Just downloading anything from anywhere sets one up for failure/malware.

Reducing the size of the OS helps a ton here.

And mounting home read-only. I think Android and ChromeOS do that. I will experiment with that too, it is really interesting. You mainly need a different place to store user scripts, and appimages are broken (how sad), the rest should be fine.

Then a few more core concepts help too:

  • KISS (keep it stupid simple)
  • Unix philosophy (everything does one thing and stays transparent)
  • and the concept of least privilege (seccomp, MAC (mandatory access control, SELinux/Apparmor, sandboxes, jails, etc).

Flatpak helps a ton centralizing the packaging efforts. And it works. There are tons of officially supported packages. And I guess many of them will be maintained upstream.

But you still have a secure system, sandboxing, verification and packagers that keep an eye on it, kind of.

On a secure system you would need to pay a lot of people, like the typical 3-5 people that package most apps. For doing security analyses, opting-in to every new update etc.

boredsquirrel, to linux in what are the pros and cons of apt vs flatpak?

That’s strange

Seems you can use all the libraries too as if they were binaries. Updated my Fedora post.

Currently testing how to run the freedesktop.org runtime with home permission, this would allow to not give any app permanent home permission.

But wait, you can run apps with different permissions temporarily, right?

Like flatpak run --filesystem=home org.app.name

but I read the PKGBUILDs and understand them.

That is the best way but not scalable for most users. You need access control and trust. On COPR I add the repo of an individual and only get packages from them.

And programs can bypass it anyway with /home/$USER if they’re feeling vindictive, though I haven’t run into any yet. It’d definitely be nice to have more complete isolation one day.

This is not about isolation, even though this should totally be done. Its just about preventing dotfile mess.

Scalable, you know. A system should stay vanilla in 20 years, in 40 years.

In the end it would be

  • core minimal system
  • /etc has some settings pinned or none at all, the rest is always flushed from /usr/etc (issue)
  • the immutable rest is always upstream
  • the bootloader is updated with bootupd
  • flatpaks have their configs isolated, when they are uninstalled, their data is removed
  • distroboxes are ephemeral, they are used for tasks, managed through a GUI app with a set of commands (like “add this repo” and packages to install, or even building blocks or checkboxes), they are recreated with OS releases
  • the distroboxes have their own dotfiles which never overlap
  • the desktop has figured out a way to cleanup old dotfiles

I mean we are not there yet, but close.

I really hate apt.

Apt is an ugly mess and nala might be python bloat but it looks fancy and automates things. Now that it runs on Debian 12 I installed it everywhere.

I really have no idea what to expect. But if I never need to use rpm for querying or whatever again I’ll be happy.

Yeah or add curl instructions to projects like librewolf, to avoid needing “oh and on atomic distros you dont use ‘dnf blabla’ but download it directly”.

Even though I like my COPR command…

boredsquirrel, to linux in Why does nobody here ever recommend Fedora to noobs?

Issue

Pull request

It is already merged into Rawhide and will hopefully land in F41

  • All
  • Subscribed
  • Moderated
  • Favorites
  • fightinggames
  • All magazines