@ -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
|
||||||
|
@ -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:
|
||||||
{
|
{
|
||||||
|
@ -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 = {
|
||||||
|
Reference in New Issue
Block a user