1
1
Fork 0

Compare commits

...

6 Commits

Author SHA1 Message Date
Tim Van Baak 48f36f5d9e catacomb: enable syncthing 2024-01-04 19:57:13 +00:00
Tim Van Baak 17b87e606c catacomb: comment on networking.hostId 2024-01-04 19:57:13 +00:00
Tim Van Baak b4a32f04b5 catacomb: reorganize and pare down packages 2024-01-04 19:57:13 +00:00
Tim Van Baak e71acea928 beatific: Force syncthing config and database to .config 2024-01-04 19:57:08 +00:00
Tim Van Baak d47d87d91f beatific: Pin registry nixpkgs to flake input 2024-01-04 19:57:01 +00:00
Tim Van Baak 0fce9564f5 beatific: Add beatific.extraPrograms
This is partly a way to keep notes on useful software that I might otherwise forget about
2024-01-04 19:56:53 +00:00
4 changed files with 38 additions and 12 deletions

View File

@ -30,14 +30,19 @@
nixos-wsl, nixos-wsl,
intake, intake,
intake-sources, intake-sources,
}: { }@inputs: {
nixosModules.beatific = import ./modules/beatific.nix; nixosModules.beatific = import ./modules/beatific.nix;
nixosConfigurations = { nixosConfigurations = let
pinNixpkgs = nixpkgs: { ... }: {
nix.registry.nixpkgs.to = { type = "path"; path = nixpkgs; };
};
in {
backyard = nixpkgs-2311.lib.nixosSystem { backyard = nixpkgs-2311.lib.nixosSystem {
system = "x86_64-linux"; system = "x86_64-linux";
modules = [ modules = [
self.nixosModules.beatific self.nixosModules.beatific
(pinNixpkgs nixpkgs-2311)
./machine/backyard ./machine/backyard
]; ];
}; };
@ -45,6 +50,7 @@
system = "aarch64-linux"; system = "aarch64-linux";
modules = [ modules = [
self.nixosModules.beatific self.nixosModules.beatific
(pinNixpkgs nixpkgs-2305)
./machine/catacomb ./machine/catacomb
]; ];
}; };
@ -54,6 +60,7 @@
self.nixosModules.beatific self.nixosModules.beatific
intake.nixosModules.default intake.nixosModules.default
intake-sources.nixosModules.default intake-sources.nixosModules.default
(pinNixpkgs nixpkgs-2305)
./machine/empyrean ./machine/empyrean
]; ];
}; };
@ -61,6 +68,7 @@
system = "x86_64-linux"; system = "x86_64-linux";
modules = [ modules = [
self.nixosModules.beatific self.nixosModules.beatific
(pinNixpkgs nixpkgs-2311)
({ ... }: { ({ ... }: {
environment.systemPackages = [ nixpkgs-2311.legacyPackages."i686-linux".gperftools ]; environment.systemPackages = [ nixpkgs-2311.legacyPackages."i686-linux".gperftools ];
}) })
@ -78,6 +86,7 @@
system = "x86_64-linux"; system = "x86_64-linux";
modules = [ modules = [
self.nixosModules.beatific self.nixosModules.beatific
(pinNixpkgs nixpkgs-2305)
./machine/unfolder ./machine/unfolder
]; ];
}; };

View File

@ -7,7 +7,7 @@
]; ];
beatific.hostName = "catacomb"; beatific.hostName = "catacomb";
beatific.defaults.tvbSync = false; beatific.defaults.tvbSync = true;
boot = { boot = {
loader = { loader = {
@ -26,17 +26,16 @@
swapDevices = [ { device = "/swap"; size = 1024; } ]; swapDevices = [ { device = "/swap"; size = 1024; } ];
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
tmux man-pages pv lsof exiftool # media metadata tool
usbutils lsof # list open files
hdparm sdparm smartmontools gptfdisk gnufdisk mkpasswd # used for setting SMB passwords, I think?
dosfstools samba # provides smbpasswd, mostly
mkpasswd samba smartmontools # provides smartctl
rclone gnupg usbutils # provides lsusb
exiftool
]; ];
networking = { networking = {
hostId = "beeeeee5"; hostId = "beeeeee5"; # this must be consistent for ZFS
firewall = { firewall = {
enable = true; enable = true;
allowedTCPPorts = [ 139 445 ]; allowedTCPPorts = [ 139 445 ];

View File

@ -50,6 +50,7 @@
hardware.opengl.enable = true; hardware.opengl.enable = true;
hardware.opengl.driSupport32Bit = true; hardware.opengl.driSupport32Bit = true;
beatific.extraPrograms = true;
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
firefox firefox
libreoffice libreoffice

View File

@ -26,6 +26,12 @@ in {
default = false; default = false;
}; };
extraPrograms = mkOption {
type = types.bool;
description = "Additional default programs";
default = false;
};
# Groups of related defaults can be disabled by flipping off the switches here: # Groups of related defaults can be disabled by flipping off the switches here:
# beatific.defaults.${category} = false; # beatific.defaults.${category} = false;
# They default to true because the point is to do these things by default. # They default to true because the point is to do these things by default.
@ -107,6 +113,14 @@ in {
environment.variables.EDITOR = mkOverride 999 "vim"; environment.variables.EDITOR = mkOverride 999 "vim";
}) })
(mkIf cfg.extraPrograms {
environment.systemPackages = with pkgs; [
calibre # provides ebook-convert
imagemagick # image convertion cli
tesseract # OCR engine
];
})
(mkIf cfg.defaults.ssh { (mkIf cfg.defaults.ssh {
services.openssh.enable = true; services.openssh.enable = true;
services.openssh.banner = let services.openssh.banner = let
@ -180,7 +194,10 @@ in {
# system services so as not to require login to sync. # system services so as not to require login to sync.
services.syncthing = { services.syncthing = {
enable = true; enable = true;
dataDir = "/home/tvb"; configDir = "/home/tvb/.config/syncthing";
# this doesn't prevent syncthing from putting sync points in other locations, it's just a default
# normally it would make sense to put it at ~ but see https://github.com/NixOS/nixpkgs/pull/273693
dataDir = "/home/tvb/.config/syncthing";
openDefaultPorts = true; openDefaultPorts = true;
user = "tvb"; user = "tvb";
group = "tvb"; group = "tvb";