Payas Relekar
c2a9dc5ca3
Now that Music collection from WSL can be accessed by Strawberry directly from filesystem, it is not necessary to keep navidrome service around any more.
111 lines
2.8 KiB
Nix
111 lines
2.8 KiB
Nix
{
|
|
description = "NixOS configuration (flake edition)";
|
|
|
|
inputs = {
|
|
nixpkgs = {
|
|
url = "github:nixos/nixpkgs/nixos-unstable";
|
|
};
|
|
nixos-wsl = {
|
|
url = "github:nix-community/NixOS-WSL";
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
};
|
|
home-manager = {
|
|
url = "github:nix-community/home-manager";
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
};
|
|
emacs-overlay = {
|
|
url = "github:nix-community/emacs-overlay";
|
|
};
|
|
agenix = {
|
|
url = "github:ryantm/agenix";
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
};
|
|
nixos-hardware.url = "github:NixOS/nixos-hardware/master";
|
|
};
|
|
|
|
outputs =
|
|
{ self
|
|
, nixpkgs
|
|
, nixos-wsl
|
|
, home-manager
|
|
, emacs-overlay
|
|
, agenix
|
|
, nixos-hardware
|
|
, ...
|
|
}:
|
|
let
|
|
common-modules = [
|
|
./cachix.nix
|
|
./modules/nix.nix
|
|
./modules/common.nix
|
|
];
|
|
in
|
|
{
|
|
nixosConfigurations = {
|
|
|
|
# The Workhorse: WSL2 edition
|
|
hermes = nixpkgs.lib.nixosSystem {
|
|
system = "x86_64-linux";
|
|
modules = common-modules ++ [
|
|
|
|
# Overlays
|
|
{ nixpkgs.overlays = [ emacs-overlay.overlay ]; }
|
|
|
|
# Modules and module config
|
|
./modules/fish.nix
|
|
./modules/users.nix
|
|
./modules/fonts.nix
|
|
|
|
# Host-specific config
|
|
./hosts/hermes/configuration.nix
|
|
nixos-wsl.nixosModules.wsl
|
|
./hosts/hermes/wsl.nix
|
|
./hosts/hermes/syncthing.nix
|
|
# ./hosts/hermes/backup.nix
|
|
agenix.nixosModules.age
|
|
./hosts/hermes/secrets/agenix.nix
|
|
|
|
# User-specific config
|
|
home-manager.nixosModules.home-manager
|
|
{
|
|
home-manager.useGlobalPkgs = true;
|
|
home-manager.useUserPackages = true;
|
|
home-manager.users = {
|
|
payas = import ./hosts/hermes/home.nix;
|
|
root = import ./modules/root-home.nix;
|
|
};
|
|
}
|
|
|
|
];
|
|
};
|
|
|
|
# My Pi
|
|
bebop = nixpkgs.lib.nixosSystem {
|
|
system = "aarch64-linux";
|
|
modules = common-modules ++ [
|
|
|
|
# Modules and module config
|
|
./modules/fish.nix
|
|
./modules/monitoring/monitoring.nix
|
|
|
|
# Host-specific config
|
|
nixos-hardware.nixosModules.raspberry-pi-4
|
|
./hosts/bebop/configuration.nix
|
|
./hosts/bebop/syncthing.nix
|
|
./hosts/bebop/navidrome.nix
|
|
./hosts/bebop/pihole.nix
|
|
./hosts/bebop/ssh.nix
|
|
|
|
# User-specific config : Home-manager
|
|
home-manager.nixosModules.home-manager
|
|
{
|
|
home-manager.useGlobalPkgs = true;
|
|
home-manager.useUserPackages = true;
|
|
home-manager.users.payas = import ./hosts/bebop/home.nix;
|
|
}
|
|
];
|
|
};
|
|
};
|
|
|
|
};
|
|
}
|