Compare commits

..

3 commits

Author SHA1 Message Date
20ef6f5b90
update flake lock
Some checks failed
Build / nix-build (native-aarch64, varda) (push) Successful in 1m49s
Build / nix-build (native-x86_64, gandalf) (push) Successful in 8m8s
Build / nix-build (native-x86_64, telperion) (push) Successful in 3m31s
Build / nix-build (native-x86_64, telchar) (push) Failing after 23m22s
Build / Nix Build Successful (push) Has been cancelled
2024-08-21 02:22:34 -05:00
45d76d4f0f
add shfmt, reorganize. 2024-08-17 21:16:09 -05:00
800c102ea3
Ensure paths exist. 2024-08-17 18:02:06 -05:00
7 changed files with 32 additions and 15 deletions

View file

@ -467,11 +467,11 @@
}, },
"nixpkgs": { "nixpkgs": {
"locked": { "locked": {
"lastModified": 1723688146, "lastModified": 1724098845,
"narHash": "sha256-sqLwJcHYeWLOeP/XoLwAtYjr01TISlkOfz+NG82pbdg=", "narHash": "sha256-D5HwjQw/02fuXbR4LCTo64koglP2j99hkDR79/3yLOE=",
"owner": "nixos", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "c3d4ac725177c030b1e289015989da2ad9d56af0", "rev": "f1bad50880bae73ff2d82fafc22010b4fc097a9c",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -559,11 +559,11 @@
}, },
"nixpkgs-unstable_2": { "nixpkgs-unstable_2": {
"locked": { "locked": {
"lastModified": 1723637854, "lastModified": 1723991338,
"narHash": "sha256-med8+5DSWa2UnOqtdICndjDAEjxr5D7zaIiK4pn0Q7c=", "narHash": "sha256-Grh5PF0+gootJfOJFenTTxDTYPidA3V28dqJ/WV7iis=",
"owner": "nixos", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "c3aa7b8938b17aebd2deecf7be0636000d62a2b9", "rev": "8a3354191c0d7144db9756a74755672387b702ba",
"type": "github" "type": "github"
}, },
"original": { "original": {

View file

@ -79,6 +79,7 @@
inputs.nixpkgs.follows = "nixpkgs"; inputs.nixpkgs.follows = "nixpkgs";
}; };
# ghostty - 👻
ghostty = { ghostty = {
url = "git+ssh://git@github.com/ghostty-org/ghostty"; url = "git+ssh://git@github.com/ghostty-org/ghostty";
}; };

View file

@ -33,6 +33,7 @@ with config;
solaar solaar
talosctl talosctl
termius termius
unstable.bruno
unstable.fractal unstable.fractal
unstable.peazip unstable.peazip
unstable.telegram-desktop unstable.telegram-desktop

View file

@ -25,6 +25,7 @@ let
"tamasfe.even-better-toml" "tamasfe.even-better-toml"
"tyriar.sort-lines" "tyriar.sort-lines"
"yzhang.markdown-all-in-one" "yzhang.markdown-all-in-one"
"foxundermoon.shell-format"
]; ];
# Nixpkgs Extensions. These are updated whenver they get around to it. # Nixpkgs Extensions. These are updated whenver they get around to it.
vscodeNixpkgsExtensions = [ vscodeNixpkgsExtensions = [

View file

@ -9,7 +9,7 @@ in
package = mkPackageOption pkgs "dnsmasq" { }; package = mkPackageOption pkgs "dnsmasq" { };
bootAsset = mkOption { bootAsset = mkOption {
type = types.str; type = types.str;
example = "http://10.1.1.57:8086/boot.ipxe"; example = "http://10.1.1.57:8086/boot.ipxe";
}; };
tftpRoot = mkOption { tftpRoot = mkOption {
type = types.str; type = types.str;
@ -18,6 +18,11 @@ in
}; };
config = mkIf cfg.enable { config = mkIf cfg.enable {
# Ensure the tftpRoot directory exists
systemd.tmpfiles.rules = [
"d ${cfg.tftpRoot} 0755 dnsmasq dnsmasq"
];
networking.firewall = { networking.firewall = {
# dhcp ports # dhcp ports
allowedUDPPorts = [ 67 68 ]; # server/client allowedUDPPorts = [ 67 68 ]; # server/client

View file

@ -10,14 +10,23 @@ in
dataPath = mkOption { dataPath = mkOption {
type = types.str; type = types.str;
example = "/var/lib/matchbox"; example = "/var/lib/matchbox";
description = "This is where profiles, groups, and other matchbox configuration is stored.";
}; };
assetPath = mkOption { assetPath = mkOption {
type = types.str; type = types.str;
example = "/nas/matchbox/assets"; example = "/var/lib/matchbox/assets";
description = "This is where matchbox will look for assets like kernels and initrds.";
}; };
}; };
config = mkIf cfg.enable { config = mkIf cfg.enable {
# Ensure the dataPath and assetPath directories exist
systemd.tmpfiles.rules = [
"d ${cfg.dataPath} 0755 matchbox matchbox"
"d ${cfg.assetPath} 0755 matchbox matchbox"
];
# Matchbox Server for PXE booting via device profiles
environment.systemPackages = [ environment.systemPackages = [
cfg.package cfg.package
]; ];
@ -27,7 +36,6 @@ in
allowedTCPPorts = [ 8086 ]; allowedTCPPorts = [ 8086 ];
}; };
# Matchbox Server for PXE booting via device profiles
users.groups.matchbox = { }; users.groups.matchbox = { };
users.users = { users.users = {
matchbox = { matchbox = {

View file

@ -6,19 +6,20 @@ with config;
{ {
# git & vim are in global # git & vim are in global
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
jq
yq
btop btop
dnsutils dnsutils
nix
fira-code-nerdfont fira-code-nerdfont
jq
nix
yq
# TODO Move # TODO Move
nil
nixpkgs-fmt
statix
gh gh
go go
nil
nixpkgs-fmt
shfmt
statix
# bind # for dns utils like named-checkconf # bind # for dns utils like named-checkconf
inputs.nix-inspect.packages.${pkgs.system}.default inputs.nix-inspect.packages.${pkgs.system}.default