- Rust 97.2%
- Meson 1.6%
- Nix 0.8%
- Just 0.3%
|
bhoehn
086b0631a5
updated flake documentation
Added additional context for flake setup.
Replaced `inputs.nix-software-center.packages.${system}.default` with `inputs.nix-software-center.packages.${stdenv.hostPlatform.system}.default` to resolve deprecation warning `evaluation warning: 'system' has been renamed to/replaced by 'stdenv.hostPlatform.system'`
|
||
|---|---|---|
| .forgejo/workflows | ci: set forgejo actions latest 4 verison | |
| .zed | chore: exlude rust-analyzer files | |
| build-aux | chore: initial port | |
| data | feat: remember last window size | |
| nsc-helper | fix: nsc-helper not found | |
| packages | chore: clean up | |
| po | chore: update translation | |
| shells/nix-software-center | chore: clean up | |
| src | fix: use async network checking to prevent tokio from panicking | |
| .envrc | chore: added .envrc and removed in .gitignore | |
| .gitignore | ignore all result | |
| Cargo.lock | feat: save last choice of installation type | |
| Cargo.toml | feat: save last choice of installation type | |
| flake.lock | chore: setting up meson build | |
| flake.nix | chore: setting up meson build | |
| justfile | chore(just): remove unused variable | |
| LICENSE | chore: adopt upstream license | |
| meson.build | refactor(icons): changed org.xinux -> uz.xinux | |
| meson_options.txt | chore: initial port | |
| README.md | updated flake documentation | |
| rust-toolchain.toml | wip: updating deps ( #11 ) | |
Nix Software Center
Built with Nix License: GPLv3 Chat on Matrix Chat on Discord
A graphical app store for Nix built with libadwaita, GTK4, and Relm4. Heavily inspired by GNOME Software.
Features
- Install packages to
configuration.nix- Flakes support can be enabled in the preferences menu
- Install packages with
nix profileornix-env - Show updates for all installed packages
- Search for packages
- Launch applications without installing via
nix-shellandnix run
NixOS Flakes Installation
flake.nix
{
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
nix-software-center.url = "github:xinux-org/software-center";
};
outputs = inputs@{ self, nixpkgs, nix-software-center }: {
nixosConfigurations = {
workstation = nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
modules = [ ./configuration.nix ];
specialArgs = { inherit inputs; };
};
};
};
}
configuration.nix
{ inputs, config, lib, pkgs, ... }: # add inputs here
{
...
environment.systemPackages = with pkgs; [
inputs.nix-software-center.packages.${stdenv.hostPlatform.system}.default
# rest of your packages
];
...
}
NixOS Installation
Head of configuration.nix
if you are on unstable channel or any version after 22.11:
{ config, pkgs, lib, ... }:
let
nix-software-center = import (pkgs.fetchFromGitHub {
owner = "xinux-org";
repo = "software-center";
rev = "0.1.3";
sha256 = ""; # add shaa
}) {};
in
...
environment.systemPackages =
with pkgs; [
nix-software-center
# rest of your packages
];
For any other method of installation, when rebuilding you might be prompted to authenticate twice in a row by pkexec
Single run on an flakes enabled system:
nix run github:xinux-org/software-center
Build & run
This application has Linux-only dependencies.
# download dependencies
nix develop
just install
cd ..
./settings/builddir/install/bin/settings
# or with nix when ready for release
nix build . --show-trace
./settings/result/bin/settings
# app run
just run
# Optional. Generate translation words from /po/POTFILES.in if needed.
cd ./po
xgettext --directory=.. --files-from=POTFILES.in --from-code=UTF-8 -kgettext -o translations.pot
Screenshots
Licenses
Some icons in data/icons contains assets from the NixOS logo and are licensed under a CC-BY license.
Some icons in data/icons contains assets from GNOME Software and are licensed under CC0-1.0.
Translation
To create a poedit file for translation run this command into the file where you want to save translations:
xgettext --directory=.. --files-from=POTFILES.in --from-code=UTF-8 -kgettext -o translations.pot