type changes

Signed-off-by: ahuston-0 <aliceghuston@gmail.com>
This commit is contained in:
ahuston-0 2024-05-15 04:37:22 -04:00 committed by Alice Huston
parent 0ce3d57e46
commit 298d7423c6
3 changed files with 47 additions and 29 deletions

View File

@ -211,6 +211,7 @@
}: }:
lib.nixosSystem { lib.nixosSystem {
system = "x86_64-linux"; system = "x86_64-linux";
specialArgs = inputs;
modules = modules =
[ [
nixos-modules.nixosModule nixos-modules.nixosModule

View File

@ -9,7 +9,8 @@ let
cfg = config.services.autopull; cfg = config.services.autopull;
autopull-type = lib.types.submodule { autopull-type = lib.types.submodule {
enable = lib.mkEnableOption "autopull for ${cfg.name}"; options = {
enable = lib.mkEnableOption "autopull repo";
name = lib.mkOption { name = lib.mkOption {
type = lib.types.str; type = lib.types.str;
@ -40,6 +41,7 @@ let
description = "Whether or not the rebuild service should be triggered after pulling. Note that system.autoUpgrade must be pointed at the same directory as this service if you'd like to use this option."; description = "Whether or not the rebuild service should be triggered after pulling. Note that system.autoUpgrade must be pointed at the same directory as this service if you'd like to use this option.";
}; };
}; };
};
in in
{ {
options = { options = {
@ -55,10 +57,12 @@ in
repos = lib.filterAttrs (_: { enable, ... }: enable == true) cfg.repo; repos = lib.filterAttrs (_: { enable, ... }: enable == true) cfg.repo;
in in
lib.mkIf cfg.enable { lib.mkIf cfg.enable {
environment.systemPackages = [ environment.systemPackages =
[ pkgs.git ]
++ lib.optionals (lib.any (ssh-key: ssh-key != "") (lib.mapGetAttr "ssh-key" repos)) [
pkgs.openssh pkgs.openssh
pkgs.git
]; ];
systemd.services = lib.mapAttrs' ( systemd.services = lib.mapAttrs' (
repo: repo:
{ {

View File

@ -1,4 +1,9 @@
{ config, pkgs, ... }: {
config,
pkgs,
lib,
...
}:
{ {
imports = [ imports = [
./programs.nix ./programs.nix
@ -44,6 +49,14 @@
services.fprintd.enable = true; services.fprintd.enable = true;
services.openssh.enable = false; services.openssh.enable = false;
services.autopull = {
enable = lib.mkDefault true;
repo.dotfiles = {
enable = lib.mkDefault true;
ssh-key = lib.mkDefault "/root/.ssh/id_ed25519_ghdeploy";
path = lib.mkDefault /root/dotfiles;
};
};
services.spotifyd = { services.spotifyd = {
enable = true; enable = true;
settings = { settings = {