# ❄ Rui Rui is my personal NixOS flake manager. It isn't very unique to my system at the moment, so anyone can use it. ## Useful Commands - `rui edit` - Open and edit your flake directory from anywhere - `rui home/os switch` - Rebuild and switch your home or OS flake configuration from anywhere - `rui home news` - Show the latest news from your Home Manager configuration packages ## Installation ### Add to Flake Inputs (for Flakes Users) ```nix { inputs.rui = { url = "github:Fuwn/rui"; inputs.nixpkgs.follows = "nixpkgs"; # Recommended }; } ``` ### Add to Home Manager (Managed Configuration) This method manages the configuration for you with Nix. ```nix # ... inputs.home-manager.lib.homeManagerConfiguration { modules = [ inputs.rui.homeManagerModules.${builtins.currentSystem}.default ]; }; # ... ``` ### Configure Rui Using Home Manager ```nix { programs.rui = { enable = true; settings = { # Status notifications via `notify-send` notify = true; # Rui falls back on the `FLAKE_EDITOR` and `EDITOR` environment variables editor = "code"; # Rui falls back on the `FLAKE` environment variable flake = "/path/to/your-flake"; }; }; } ``` ### Add to System or Home Manager Packages (Manual Configuration) Using this method, configuration is done manually by the user in the `$HOME/.config/rui/config.json` file. ```nix # For flakes users rui.packages.${pkgs.system}.default # For non-flakes users (import ( pkgs.fetchFromGitHub { owner = "Fuwn"; repo = "rui"; rev = "..."; # Use the current commit revision hash hash = "..."; # Use the current commit sha256 hash } )).packages.${builtins.currentSystem}.default ``` ## `--help` ```text NAME: rui - Personal NixOS Flake Manager USAGE: rui [global options] command [command options] DESCRIPTION: Personal NixOS Flake Manager AUTHOR: Fuwn COMMANDS: home os edit help, h Shows a list of commands or help for one command GLOBAL OPTIONS: --allow-unfree (default: false) --help, -h show help COPYRIGHT: Copyright (c) 2024-2024 Fuwn ``` ## Licence This project is licensed with the [GNU General Public License v3.0](./LICENSE.txt).