os/modules/default.nix

100 lines
3.2 KiB
Nix

{
self,
inputs,
...
}: {
# Configuration common to all Linux systems
flake = {
nixosModules = rec {
arduino = import ./arduino;
audio = import ./audio;
ci-runner = import ./ci-runner;
core = import ./core;
crypto = import ./crypto;
devops = import ./devops;
docker = import ./docker;
docker-ci-runner = import ./docker-ci-runner;
email = import ./email;
gaming = import ./gaming;
graphical = import ./graphical;
mobile = import ./mobile;
nix = import ./nix;
nextcloud = import ./nextcloud;
office = import ./office;
paperless = import ./paperless;
paranoia = import ./paranoia;
printing = import ./printing;
proxy = import ./proxy;
social = import ./social;
sway = import ./sway;
terminal-life = import ./terminal-life;
uhk = import ./uhk;
user = import ./user;
virtualisation = import ./virtualisation;
base.imports = [
self.nixosModules.home-manager
inputs.agenix.nixosModules.default
inputs.musnix.nixosModules.musnix
({ ... }: {
nixpkgs.overlays = [
(final: prev: {
nixd = inputs.nixpkgs-unstable.legacyPackages.${prev.system}.nixd;
cups-brother-hl3140cw = (import inputs.hl3140cw-arm {
system = prev.system;
config.allowUnfree = true;
}).cups-brother-hl3140cw;
factorio-headless = inputs.nixpkgs-master.legacyPackages.${prev.system}.factorio-headless;
paperless-ngx = inputs.nixpkgs-master.legacyPackages.${prev.system}.paperless-ngx;
waybar = inputs.nixpkgs-master.legacyPackages.${prev.system}.waybar;
element-desktop = inputs.nixpkgs-master.legacyPackages.${prev.system}.element-desktop;
signal-desktop = inputs.nixpkgs-master.legacyPackages.${prev.system}.signal-desktop;
scan2paperless = inputs.scan2paperless.legacyPackages.${prev.system}.scan2paperless;
adlist = inputs.adblock-unbound.packages.${prev.system};
})
] ++ (import ../overlays);
nix.nixPath = [
"nixpkgs=${inputs.nixpkgs}"
"nixos-config=${../lib/compat/nixos}"
"home-manager=${inputs.home-manager}"
];
})
self.nixosModules.arduino
self.nixosModules.audio
self.nixosModules.ci-runner
self.nixosModules.core
self.nixosModules.crypto
self.nixosModules.devops
self.nixosModules.docker
self.nixosModules.docker-ci-runner
self.nixosModules.email
self.nixosModules.gaming
self.nixosModules.graphical
self.nixosModules.mobile
self.nixosModules.nix
self.nixosModules.nextcloud
self.nixosModules.office
self.nixosModules.paperless
self.nixosModules.paranoia
# self.nixosModules.printing
self.nixosModules.proxy
self.nixosModules.social
self.nixosModules.sway
self.nixosModules.terminal-life
self.nixosModules.uhk
self.nixosModules.user
self.nixosModules.virtualisation
self.nixosModules.root
];
};
};
}