Compare commits

..

1 Commits

17 changed files with 56 additions and 359 deletions

122
flake.lock generated
View File

@@ -1,148 +1,60 @@
{ {
"nodes": { "nodes": {
"dotfiles": {
"flake": false,
"locked": {
"lastModified": 1743949278,
"narHash": "sha256-ntNJXtq3Gw+7ssEgLzoKAiuSS6QXaCwK6k/KSLlqBwo=",
"ref": "main",
"rev": "6e1d7df5b569f2eb98759e1ca77a06556c5bd1dd",
"revCount": 10,
"type": "git",
"url": "https://git.finally.coffee/transcaffeine/dotfiles.git"
},
"original": {
"ref": "main",
"type": "git",
"url": "https://git.finally.coffee/transcaffeine/dotfiles.git"
}
},
"dotfiles-local": {
"flake": false,
"locked": {
"lastModified": 1743949278,
"narHash": "sha256-ntNJXtq3Gw+7ssEgLzoKAiuSS6QXaCwK6k/KSLlqBwo=",
"ref": "main",
"rev": "6e1d7df5b569f2eb98759e1ca77a06556c5bd1dd",
"revCount": 10,
"type": "git",
"url": "https://git.finally.coffee/transcaffeine/dotfiles"
},
"original": {
"ref": "main",
"type": "git",
"url": "https://git.finally.coffee/transcaffeine/dotfiles"
}
},
"home-manager": { "home-manager": {
"inputs": { "inputs": {
"nixpkgs": [ "nixpkgs": "nixpkgs"
"nixpkgs"
]
}, },
"locked": { "locked": {
"lastModified": 1756679287, "lastModified": 1732466619,
"narHash": "sha256-Xd1vOeY9ccDf5VtVK12yM0FS6qqvfUop8UQlxEB+gTQ=", "narHash": "sha256-T1e5oceypZu3Q8vzICjv1X/sGs9XfJRMW5OuXHgpB3c=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "07fc025fe10487dd80f2ec694f1cd790e752d0e8", "rev": "f3111f62a23451114433888902a55cf0692b408d",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "nix-community", "owner": "nix-community",
"ref": "release-25.05", "ref": "release-24.11",
"repo": "home-manager", "repo": "home-manager",
"type": "github" "type": "github"
} }
}, },
"nixos-hardware": {
"locked": {
"lastModified": 1757103352,
"narHash": "sha256-PtT7ix43ss8PONJ1VJw3f6t2yAoGH+q462Sn8lrmWmk=",
"owner": "NixOS",
"repo": "nixos-hardware",
"rev": "11b2a10c7be726321bb854403fdeec391e798bf0",
"type": "github"
},
"original": {
"owner": "NixOS",
"repo": "nixos-hardware",
"type": "github"
}
},
"nixpkgs": { "nixpkgs": {
"locked": { "locked": {
"lastModified": 1757020766, "lastModified": 1731755305,
"narHash": "sha256-PLoSjHRa2bUbi1x9HoXgTx2AiuzNXs54c8omhadyvp0=", "narHash": "sha256-v5P3dk5JdiT+4x69ZaB18B8+Rcu3TIOrcdG4uEX7WZ8=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "fe83bbdde2ccdc2cb9573aa846abe8363f79a97a", "rev": "057f63b6dc1a2c67301286152eb5af20747a9cb4",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "NixOS", "owner": "NixOS",
"ref": "nixos-25.05", "ref": "nixos-24.11",
"repo": "nixpkgs", "repo": "nixpkgs",
"type": "github" "type": "github"
} }
}, },
"nixpkgs-forked": { "nixpkgs_2": {
"locked": { "locked": {
"lastModified": 1751998018, "lastModified": 1732350895,
"narHash": "sha256-JHVI60B3/cN3a0JDfslramsO056ig5wMQTGmgO9eLWQ=", "narHash": "sha256-GcOQbOgmwlsRhpLGSwZJwLbo3pu9ochMETuRSS1xpz4=",
"owner": "transcaffeine", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "5d91ff97e777cd2bfb8cb108907e49abcea939f4", "rev": "0c582677378f2d9ffcb01490af2f2c678dcb29d3",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "transcaffeine", "owner": "NixOS",
"ref": "nexus/3.81.1", "ref": "nixos-24.11",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs-local": {
"locked": {
"lastModified": 1757168979,
"narHash": "sha256-abp5DZtyu8idvMbPbEpBfdsxmhnNo/ud8hZ0KsbvAqs=",
"ref": "refs/heads/cinny/4.9.1",
"rev": "fc2627665df4f815f2409effcaf7bb0f427e303c",
"revCount": 855244,
"type": "git",
"url": "file:/home/transcaffeine/git/transcaffeine/nixpkgs"
},
"original": {
"type": "git",
"url": "file:/home/transcaffeine/git/transcaffeine/nixpkgs"
}
},
"nixpkgs-unstable": {
"locked": {
"lastModified": 1757236331,
"narHash": "sha256-zf1HPzatARa8PFLS7ypOxx2IVpbAWotKYl8Kgu4DYyw=",
"owner": "nixOS",
"repo": "nixpkgs",
"rev": "1f46efd9d12bc85e195f4d17aacc372a88a277a5",
"type": "github"
},
"original": {
"owner": "nixOS",
"ref": "master",
"repo": "nixpkgs", "repo": "nixpkgs",
"type": "github" "type": "github"
} }
}, },
"root": { "root": {
"inputs": { "inputs": {
"dotfiles": "dotfiles",
"dotfiles-local": "dotfiles-local",
"home-manager": "home-manager", "home-manager": "home-manager",
"nixos-hardware": "nixos-hardware", "nixpkgs": "nixpkgs_2"
"nixpkgs": "nixpkgs",
"nixpkgs-forked": "nixpkgs-forked",
"nixpkgs-local": "nixpkgs-local",
"nixpkgs-unstable": "nixpkgs-unstable"
} }
} }
}, },

View File

@@ -1,27 +1,10 @@
{ {
inputs = { inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-25.05"; nixpkgs.url = "github:NixOS/nixpkgs/nixos-24.11";
nixpkgs-unstable.url = "github:nixOS/nixpkgs/master"; home-manager.url = "github:nix-community/home-manager/release-24.11";
nixpkgs-forked.url = "github:transcaffeine/nixpkgs/nexus/3.81.1";
nixpkgs-local = {
url = "git+file:/home/transcaffeine/git/transcaffeine/nixpkgs";
};
home-manager = {
url = "github:nix-community/home-manager/release-25.05";
inputs.nixpkgs.follows = "nixpkgs";
};
nixos-hardware.url = "github:NixOS/nixos-hardware";
dotfiles = {
url = "git+https://git.finally.coffee/transcaffeine/dotfiles.git?ref=main";
flake = false;
};
dotfiles-local = {
url = "git+file:/home/transcaffeine/git/transcaffeine/dotfiles";
flake = false;
};
}; };
outputs = inputs @ { self, nixpkgs, nixpkgs-unstable, ... }: { outputs = inputs @ { self, nixpkgs, ... }: {
nixosConfigurations.affogato = nixpkgs.lib.nixosSystem { nixosConfigurations.affogato = nixpkgs.lib.nixosSystem {
system = "x86_64-linux"; system = "x86_64-linux";
modules = [ modules = [
@@ -29,10 +12,5 @@
]; ];
specialArgs = { inherit inputs; }; specialArgs = { inherit inputs; };
}; };
nixosConfigurations.nixos-unstable = nixpkgs-unstable.lib.nixosSystem {
modules = [
./hosts/nixos-unstable
];
};
}; };
} }

View File

@@ -1,6 +1,5 @@
{ inputs, pkgs, ... }: { { pkgs, ... }: {
imports = [ imports = [
inputs.nixos-hardware.nixosModules.chuwi-minibook-x
./hardware-configuration.nix ./hardware-configuration.nix
./n100.nix ./n100.nix
../../profiles/base ../../profiles/base
@@ -11,18 +10,16 @@
../../users/leona ../../users/leona
]; ];
# add nixpkgs overlay
nixpkgs.overlays = [
(import ../../pkgs)
];
# Use the systemd-boot EFI boot loader. # Use the systemd-boot EFI boot loader.
boot.loader.systemd-boot.enable = true; boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true; boot.loader.efi.canTouchEfiVariables = true;
boot.kernelPackages = pkgs.linuxPackages_latest;
#boot.kernelPackages = pkgs.linuxPackages_6_6;
boot.kernelParams = [ boot.kernelParams = [
"fbcon=rotate:1"
# disable panel self refresh for i915 # disable panel self refresh for i915
#"i915.enable_psr=0" "i915.enable_psr=0"
# set max cstate to 2 (suspend?) # set max cstate to 2 (suspend?)
# "intel_idle.max_cstate=2" # "intel_idle.max_cstate=2"
"nvme.noacpi=1" "nvme.noacpi=1"
@@ -38,26 +35,18 @@
"cloud.finallycoffee.eu" "cloud.finallycoffee.eu"
]; ];
}; };
networking.firewall = {
enable = true;
allowedTCPPorts = [ 8883 ];
allowedUDPPorts = [ 2021 ];
};
# Set your time zone. # Set your time zone.
time.timeZone = "Europe/Berlin"; time.timeZone = "Europe/Berlin";
# Network # Network
networking.networkmanager.enable = true; networking.networkmanager.enable = true;
networking.networkmanager.unmanaged = [ "p2p-dev-wlp0s20f3" ];
systemd.services.ModemManager.enable = true; systemd.services.ModemManager.enable = true;
systemd.services.NetworkManager-wait-online.enable = false;
services.printing.enable = true; services.printing.enable = true;
services.avahi.enable = true; services.avahi.enable = true;
services.tailscale.enable = true; services.tailscale.enable = true;
services.blueman.enable = true; services.blueman.enable = true;
services.power-profiles-daemon.enable = true;
# TODO: delete this later # TODO: delete this later
system.stateVersion = "23.05"; # Did you read the comment? system.stateVersion = "23.05"; # Did you read the comment?

View File

@@ -36,6 +36,7 @@
networking.useDHCP = lib.mkDefault true; networking.useDHCP = lib.mkDefault true;
# networking.interfaces.enp0s20f0u1u3.useDHCP = lib.mkDefault true; # networking.interfaces.enp0s20f0u1u3.useDHCP = lib.mkDefault true;
powerManagement.cpuFreqGovernor = lib.mkDefault "powersave";
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
hardware.bluetooth.enable = true; hardware.bluetooth.enable = true;

View File

@@ -1,57 +0,0 @@
{ config, lib, pkgs, ... }:
{
# Use the systemd-boot EFI boot loader.
boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true;
# Use latest kernel.
boot.kernelPackages = pkgs.linuxPackages_latest;
networking.hostName = "nixos-unstable"; # Define your hostname.
# Set your time zone.
time.timeZone = "Europe/Amsterdam";
# Define a user account. Don't forget to set a password with passwd.
users.mutableUsers = false;
users.users.root.hashedPassword = "$y$j9T$i4Yx7PqpLH9bPaNb4SVLm/$dv2gVHCHiRZv.Y00rbNx4QeIExunnfHp57WEnh8qLF1";
users.users.alice = {
isNormalUser = true;
hashedPassword = "";
extraGroups = [ "wheel" ]; # Enable sudo for the user.
packages = with pkgs; [
tree
];
};
users.users.bob = {
isNormalUser = true;
createHome = false;
group = "builders";
description = "Bob the builder";
openssh.authorizedKeys.keys = [
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIPMChr3iWCl4ahoVsm/UyUQut9p0QIfqTsncsDkgBoRU carbon"
];
};
users.groups.builders = {};
nix.settings.trusted-users = [ "remotebuild" ];
services.nscd = {
enableNsncd = true;
workerThreads = 2;
};
environment.systemPackages = with pkgs; [
];
# Open ports in the firewall.
# networking.firewall.allowedTCPPorts = [ ... ];
# networking.firewall.allowedUDPPorts = [ ... ];
# Or disable the firewall altogether.
# networking.firewall.enable = false;
system.stateVersion = "25.05"; # Did you read the comment?
}

View File

@@ -1,7 +0,0 @@
{ inputs, pkgs, ...}: {
imports = [
./hardware-configuration.nix
./configuration.nix
../../profiles/base
];
}

View File

@@ -1,35 +0,0 @@
{ config, lib, pkgs, modulesPath, ... }:
{
imports =
[ (modulesPath + "/profiles/qemu-guest.nix")
];
boot.initrd.availableKernelModules = [ "ahci" "xhci_pci" "virtio_pci" "sr_mod" "virtio_blk" ];
boot.initrd.kernelModules = [ ];
boot.initrd.systemd.enable = true;
boot.kernelModules = [ "kvm-amd" ];
boot.extraModulePackages = [ ];
fileSystems."/" =
{ device = "/dev/disk/by-uuid/d696e6e0-64f1-4cb5-9ac6-57a3fd4634cc";
fsType = "btrfs";
};
fileSystems."/boot" =
{ device = "/dev/disk/by-uuid/FA31-9186";
fsType = "vfat";
options = [ "fmask=0022" "dmask=0022" ];
};
swapDevices = [ ];
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
# (the default) this is the recommended approach. When using systemd-networkd it's
# still possible to use this option, but it's recommended to use it in conjunction
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
networking.useDHCP = lib.mkDefault true;
# networking.interfaces.enp1s0.useDHCP = lib.mkDefault true;
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
}

View File

@@ -1,5 +0,0 @@
final: prev: {
cpupower = prev.cpupower.overrideAttrs (oldAttrs: {
nativeBuildInputs = oldAttrs.nativeBuildInputs ++ [ prev.which ];
});
}

View File

@@ -1,7 +1,7 @@
{ inputs, pkgs, ...}: { { inputs, pkgs, ...}: {
nixpkgs.config.allowUnfree = true; nixpkgs.config.allowUnfree = true;
nixpkgs.flake.setFlakeRegistry = true;
nix.settings.trusted-users = [ "root" "@wheel" ]; nix.settings.trusted-users = [ "root" "@wheel" ];
nix.registry.nixpkgs.flake = inputs.nixpkgs;
nix.extraOptions = '' nix.extraOptions = ''
experimental-features = nix-command flakes experimental-features = nix-command flakes
''; '';
@@ -20,7 +20,8 @@
}; };
}; };
environment.shellAliases = { environment.shellAliases = {
"lah" = "ls --color=auto -lah"; "nixos-switch" = "sudo nixos-rebuild switch --impure --flake .#";
"nom-affogato" = "nom build .#nixosConfigurations.affogato.config.system.build.toplevel --impure";
}; };
environment.variables = { environment.variables = {
EDITOR = "vim"; EDITOR = "vim";
@@ -37,26 +38,9 @@
bind.dnsutils bind.dnsutils
openssl openssl
curl curl
wget
htop htop
usbutils pinentry
pciutils gnupg
sequoia
]; ];
programs.bash.promptInit = ''
# Provide a nice prompt if the terminal supports it.
if [ "$TERM" != "dumb" ] || [ -n "$INSIDE_EMACS" ]; then
PROMPT_COLOR="38;5;253m"
PATH_PROMPT_COLOR="38;5;199m"
((UID)) && PROMPT_COLOR="1;32m"
if [ -n "$INSIDE_EMACS" ]; then
# Emacs term mode doesn't support xterm title escape sequence (\e]0;)
PS1="[\[\033[$PROMPT_COLOR\]\u\033[0m@\H:\033[1m\033[$PATH_PROMPT_COLOR\w\a\]\[\033[0m\]]\$ "
else
PS1="[\[\033[$PROMPT_COLOR\]\u\033[0m@\H:\033[1m\033[$PATH_PROMPT_COLOR\w\a\]\[\033[0m\]]\$ "
fi
if test "$TERM" = "xterm"; then
PS1="\[\033]2;\h:\u:\w\007\]$PS1"
fi
fi
'';
} }

