62 lines
1.7 KiB
Markdown
62 lines
1.7 KiB
Markdown
|
|
# welcome to arbys
|
|
|
|

|
|
|
|
## we have the meats
|
|
|
|
**Arb**itrar**y** **s**ymlink manager is a NixOS module designed to allow you to link anything - from anywhere, to anywhere.
|
|
|
|
Reproducibility vs mutability is up to you; source from the nix store, a stow repo you manage yourself, or an arbitrary set of files on disk.
|
|
|
|
However you choose to satisfy your slow-roasted meat cravings, Arbys guarantees that the set of links generated is consistent.
|
|
|
|
## double beef 'n cheddar
|
|
|
|
The Arbys interface is simple, and resembles hjem or home manager's files implementation.
|
|
|
|
It can be as easy as:
|
|
````nix
|
|
{ ... }:
|
|
{
|
|
environment = {
|
|
arbys.enable = true;
|
|
files."/var/anywhere".text = "It's tender, juicy deliciousness on the inside and perfectly fried for a satisfying crunch on the outside.";
|
|
};
|
|
}
|
|
````
|
|
|
|
You can find the full documentation [here](https://docs.atagen.co/arbys).
|
|
|
|
## smokehouse brisket
|
|
|
|
Adding Arbys to your config is straightforward:
|
|
````nix
|
|
# flake.nix
|
|
{
|
|
# first, add to your flake inputs
|
|
inputs = {
|
|
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
|
|
arbys.url = "git+https://git.atagen.co/atagen/arbys";
|
|
};
|
|
|
|
# next, utilise the supplied NixOS module
|
|
outputs = { self, nixpkgs, arbys, ... }:
|
|
{
|
|
nixosConfigurations.mycoolhost = nixpkgs.lib.nixosSystem {
|
|
# fluff elided
|
|
modules = [
|
|
arbys.nixosModules.arbys
|
|
];
|
|
};
|
|
};
|
|
}
|
|
````
|
|
Then set up your linkages per the documentation above.
|
|
|
|
Enjoy !
|
|
|
|
## classic french dip & swiss
|
|
|
|
Arbys would not be possible without the hard work of the [feel-co](https://github.com/feel-co) team and their excellent [hjem](https://github.com/feel-co/hjem) and [smfh](https://github.com/feel-co/smfh) projects.
|
|
|