diff --git a/configuration/containers/firefox-syncserver.nix b/configuration/containers/firefox-syncserver.nix new file mode 100644 index 0000000..3bf62a1 --- /dev/null +++ b/configuration/containers/firefox-syncserver.nix @@ -0,0 +1,20 @@ +{ pkgs, ... }: +{ + services.mysql.package = pkgs.mariadb; + + services.firefox-syncserver = { + enable = true; + secrets = ./firefox-syncserver.env; + settings.host = "0.0.0.0"; + singleNode = { + enable = true; + hostname = "0.0.0.0"; + url = "https://fxsync.fern.garden"; + capacity = 1; + }; + }; + + networking.firewall.allowedTCPPorts = [ 5000 ]; + + system.stateVersion = "25.05"; +} diff --git a/configuration/containers/technitium.nix b/configuration/containers/technitium.nix new file mode 100644 index 0000000..9ed062f --- /dev/null +++ b/configuration/containers/technitium.nix @@ -0,0 +1,8 @@ +{ + services.technitium-dns-server = { + enable = true; + openFirewall = true; + }; + + system.stateVersion = "25.05"; +} diff --git a/configuration/desktop.nix b/configuration/desktop.nix index 60fa178..919cfe2 100755 --- a/configuration/desktop.nix +++ b/configuration/desktop.nix @@ -1,7 +1,7 @@ { pkgs, lib, - feishin0_16_0, + feishin0_17, fluffychat2, ... }: @@ -122,7 +122,7 @@ ansible celluloid discord - feishin0_16_0.feishin + feishin0_17.feishin ghostty gimp3 glabels-qt diff --git a/flake.lock b/flake.lock index b832241..ce4c560 100755 --- a/flake.lock +++ b/flake.lock @@ -15,7 +15,7 @@ "type": "github" } }, - "feishin0_16_0": { + "feishin0_17": { "locked": { "lastModified": 1751534869, "narHash": "sha256-kUYk/jPyX5Lnhv7vUUfNVSHUDA8k28xi2H5bt6a1EHg=", @@ -162,11 +162,11 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1751479989, - "narHash": "sha256-M5KgdpVBVcW4HRVq9/OSRbrxlwsQ1ogEKqnvzsClDqU=", + "lastModified": 1751582995, + "narHash": "sha256-u7ubvtxdTnFPpV27AHpgoKn7qHuE7sgWgza/1oj5nzA=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "34627c90f062da515ea358360f448da57769236e", + "rev": "7a732ed41ca0dd64b4b71b563ab9805a80a7d693", "type": "github" }, "original": { @@ -204,7 +204,7 @@ }, "root": { "inputs": { - "feishin0_16_0": "feishin0_16_0", + "feishin0_17": "feishin0_17", "fluffychat2": "fluffychat2", "lanzaboote": "lanzaboote", "nixos-hardware": "nixos-hardware", diff --git a/flake.nix b/flake.nix index 991fddf..b859fcc 100755 --- a/flake.nix +++ b/flake.nix @@ -8,7 +8,7 @@ # Updated packages. fluffychat2.url = "github:NixOS/nixpkgs?ref=pull/419632/head"; # FluffyChat 2.0.0 - feishin0_16_0.url = "github:NixOS/nixpkgs?ref=pull/414929/head"; # Feishin 0.16.0 + feishin0_17.url = "github:NixOS/nixpkgs?ref=pull/414929/head"; # Feishin 0.17.0 }; outputs = @@ -18,7 +18,7 @@ lanzaboote, nixos-hardware, fluffychat2, - feishin0_16_0, + feishin0_17, ... }: { @@ -27,7 +27,7 @@ specialArgs = { fluffychat2 = import fluffychat2 { inherit system; }; - feishin0_16_0 = import feishin0_16_0 { inherit system; }; + feishin0_17 = import feishin0_17 { inherit system; }; }; modules = [ @@ -71,47 +71,18 @@ modules = [ (nixpkgs + "/nixos/modules/virtualisation/proxmox-lxc.nix") - - { - networking.hostName = "technitium"; - - services.technitium-dns-server = { - enable = true; - openFirewall = true; - }; - - system.stateVersion = "25.05"; - } + { networking.hostName = "technitium"; } + ./configuration/containers/technitium.nix ]; }; - nixosConfigurations.lxc-firefox-syncserver = nixpkgs.lib.nixosSystem rec { + nixosConfigurations.lxc-firefox-syncserver = nixpkgs.lib.nixosSystem { system = "x86_64-linux"; modules = [ (nixpkgs + "/nixos/modules/virtualisation/proxmox-lxc.nix") - - { - networking.hostName = "firefox-syncserver"; - - services.mysql.package = nixpkgs.legacyPackages.${system}.mariadb; - - services.firefox-syncserver = { - enable = true; - secrets = ./firefox-syncserver.env; - settings.host = "0.0.0.0"; - singleNode = { - enable = true; - hostname = "0.0.0.0"; - url = "https://fxsync.fern.garden"; - capacity = 1; - }; - }; - - networking.firewall.allowedTCPPorts = [ 5000 ]; - - system.stateVersion = "25.05"; - } + { networking.hostName = "firefox-syncserver"; } + ./configuration/containers/firefox-syncserver.nix ]; }; }; diff --git a/hardware-configuration/vm-docker.nix b/hardware-configuration/vm-docker.nix new file mode 100644 index 0000000..bf8baa4 --- /dev/null +++ b/hardware-configuration/vm-docker.nix @@ -0,0 +1,30 @@ +{ lib, modulesPath, ... }: + +{ + imports = + [ (modulesPath + "/profiles/qemu-guest.nix") + ]; + + boot.initrd.availableKernelModules = [ "ata_piix" "uhci_hcd" "virtio_pci" "virtio_scsi" "sd_mod" "sr_mod" ]; + boot.initrd.kernelModules = [ ]; + boot.kernelModules = [ "kvm-intel" ]; + boot.extraModulePackages = [ ]; + + fileSystems."/" = + { device = "/dev/disk/by-uuid/cac60222-9b38-4938-8b17-5fddd67e8e26"; + fsType = "ext4"; + }; + + fileSystems."/home/docker/volumes" = + { device = "/dev/disk/by-uuid/95461a94-ad91-43b9-b502-2b5d4496b84e"; + fsType = "ext4"; + }; + + swapDevices = + [ { device = "/dev/disk/by-uuid/025beadb-a89b-4abe-8d0c-b55401316319"; } + ]; + + networking.useDHCP = lib.mkDefault true; + + nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; +} \ No newline at end of file