View File

@@ -6,13 +6,10 @@
pulse.enable = true; pulse.enable = true;
}; };
services.usbmuxd.enable = true;
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
firefox firefox
thunderbird thunderbird
vlc vlc
orca-slicer
usbutils usbutils
pciutils pciutils
pinentry-qt pinentry-qt
@@ -21,9 +18,8 @@
usb-modeswitch-data usb-modeswitch-data
modemmanager modemmanager
xdg-desktop-portal xdg-desktop-portal
kdePackages.xdg-desktop-portal-kde xdg-desktop-portal-kde
grim grim
wireguard-tools wireguard-tools
libimobiledevice
]; ];
} }

View File

@@ -2,5 +2,4 @@
imports = [ inputs.home-manager.nixosModules.home-manager ]; imports = [ inputs.home-manager.nixosModules.home-manager ];
home-manager.useGlobalPkgs = true; home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true; home-manager.useUserPackages = true;
home-manager.extraSpecialArgs = { inherit inputs; };
} }

View File

@@ -2,10 +2,10 @@
# Plasma # Plasma
services.xserver.enable = true; services.xserver.enable = true;
services.displayManager.sddm.enable = true; services.displayManager.sddm.enable = true;
services.desktopManager.plasma6.enable = true; services.xserver.desktopManager.plasma5.enable = true;
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
xdg-desktop-portal xdg-desktop-portal
kdePackages.xdg-desktop-portal-kde xdg-desktop-portal-kde
]; ];
} }

