refactor: organizing some imports
This commit is contained in:
parent
c4f7a64329
commit
db319ed5af
8 changed files with 184 additions and 95 deletions
|
|
@ -1,5 +1,9 @@
|
|||
{lib, ...}: {
|
||||
imports = [./thunar.nix];
|
||||
imports = [
|
||||
./thunar.nix
|
||||
./steam.nix
|
||||
];
|
||||
|
||||
thunar.enable = lib.mkDefault true;
|
||||
steam.enable = lib.mkDefault false;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -4,6 +4,11 @@
|
|||
pkgs,
|
||||
...
|
||||
}: {
|
||||
options = {
|
||||
steam.enable = lib.mkEnableOption "Enables steam";
|
||||
};
|
||||
|
||||
config = lib.mkIf config.steam.enable {
|
||||
hardware.opengl.driSupport32Bit = true;
|
||||
|
||||
nixpkgs.config.packageOverrides = pkgs: {
|
||||
|
|
@ -41,7 +46,6 @@
|
|||
WINE_FULLSCREEN_FSR = "1";
|
||||
};
|
||||
|
||||
environment.systemPackages = with pkgs; [
|
||||
protonup
|
||||
];
|
||||
environment.systemPackages = with pkgs; [protonup];
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,9 +1,21 @@
|
|||
{...}: {
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
...
|
||||
}: {
|
||||
options = {
|
||||
bluetooth.enable = lib.mkEnableOption "Enables Bluetooth";
|
||||
};
|
||||
|
||||
config = lib.mkIf config.bluetooth.enable {
|
||||
services.blueman.enable = true;
|
||||
hardware.bluetooth = {
|
||||
enable = true;
|
||||
powerOnBoot = true;
|
||||
};
|
||||
|
||||
services.upower = {enable = true;};
|
||||
services.upower = {
|
||||
enable = true;
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
|
|||
13
common/nixos/default.nix
Normal file
13
common/nixos/default.nix
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
{lib, ...}: {
|
||||
imports = [
|
||||
./common.nix
|
||||
./laptop.nix
|
||||
./nfs.nix
|
||||
./restic.nix
|
||||
./ssh/default.nix
|
||||
];
|
||||
|
||||
laptop.enable = lib.mkDefault false;
|
||||
nfs.enable = lib.mkDefault false;
|
||||
restic.enable = lib.mkDefault true;
|
||||
}
|
||||
|
|
@ -1,8 +1,20 @@
|
|||
{...}: {
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
...
|
||||
}: {
|
||||
imports = [./bluetooth.nix];
|
||||
options = {
|
||||
laptop.enable = lib.mkEnableOption "Enables Laptop options";
|
||||
};
|
||||
|
||||
config = lib.mkIf config.laptop.enable {
|
||||
# enable's backlight switching
|
||||
programs.light.enable = true;
|
||||
|
||||
# use TLP for power management
|
||||
services.tlp.enable = true;
|
||||
|
||||
bluetooth.enable = true;
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,33 +1,68 @@
|
|||
{...}: {
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
...
|
||||
}: {
|
||||
options = {
|
||||
nfs.enable = lib.mkEnableOption "Enables NFS and sets up mounts";
|
||||
};
|
||||
|
||||
config = lib.mkIf config.nfs.enable {
|
||||
fileSystems = {
|
||||
"/media" = {
|
||||
device = "192.168.10.2:/mnt/tank/media";
|
||||
fsType = "nfs";
|
||||
options = ["x-systemd.automount" "noauto" "x-systemd.after=network-online.target" "x-systemd.mount-timeout=90"];
|
||||
options = [
|
||||
"x-systemd.automount"
|
||||
"noauto"
|
||||
"x-systemd.after=network-online.target"
|
||||
"x-systemd.mount-timeout=90"
|
||||
];
|
||||
};
|
||||
|
||||
"/books" = {
|
||||
device = "192.168.10.2:/mnt/tank/books";
|
||||
fsType = "nfs";
|
||||
options = ["x-systemd.automount" "noauto" "x-systemd.after=network-online.target" "x-systemd.mount-timeout=90"];
|
||||
options = [
|
||||
"x-systemd.automount"
|
||||
"noauto"
|
||||
"x-systemd.after=network-online.target"
|
||||
"x-systemd.mount-timeout=90"
|
||||
];
|
||||
};
|
||||
|
||||
"/music" = {
|
||||
device = "192.168.10.2:/mnt/tank/music";
|
||||
fsType = "nfs";
|
||||
options = ["x-systemd.automount" "noauto" "x-systemd.after=network-online.target" "x-systemd.mount-timeout=90"];
|
||||
options = [
|
||||
"x-systemd.automount"
|
||||
"noauto"
|
||||
"x-systemd.after=network-online.target"
|
||||
"x-systemd.mount-timeout=90"
|
||||
];
|
||||
};
|
||||
|
||||
"/projects" = {
|
||||
device = "192.168.10.2:/mnt/tank/projects";
|
||||
fsType = "nfs";
|
||||
options = ["x-systemd.automount" "noauto" "x-systemd.after=network-online.target" "x-systemd.mount-timeout=90"];
|
||||
options = [
|
||||
"x-systemd.automount"
|
||||
"noauto"
|
||||
"x-systemd.after=network-online.target"
|
||||
"x-systemd.mount-timeout=90"
|
||||
];
|
||||
};
|
||||
|
||||
"/backups" = {
|
||||
device = "192.168.10.2:/mnt/tank/backups";
|
||||
fsType = "nfs";
|
||||
options = ["x-systemd.automount" "noauto" "x-systemd.after=network-online.target" "x-systemd.mount-timeout=90"];
|
||||
options = [
|
||||
"x-systemd.automount"
|
||||
"noauto"
|
||||
"x-systemd.after=network-online.target"
|
||||
"x-systemd.mount-timeout=90"
|
||||
];
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,8 +1,14 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
user,
|
||||
...
|
||||
}: {
|
||||
options = {
|
||||
restic.enable = lib.mkEnableOption "Enables Restic";
|
||||
};
|
||||
|
||||
config = lib.mkIf config.nfs.enable {
|
||||
sops.secrets.restic_key = {
|
||||
owner = config.users.users.${user}.name;
|
||||
};
|
||||
|
|
@ -13,10 +19,16 @@
|
|||
repository = "/backups";
|
||||
initialize = true;
|
||||
passwordFile = "${config.sops.secrets.restic_key.path}";
|
||||
paths = ["/home/${user}/repos" "/home/${user}/Documents" "/home/${user}/.local/share/password-store" "/home/${user}/.local/share/buku"];
|
||||
paths = [
|
||||
"/home/${user}/repos"
|
||||
"/home/${user}/Documents"
|
||||
"/home/${user}/.local/share/password-store"
|
||||
"/home/${user}/.local/share/buku"
|
||||
];
|
||||
timerConfig = {
|
||||
onCalendar = "saturday 23:00";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -5,7 +5,6 @@
|
|||
outputs,
|
||||
lib,
|
||||
config,
|
||||
pkgs,
|
||||
user,
|
||||
...
|
||||
}: {
|
||||
|
|
@ -14,21 +13,14 @@
|
|||
# If you want to use modules your own flake exports (from modules/nixos):
|
||||
# outputs.nixosModules.example
|
||||
../../common/nixos/common.nix
|
||||
../../common/nixos/laptop.nix
|
||||
../../common/networking/default.nix
|
||||
../../common/nixos/bluetooth.nix
|
||||
../../common/nixos/restic.nix
|
||||
../../common/nixos/ssh/ssh.nix
|
||||
../../common/gui/steam.nix
|
||||
../../common/nixos/ssh/ssh_client.nix
|
||||
../../common/nixos/ssh/ssh_guard.nix
|
||||
../../common/gui/hyprland.nix
|
||||
../../common/gui/default.nix
|
||||
../../common/style/stylix.nix
|
||||
../../common/virtualization/default.nix
|
||||
../../common/nixos/sysctl/default.nix
|
||||
../../common/nixos/sysctl
|
||||
|
||||
../../common/networking
|
||||
../../common/nixos
|
||||
../../common/gui
|
||||
../../common/virtualization
|
||||
|
||||
./auditd.nix
|
||||
./kernel.nix
|
||||
|
|
@ -49,6 +41,11 @@
|
|||
./hardware-configuration.nix
|
||||
];
|
||||
|
||||
laptop.enable = true;
|
||||
nfs.enable = true;
|
||||
ssh.enable = true;
|
||||
ssh_guard.enable = true;
|
||||
|
||||
# Bootloader.
|
||||
boot = {
|
||||
loader = {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue