110 lines
2.8 KiB
Nix
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
|
|
''
|
|
];
|
|
};
|
|
})
|
|
];
|
|
};
|
|
};
|
|
}
|