View File

@@ -1,8 +1,4 @@
{ pkgs, ... }: { { pkgs, ... }: {
environment.shellAliases = {
"nixos-switch" = "sudo nixos-rebuild switch --impure --flake .#";
"nom-affogato" = "nom build .#nixosConfigurations.affogato.config.system.build.toplevel --impure";
};
users.users.transcaffeine = { users.users.transcaffeine = {
isNormalUser = true; isNormalUser = true;
extraGroups = [ "wheel" ]; extraGroups = [ "wheel" ];
@@ -10,9 +6,6 @@
"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQCnjrKWYc0bcIsTkdpyC+yAsxSeY9M1WxVDNm3I/R3BYqyvfFuzJMQyh5APhM52yKGMN9UOuJPNPz0C4P6EY3iC3ZqUHFJ6ILrZZxdLZBVxdy2F19Xv6XcZkZxLpRKWapVFECF5z/Bi0rg1uzNRyrHjfZWcHfHIvlqxUYiitvvTbbSMQKqEV8wlnshSzBoYzaKtV1+crwlgz6wCnXq8HIupEeWfUc9kc+zunpYnuHnU5Z3HhzQGBuIiPoVritDjOo7qYREftV4qQ15xFWdezsMZlR15edwZeyNdAEx044QgaGddC8uEMoi5cp4APIqH1cEkIvSU6Y+esdgZ4CHU6M5G5ub5PTT2TaKoUMLLFtpW6QImjVApixFTHWR7tUhqInplWWLqvviS4MoI1ppxgcDUg/bgPdeDBsoRkbESr2uT8ResNi9DlPlN2rlUjlb28awzHm7agFhwfPQZ1afnFSUh0tTFz1WeR7xIGhxR1xXc8sapJhgLnYYWpR2NaJzbYYdk7CWW/3rgEsJem7Kvll6HevnFgRP/uVhEyGZl9hw+tECzvwB/LEmQ/4raDMxqOB9XO9kusJX/jTnQIObrFubfKn3ToXlYbQxZX9+QobANvQ8huILz1bBeH8aKjf9RXu+j4VNyoCKhzU/v0MIdRCsgVWgjuYXMGRo0MFMFyMqQiw== transcaffeine-openpgp:0x353A3E5B" "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQCnjrKWYc0bcIsTkdpyC+yAsxSeY9M1WxVDNm3I/R3BYqyvfFuzJMQyh5APhM52yKGMN9UOuJPNPz0C4P6EY3iC3ZqUHFJ6ILrZZxdLZBVxdy2F19Xv6XcZkZxLpRKWapVFECF5z/Bi0rg1uzNRyrHjfZWcHfHIvlqxUYiitvvTbbSMQKqEV8wlnshSzBoYzaKtV1+crwlgz6wCnXq8HIupEeWfUc9kc+zunpYnuHnU5Z3HhzQGBuIiPoVritDjOo7qYREftV4qQ15xFWdezsMZlR15edwZeyNdAEx044QgaGddC8uEMoi5cp4APIqH1cEkIvSU6Y+esdgZ4CHU6M5G5ub5PTT2TaKoUMLLFtpW6QImjVApixFTHWR7tUhqInplWWLqvviS4MoI1ppxgcDUg/bgPdeDBsoRkbESr2uT8ResNi9DlPlN2rlUjlb28awzHm7agFhwfPQZ1afnFSUh0tTFz1WeR7xIGhxR1xXc8sapJhgLnYYWpR2NaJzbYYdk7CWW/3rgEsJem7Kvll6HevnFgRP/uVhEyGZl9hw+tECzvwB/LEmQ/4raDMxqOB9XO9kusJX/jTnQIObrFubfKn3ToXlYbQxZX9+QobANvQ8huILz1bBeH8aKjf9RXu+j4VNyoCKhzU/v0MIdRCsgVWgjuYXMGRo0MFMFyMqQiw== transcaffeine-openpgp:0x353A3E5B"
]; ];
packages = with pkgs; [ packages = with pkgs; [
pinentry
gnupg
sequoia
pass pass
spotify spotify
gimp-with-plugins gimp-with-plugins
@@ -27,7 +20,6 @@
wget wget
nix-output-monitor nix-output-monitor
nix-diff nix-diff
jetbrains.idea-community
]; ];
}; };
home-manager.users.transcaffeine = import ./home-manager/default.nix; home-manager.users.transcaffeine = import ./home-manager/default.nix;

