Gui application to manage NIXOS build.
you can search for packages. you can mark them (they will be added to configuration.nix using rnix ast) or you can download directly (nix-env -iA will be used)
you can manage your options from there. changed will update configuration.nix accordingly. Application will ask for manual revision of configuration.nix before update.
you can controll channels, see generations, update channels, rebuild.
on the first run you have to let app create packages and options database as root which will be located at /etc/NIX_GUI. to modify configuration.nix or rebuild system you need to run nix-gui as root or with sudo. Installed packages and channels depend on user by which app is run.
downloads and rebuild has progress bar indicator.
nix-build --expr 'with import <nixpkgs> {}; callPackage ./default.nix {}'
default.nix
🠋🠋🠋
{ pkgs ? import <nixpkgs> {} }:
let
version = "0.1.0";
in pkgs.stdenv.mkDerivation {
name = "Nixos_Gui-${version}";
system = "x86_64-linux";
src = pkgs.fetchurl {
url = "https://github.com/celestialme/Nixos-Gui/archive/47ee6b29713ba04e4a088b31778fd1e0e358f087.tar.gz";
sha256= "sha256-x4ld1SIg7q8qBYifgY89mXY3vl2S0JX5nsKsaEzUo6Y=";
};
nativeBuildInputs = [
pkgs.autoPatchelfHook
];
buildInputs = [
pkgs.openssl
pkgs.webkitgtk
];
unpackPhase = "
tar -xvf $src
";
installPhase = ''
mkdir -p $out
echo "current dir"
ls -a
cp -r ./Nixos-*/usr/* $out
'';
}
git clone https://github.com/Celestialme/Nixos-Gui.git
cd Nixos-Gui
terminal #1 run:
nix-shell
npm install
npm run dev
terminal #2 run:
nix-shell
npm run tauri dev