nix-home/home/common-linux.nix

63 lines
1.7 KiB
Nix
Raw Normal View History

2022-04-20 17:05:02 +00:00
{ pkgs, config, lib, ... }:
2024-06-02 16:03:23 +00:00
with lib;
let
kwallet = { pkgs, lib, ... }: {
home.packages = with pkgs; [ kdePackages.kwallet kdePackages.ksshaskpass ];
home.sessionVariables = {
# https://wiki.archlinux.org/title/KDE_Wallet#Using_the_KDE_Wallet_to_store_ssh_key_passphrases
SSH_ASKPASS = lib.getExe pkgs.kdePackages.ksshaskpass;
SSH_ASKPASS_REQUIRE = "prefer";
};
2024-06-03 21:20:43 +00:00
# Enable this for sway
wayland.windowManager.sway.config.startup = [
{ command = "${pkgs.kdePackages.kwallet-pam}/libexec/pam_kwallet_init"; }
];
# Automatic dbus activation
xdg.dataFile."dbus-1/services/org.freedesktop.secrets.service".text = ''
[D-BUS Service]
Name=org.freedesktop.secrets
Exec=${pkgs.kdePackages.kwallet}/bin/kwalletd6
'';
2024-06-02 16:03:23 +00:00
};
in
{
2022-04-28 16:43:52 +00:00
imports = [
2023-08-31 11:24:39 +00:00
./modules/monitors.nix
2022-04-28 16:43:52 +00:00
./modules/linux/graphical
./modules/X11/xfce4-notifyd.nix
2022-11-08 17:59:53 +00:00
./modules/programs/discord.nix
2024-06-03 21:20:43 +00:00
kwallet
2022-04-28 16:43:52 +00:00
];
2022-10-27 19:05:33 +00:00
config = (mkIf pkgs.stdenv.isLinux {
2022-04-28 18:36:43 +00:00
home.packages = with pkgs; [
psmisc # killall and friends
2022-10-31 09:45:03 +00:00
file # Query file type
2022-09-13 14:04:10 +00:00
pinentry-gnome3 # until pinentry-qt introduces caching
2024-03-08 03:30:05 +00:00
];
2022-04-28 18:36:43 +00:00
2022-04-27 18:20:22 +00:00
# Git "safe-directory"
programs.git.extraConfig.safe.directory = [
"${config.home.homeDirectory}/.config/nixpkgs"
];
2022-10-24 10:59:15 +00:00
2023-03-15 13:02:15 +00:00
systemd.user.startServices = "sd-switch";
2023-11-08 10:50:57 +00:00
# Audio stuff!
services.easyeffects.enable = true;
2022-10-24 10:59:15 +00:00
# Bluetooth controls
2023-11-08 10:50:57 +00:00
# services.mpris-proxy.enable = true;
2022-10-28 09:02:31 +00:00
# Owncloud
2023-06-11 05:20:43 +00:00
services.owncloud-client.enable = true;
services.owncloud-client.package = pkgs.owncloud-client.overrideAttrs (attrs: {
buildInputs = attrs.buildInputs ++ [ pkgs.qt6.qtwayland ];
});
2023-09-09 15:29:15 +00:00
# UDisks automounter
services.udiskie.enable = true;
2022-04-20 17:05:02 +00:00
});
}