View File

@@ -1,26 +0,0 @@
{
inputs,
lib,
...
}:
let
genAttrs' = xs: f: lib.listToAttrs(lib.map f xs);
in {
services.darkman = {
enable = true;
settings = {
lat = 49.0800;
lng = 8.23300;
portal = true;
dbusserver = true;
};
};
home.file = genAttrs' [ "local/share/light-mode.d" "local/share/dark-mode.d" ] (
path:
lib.nameValuePair (".${path}") {
source = lib.concatStringsSep "/" [ inputs.dotfiles path ];
target = ".${path}";
}
);
}

View File

@@ -1,11 +1,18 @@
{ lib, pkgs, ... }: { { lib, pkgs, ... }: {
imports = [ imports = [
./darkman.nix
./git.nix ./git.nix
./gnupg.nix ./gnupg.nix
]; ];
home.stateVersion = "24.11"; home.stateVersion = "24.11";
services.darkman = {
enable = true;
settings = {
lat = 49.0800;
lng = 8.23300;
portal = true;
dbusserver = true;
};
};
home.preferXdgDirectories = true; home.preferXdgDirectories = true;
programs.firefox = import ./firefox.nix { inherit lib; };
} }

View File

@@ -1,32 +0,0 @@
{ lib, ... }:
{
profiles.default = {
id = 42;
isDefault = true;
name = "default";
containers = {
personal = {
id = 1;
color = "blue";
icon = "fingerprint";
name = "transcaffeine.me";
};
finallycoffee = {
id = 2;
color = "purple";
icon = "fingerprint";
name = "finally.coffee";
};
};
extensions = [
"uBlock0@raymondhill.net"
"uMatrix@raymondhill.net"
"{c607c8df-14a7-4f28-894f-29e8722976af}"
"default-theme@mozilla.org"
"addon@darkreader.org"
"@testpilot-containers"
"protoots@trans.rights"
];
};
}

