blob: 63a2cb2cd3da86a108c753426399d95081645f53 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
|
# ❄ 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 <[email protected]>
COMMANDS:
home
os
edit
help, h Shows a list of commands or help for one command
GLOBAL OPTIONS:
--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).
|