Compare commits

..

4 Commits

Author SHA1 Message Date
2810ba1412 Enable flakes in kexec image and comma integration
All checks were successful
Check Flake / check-flake (push) Successful in 20m21s
2026-01-24 15:02:42 -08:00
e42e30d3cc Fix nix-index autogenerated db comma integration 2026-01-24 15:01:16 -08:00
83b5d3b8c2 Update nextcloud occ command syntax 2026-01-24 14:59:57 -08:00
0b604fd99c Add activate deploy command 2026-01-24 14:58:40 -08:00
5 changed files with 26 additions and 32 deletions

View File

@@ -41,7 +41,12 @@ iso:
kexec-img: kexec-img:
nix build .#packages.x86_64-linux.kexec nix build .#packages.x86_64-linux.kexec
# Deploy a host by name (ex: 's0') # Deploy a host by name (ex: 's0') but don't activate
.PHONY: deploy .PHONY: deploy
deploy: deploy:
deploy --remote-build --boot --debug-logs --skip-checks .#$(filter-out $@,$(MAKECMDGOALS)) deploy --remote-build --boot --debug-logs --skip-checks .#$(filter-out $@,$(MAKECMDGOALS))
# Deploy a host by name (ex: 's0')
.PHONY: deploy-activate
deploy-activate:
deploy --remote-build --debug-logs --skip-checks .#$(filter-out $@,$(MAKECMDGOALS))

View File

@@ -110,10 +110,10 @@ in
config.services.nextcloud.occ config.services.nextcloud.occ
]; ];
script = '' script = ''
nextcloud-occ -- config:app:set richdocuments wopi_url --value ${lib.escapeShellArg wopi_url} nextcloud-occ config:app:set richdocuments wopi_url --value ${lib.escapeShellArg wopi_url}
nextcloud-occ -- config:app:set richdocuments public_wopi_url --value ${lib.escapeShellArg public_wopi_url} nextcloud-occ config:app:set richdocuments public_wopi_url --value ${lib.escapeShellArg public_wopi_url}
nextcloud-occ -- config:app:set richdocuments wopi_allowlist --value ${lib.escapeShellArg wopi_allowlist} nextcloud-occ config:app:set richdocuments wopi_allowlist --value ${lib.escapeShellArg wopi_allowlist}
nextcloud-occ -- richdocuments:setup nextcloud-occ richdocuments:setup
''; '';
serviceConfig = { serviceConfig = {
Type = "oneshot"; Type = "oneshot";
@@ -134,8 +134,8 @@ in
config.services.nextcloud.occ config.services.nextcloud.occ
]; ];
script = '' script = ''
nextcloud-occ -- config:app:set whiteboard collabBackendUrl --value="https://${whiteboardHostname}" nextcloud-occ config:app:set whiteboard collabBackendUrl --value="https://${whiteboardHostname}"
nextcloud-occ -- config:app:set whiteboard jwt_secret_key --value="$JWT_SECRET_KEY" nextcloud-occ config:app:set whiteboard jwt_secret_key --value="$JWT_SECRET_KEY"
''; '';
serviceConfig = { serviceConfig = {
Type = "oneshot"; Type = "oneshot";

View File

@@ -6,14 +6,11 @@
# - add some handy shell commands # - add some handy shell commands
{ {
environment.systemPackages = with pkgs; [
comma
];
# nix-index # nix-index
programs.nix-index.enable = true; programs.nix-index.enable = true;
programs.nix-index.enableFishIntegration = true; programs.nix-index.enableFishIntegration = true;
programs.command-not-found.enable = false; programs.command-not-found.enable = false;
programs.nix-index-database.comma.enable = true;
programs.fish = { programs.fish = {
enable = true; enable = true;
@@ -35,21 +32,4 @@
llsblk = "lsblk -o +uuid,fsType"; llsblk = "lsblk -o +uuid,fsType";
}; };
nixpkgs.overlays = [
(final: prev: {
# comma uses the "nix-index" package built into nixpkgs by default.
# That package doesn't use the prebuilt nix-index database so it needs to be changed.
comma = prev.comma.overrideAttrs (old: {
nativeBuildInputs = old.nativeBuildInputs ++ [
prev.makeWrapper
];
postInstall = ''
wrapProgram $out/bin/comma \
--prefix PATH : ${lib.makeBinPath [ prev.fzy config.programs.nix-index.package ]}
ln -s $out/bin/comma $out/bin/,
'';
});
})
];
} }

View File

@@ -89,7 +89,7 @@
simple-nixos-mailserver.nixosModule simple-nixos-mailserver.nixosModule
agenix.nixosModules.default agenix.nixosModules.default
dailybuild_modules.nixosModule dailybuild_modules.nixosModule
nix-index-database.nixosModules.nix-index nix-index-database.nixosModules.default
home-manager.nixosModules.home-manager home-manager.nixosModules.home-manager
self.nixosModules.kernel-modules self.nixosModules.kernel-modules
({ lib, ... }: { ({ lib, ... }: {
@@ -145,11 +145,15 @@
machineHosts; machineHosts;
packages = packages =
with inputs;
let let
mkEphemeral = system: format: inputs.nixos-generators.nixosGenerate { mkEphemeral = system: format: nixos-generators.nixosGenerate {
inherit system; inherit system;
inherit format; inherit format;
modules = [ ./machines/ephemeral/minimal.nix ]; modules = [
./machines/ephemeral/minimal.nix
nix-index-database.nixosModules.default
];
}; };
in in
{ {

View File

@@ -5,6 +5,8 @@
(modulesPath + "/installer/cd-dvd/channel.nix") (modulesPath + "/installer/cd-dvd/channel.nix")
../../common/machine-info ../../common/machine-info
../../common/ssh.nix ../../common/ssh.nix
../../common/flakes.nix
../../common/shell.nix
]; ];
boot.initrd.availableKernelModules = [ boot.initrd.availableKernelModules = [
@@ -36,6 +38,7 @@
git-lfs git-lfs
wget wget
htop htop
btop
dnsutils dnsutils
pciutils pciutils
usbutils usbutils
@@ -54,5 +57,7 @@
}; };
}; };
nix.flakes.enable = true;
users.users.root.openssh.authorizedKeys.keys = config.machines.ssh.userKeys; users.users.root.openssh.authorizedKeys.keys = config.machines.ssh.userKeys;
} }