View File

@@ -1,7 +1,11 @@
{ inputs, lib, config, ... }: { lib, ... }:
let let
dotfileRepo = inputs.dotfiles; repo = (builtins.fetchGit {
url = "https://git.finally.coffee/transcaffeine/dotfiles.git";
ref = "main";
shallow = true;
});
utils = import ../../../utils { inherit lib; }; utils = import ../../../utils { inherit lib; };
in { in {
programs.gpg = let programs.gpg = let
@@ -12,7 +16,7 @@ in {
}) ( }) (
builtins.filter (value: value != "") ( builtins.filter (value: value != "") (
lib.splitString "\n" ( lib.splitString "\n" (
lib.readFile (dotfileRepo + "/config/gnupg/gpg.conf") lib.readFile (repo.outPath + "/config/gnupg/gpg.conf")
) )
) )
) )
@@ -32,7 +36,7 @@ in {
}) ( }) (
builtins.filter (v: v != "") ( builtins.filter (v: v != "") (
lib.splitString "\n" ( lib.splitString "\n" (
lib.readFile (dotfileRepo.outPath + "/config/gnupg/gpg-agent.conf") lib.readFile (repo.outPath + "/config/gnupg/gpg-agent.conf")
) )
) )
) )
@@ -40,16 +44,13 @@ in {
in { in {
enable = true; enable = true;
enableSshSupport = gpg_agent_config."enable-ssh-support"; enableSshSupport = gpg_agent_config."enable-ssh-support";
defaultCacheTtl = gpg_agent_config."default-cache-ttl" or 300; defaultCacheTtl = gpg_agent_config."default-cache-ttl";
maxCacheTtl = gpg_agent_config."max-cache-ttl" or 900; maxCacheTtl = gpg_agent_config."max-cache-ttl";
defaultCacheTtlSsh = gpg_agent_config."default-cache-ttl-ssh" or 300; defaultCacheTtlSsh = gpg_agent_config."default-cache-ttl-ssh";
maxCacheTtlSsh = gpg_agent_config."max-cache-ttl-ssh" or 900; maxCacheTtlSsh = gpg_agent_config."max-cache-ttl-ssh";
extraConfig = utils.attrsToConfig { extraConfig = utils.attrsToConfig {
"ignore-cache-for-signing" = gpg_agent_config."ignore-cache-for-signing"; "ignore-cache-for-signing" = gpg_agent_config."ignore-cache-for-signing";
"no-allow-external-cache" = gpg_agent_config."no-allow-external-cache"; "no-allow-external-cache" = gpg_agent_config."no-allow-external-cache";
}; };
}; };
home.file."${config.programs.gpg.homedir}/gpg.conf".enable = false;
home.file."${config.programs.gpg.homedir}/gpg-agent.conf".enable = false;
} }