move keyring activation out of home-manager
This commit is contained in:
@@ -20,6 +20,7 @@ in
|
|||||||
./gfeeds.nix
|
./gfeeds.nix
|
||||||
./git.nix
|
./git.nix
|
||||||
./gpodder.nix
|
./gpodder.nix
|
||||||
|
./keyring.nix
|
||||||
./kitty.nix
|
./kitty.nix
|
||||||
./mpv.nix
|
./mpv.nix
|
||||||
./neovim.nix
|
./neovim.nix
|
||||||
@@ -69,14 +70,6 @@ in
|
|||||||
home.username = "colin";
|
home.username = "colin";
|
||||||
home.homeDirectory = "/home/colin";
|
home.homeDirectory = "/home/colin";
|
||||||
|
|
||||||
home.activation = {
|
|
||||||
initKeyring = {
|
|
||||||
after = ["writeBoundary"];
|
|
||||||
before = [];
|
|
||||||
data = "${../../scripts/init-keyring}";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
# XDG defines things like ~/Desktop, ~/Downloads, etc.
|
# XDG defines things like ~/Desktop, ~/Downloads, etc.
|
||||||
# these clutter the home, so i mostly don't use them.
|
# these clutter the home, so i mostly don't use them.
|
||||||
xdg.userDirs = {
|
xdg.userDirs = {
|
||||||
|
8
modules/home-manager/keyring.nix
Normal file
8
modules/home-manager/keyring.nix
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
{ config, lib, sane-lib, ... }:
|
||||||
|
|
||||||
|
lib.mkIf config.sane.home-manager.enable
|
||||||
|
{
|
||||||
|
sane.fs."/home/colin/.local/share/keyrings/default" = sane-lib.fs.wanted {
|
||||||
|
generated.script.script = builtins.readFile ../../scripts/init-keyring;
|
||||||
|
};
|
||||||
|
}
|
@@ -1,10 +1,8 @@
|
|||||||
{ ... }:
|
{ lib, ... }:
|
||||||
|
|
||||||
rec {
|
rec {
|
||||||
wantedSymlink = symlink: {
|
wanted = lib.mergeAttrs { wantedBeforeBy = [ "multi-user.target" ]; };
|
||||||
inherit symlink;
|
wantedSymlink = symlink: wanted { inherit symlink; };
|
||||||
wantedBeforeBy = [ "multi-user.target" ];
|
|
||||||
};
|
|
||||||
wantedSymlinkTo = target: wantedSymlink { inherit target; };
|
wantedSymlinkTo = target: wantedSymlink { inherit target; };
|
||||||
wantedText = text: wantedSymlink { inherit text; };
|
wantedText = text: wantedSymlink { inherit text; };
|
||||||
}
|
}
|
||||||
|
@@ -2,13 +2,12 @@
|
|||||||
# initializes the default libsecret keyring (used by gnome-keyring) if not already initialized.
|
# initializes the default libsecret keyring (used by gnome-keyring) if not already initialized.
|
||||||
# this initializes it to be plaintext/unencrypted.
|
# this initializes it to be plaintext/unencrypted.
|
||||||
|
|
||||||
if [ -f ~/.local/share/keyrings/default ]
|
ringdir=/home/colin/.local/share/keyrings
|
||||||
|
if test -f "$ringdir/default"
|
||||||
then
|
then
|
||||||
echo 'keyring already initialized: not doing anything'
|
echo 'keyring already initialized: not doing anything'
|
||||||
exit 0
|
else
|
||||||
fi
|
keyring="$ringdir/Default_keyring.keyring"
|
||||||
|
|
||||||
keyring=~/.local/share/keyrings/Default_keyring.keyring
|
|
||||||
|
|
||||||
echo 'initializing default user keyring:' "$keyring.new"
|
echo 'initializing default user keyring:' "$keyring.new"
|
||||||
echo '[keyring]' > "$keyring.new"
|
echo '[keyring]' > "$keyring.new"
|
||||||
@@ -16,4 +15,5 @@ echo 'display-name=Default keyring' >> "$keyring.new"
|
|||||||
echo 'lock-on-idle=false' >> "$keyring.new"
|
echo 'lock-on-idle=false' >> "$keyring.new"
|
||||||
echo 'lock-after=false' >> "$keyring.new"
|
echo 'lock-after=false' >> "$keyring.new"
|
||||||
# closest to an atomic update we can achieve
|
# closest to an atomic update we can achieve
|
||||||
mv "$keyring.new" "$keyring" && echo -n "Default_keyring" > ~/.local/share/keyrings/default
|
mv "$keyring.new" "$keyring" && echo -n "Default_keyring" > "$ringdir/default"
|
||||||
|
fi
|
||||||
|
Reference in New Issue
Block a user