1
1
Fork 0

Compare commits

...

3 Commits

Author SHA1 Message Date
Tim Van Baak 8c1da2190c Force syncthing config and database to .config 2024-01-03 18:54:51 -08:00
Tim Van Baak d228743c5f Pin registry nixpkgs to flake input 2024-01-03 18:15:22 -08:00
Tim Van Baak a62cb2bab1 Add beatific.extraPrograms
This is partly a way to keep notes on useful software that I might otherwise forget about
2024-01-03 18:03:46 -08:00
3 changed files with 30 additions and 3 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

@ -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";