snowfallorg / nix-software-center

A simple gtk4/libadwaita software center to easily install and manage nix packages
GNU General Public License v3.0
560 stars 16 forks source link

Support different sources like Flatpak #11

Open davidak opened 1 year ago

davidak commented 1 year ago

In my vision, the Nix GUI supports different sources like NixOS stable, unstable and Flatpak. Maybe others if they are relevant. If people should use Nix on other operating systems, i think we have to support their package manager as well. So it would be easier to make GNOME Software support Nix instead of making this support many package managers.

The sources selection would be a drop-down at the top right (where a different drop-down is currently).

There can be sources specific settings where you can add, remove or disable sources, disallow/allow unfree, broken, unsecure or unstable packages.

If there are multiple versions of the same package due to this, the drop down on the install button should show the different versions with source in (). The default can be from your default channel like nixos, but there can also be a setting "preferred source", so you could prefer Flathub.

The current drop-down options (Run without install, interactive shell) seem quite a special case and can be hidden more. Maybe a second butten right to the install button.

vlinkz commented 1 year ago

I don't plan on adding Flatpak support, since GNOME Software and Plasma Discover are already stable and serve this purpose. I did consider trying to add Nix support to GNOME Software, but in the end, since Nix is very different from other package managers, I decided it would be best to make a separate project where I could integrate Nix more tightly into the user experience.

There can be sources specific settings where you can add, remove or disable sources, disallow/allow unfree, broken, unsecure or unstable packages.

I do plan to add more options along these lines in the future, and will probably focus on adding support for these features for nix flakes nix profile first.

Henry-Hiles commented 1 year ago

I would just like to say that flatpak support would be great, using two software stores is not ideal.

dnkmmr69420 commented 1 year ago

I wanna see flatpak support

nyabinary commented 1 year ago

Flatpak support would be great, since like mentioned using two software stores is not great

nyabinary commented 11 months ago

Also, if you enable flatpak currently it automatically installs GNOME-Software for you if this gets into nixpkgs we can replace that with nix-software-center, granted if flatpak support is added here.

ashebanow commented 11 months ago

If you look at the long term future of app packaging formats, it seems very unlikely that nix packages will "win" the market. Both flatpak and snap have far more users and a popular linux distro provider behind them (red hat and ubuntu, respectively). I'd bet on flatpak, but its major downside is it only supports GUI apps. Snap supports CLIs and server applications, but seems to be hated by the community.

What I'd like to see is to have nixpkgs be able to take a flatpak as a package input. Installing that package would make the flatpak available. It would be super cool if you could still configure the app as before, given that flatpak is just remapping the app's XDG locations to a virtual location (in ~/.var) for per-user flatpaks. nix does more or less the same for regular apps, so it seems possible to have it do the same for a flatpak.