Files
qotd/flake.nix
2025-09-21 20:09:14 +02:00

110 lines
2.8 KiB
Nix

{
inputs.nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
outputs = { self, nixpkgs }:
let
inherit (nixpkgs) lib;
systems = [
"x86_64-linux"
"aarch64-linux"
"x86_64-darwin"
"aarch64-darwin"
];
forAllSystems = f: lib.genAttrs systems (system: let
pkgs = nixpkgs.legacyPackages.${system};
in f system pkgs);
in {
apps = forAllSystems (
system: pkgs: {
default = {
type = "app";
program = "${lib.getExe self.packages.${system}.default}";
};
vm = {
type = "app";
program = "${self.nixosConfigurations.vm.config.system.build.vm}/bin/run-nixos-vm";
};
}
);
devShells = forAllSystems (system: pkgs: {
default = pkgs.mkShell {
nativeBuildInputs = [
pkgs.uiua
];
};
});
packages = forAllSystems (system: pkgs: {
default = pkgs.callPackage ./nix/package.nix {};
});
overlays.default = final: prev: {
qotd = self.packages.${prev.system}.default;
};
nixosModules.default = ./nix/module.nix;
nixosConfigurations.vm = nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
pkgs = import nixpkgs {
system = "x86_64-linux";
overlays = [
self.overlays.default
];
};
modules = [
"${nixpkgs}/nixos/modules/virtualisation/qemu-vm.nix"
self.nixosModules.default
({ config, pkgs, ... }: {
system.stateVersion = config.system.nixos.release;
virtualisation.graphics = false;
users.extraUsers.root.password = "root";
services.getty.autologinUser = "root";
environment.systemPackages = with pkgs; [
netcat
];
users.motd = ''
=======================
Welcome to the qotd vm!
Try running:
nc localhost 17
=======================
'';
services.qotd = {
enable = true;
quotes = [
''
"rm -rf /"
- felixalb on bekkalokk, 2026 (probably)
''
''
( U I U A )
- frero, 2025
''
''
bwaaa :3
- oysteikt on gitea, 2024
''
];
};
})
];
};
};
}