# welcome to arbys ![image](https://docs.atagen.co/arbys/assets/logo.png "Arby's logo") ## 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.