Compare commits

...

2 commits

Author SHA1 Message Date
a73e54b6ac
set up nitrokey 2024-02-02 11:28:26 +01:00
ad32bdf223
switch to ssh commit signing 2024-02-02 11:27:57 +01:00
3 changed files with 63 additions and 53 deletions

View file

@ -29,6 +29,11 @@ with builtins; {
environment = { environment = {
systemPackages = with pkgs; [ systemPackages = with pkgs; [
pynitrokey
nitrokey-app2
veracrypt
htmlq htmlq
wget wget
@ -104,14 +109,19 @@ with builtins; {
"ebdbb2" "ebdbb2"
]; ];
programs = { # nitrokey
dconf.enable = true; services.udev.packages = [pkgs.nitrokey-udev-rules];
services.pcscd.enable = true;
mtr.enable = true; programs = {
ssh.startAgent = false;
gnupg.agent = { gnupg.agent = {
enable = true; enable = true;
enableSSHSupport = true; enableSSHSupport = true;
}; };
dconf.enable = true;
mtr.enable = true;
}; };
time.timeZone = "Europe/Berlin"; time.timeZone = "Europe/Berlin";

View file

@ -53,7 +53,6 @@
evremap.enable = true; evremap.enable = true;
}; };
terminal.enable = true; terminal.enable = true;
git.signingKey = "08F0 E7C9 6941 84C2 D514 7F31 5621 290C A02C 7BD8";
}; };
fileSystems = { fileSystems = {

View file

@ -1,66 +1,67 @@
{ {
config, config,
lib, lib,
pkgs,
... ...
}: let }: {
cfg = config.jade.git; home-manager.users.jade = {pkgs, ...}: {
in { programs.git = {
options.jade.git.signingKey = lib.mkOption {type = lib.types.str;}; enable = true;
config = { userName = "Schrottkatze";
home-manager.users.jade = {pkgs, ...}: { userEmail = "git@schrottkatze.de";
programs.git = { aliases = {
enable = true; a = "add";
userName = "Schrottkatze"; c = "commit";
userEmail = "git@schrottkatze.de"; ca = "commit --all";
aliases = { p = "push";
a = "add"; pl = "pull";
c = "commit"; s = "status";
ca = "commit --all"; };
p = "push"; signing = {
pl = "pull"; key = "${pkgs.writeText "red_nk3.pub" "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOaE8TFsIazpn4OnHvHcRpOFr9FfvMaWOiEjmHsmnAoE cardno:000F_70CD7D05"}";
s = "status"; signByDefault = true;
}; };
signing = { extraConfig = {
key = cfg.signingKey; gpg = {
signByDefault = true; format = "ssh";
}; };
}; };
programs.gitui = { };
enable = true; programs.gitui = {
keyConfig = '' enable = true;
( keyConfig = ''
open_help: Some(( code: F(1), modifiers: ( bits: 0,),)), (
open_help: Some(( code: F(1), modifiers: ( bits: 0,),)),
move_left: Some(( code: Char('h'), modifiers: ( bits: 0,),)), move_left: Some(( code: Char('h'), modifiers: ( bits: 0,),)),
move_right: Some(( code: Char('l'), modifiers: ( bits: 0,),)), move_right: Some(( code: Char('l'), modifiers: ( bits: 0,),)),
move_up: Some(( code: Char('k'), modifiers: ( bits: 0,),)), move_up: Some(( code: Char('k'), modifiers: ( bits: 0,),)),
move_down: Some(( code: Char('j'), modifiers: ( bits: 0,),)), move_down: Some(( code: Char('j'), modifiers: ( bits: 0,),)),
popup_up: Some(( code: Char('p'), modifiers: ( bits: 2,),)), popup_up: Some(( code: Char('p'), modifiers: ( bits: 2,),)),
popup_down: Some(( code: Char('n'), modifiers: ( bits: 2,),)), popup_down: Some(( code: Char('n'), modifiers: ( bits: 2,),)),
page_up: Some(( code: Char('b'), modifiers: ( bits: 2,),)), page_up: Some(( code: Char('b'), modifiers: ( bits: 2,),)),
page_down: Some(( code: Char('f'), modifiers: ( bits: 2,),)), page_down: Some(( code: Char('f'), modifiers: ( bits: 2,),)),
home: Some(( code: Char('g'), modifiers: ( bits: 0,),)), home: Some(( code: Char('g'), modifiers: ( bits: 0,),)),
end: Some(( code: Char('G'), modifiers: ( bits: 1,),)), end: Some(( code: Char('G'), modifiers: ( bits: 1,),)),
shift_up: Some(( code: Char('K'), modifiers: ( bits: 1,),)), shift_up: Some(( code: Char('K'), modifiers: ( bits: 1,),)),
shift_down: Some(( code: Char('J'), modifiers: ( bits: 1,),)), shift_down: Some(( code: Char('J'), modifiers: ( bits: 1,),)),
edit_file: Some(( code: Char('I'), modifiers: ( bits: 1,),)), edit_file: Some(( code: Char('I'), modifiers: ( bits: 1,),)),
status_reset_item: Some(( code: Char('U'), modifiers: ( bits: 1,),)), status_reset_item: Some(( code: Char('U'), modifiers: ( bits: 1,),)),
diff_reset_lines: Some(( code: Char('u'), modifiers: ( bits: 0,),)), diff_reset_lines: Some(( code: Char('u'), modifiers: ( bits: 0,),)),
diff_stage_lines: Some(( code: Char('s'), modifiers: ( bits: 0,),)), diff_stage_lines: Some(( code: Char('s'), modifiers: ( bits: 0,),)),
stashing_save: Some(( code: Char('w'), modifiers: ( bits: 0,),)), stashing_save: Some(( code: Char('w'), modifiers: ( bits: 0,),)),
stashing_toggle_index: Some(( code: Char('m'), modifiers: ( bits: 0,),)), stashing_toggle_index: Some(( code: Char('m'), modifiers: ( bits: 0,),)),
stash_open: Some(( code: Char('l'), modifiers: ( bits: 0,),)), stash_open: Some(( code: Char('l'), modifiers: ( bits: 0,),)),
abort_merge: Some(( code: Char('M'), modifiers: ( bits: 1,),)), abort_merge: Some(( code: Char('M'), modifiers: ( bits: 1,),)),
) )
''; '';
};
}; };
}; };
} }