XDG!
This commit is contained in:
parent
c84bcff74a
commit
d1a656d27e
2 changed files with 29 additions and 5 deletions
|
@ -42,6 +42,8 @@
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
nix.settings.use-xdg-base-directories = true;
|
||||||
|
|
||||||
services = {
|
services = {
|
||||||
ratbagd.enable = true;
|
ratbagd.enable = true;
|
||||||
displayManager = {
|
displayManager = {
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
{ pkgs, lib, ... }:
|
{ pkgs, lib, config, ... }:
|
||||||
|
|
||||||
{
|
{
|
||||||
# Home Manager needs a bit of information about you and the paths it should
|
# Home Manager needs a bit of information about you and the paths it should
|
||||||
|
@ -28,7 +28,6 @@
|
||||||
hack-font
|
hack-font
|
||||||
htop
|
htop
|
||||||
jellyfin-media-player
|
jellyfin-media-player
|
||||||
nodejs
|
|
||||||
konversation
|
konversation
|
||||||
nixd
|
nixd
|
||||||
yakuake
|
yakuake
|
||||||
|
@ -42,7 +41,6 @@
|
||||||
knossosnet
|
knossosnet
|
||||||
lilypond
|
lilypond
|
||||||
musescore
|
musescore
|
||||||
spotify
|
|
||||||
protontricks
|
protontricks
|
||||||
protonup-qt
|
protonup-qt
|
||||||
(retroarch.override {
|
(retroarch.override {
|
||||||
|
@ -100,7 +98,7 @@
|
||||||
permittedInsecurePackages = [ "electron-25.9.0" ];
|
permittedInsecurePackages = [ "electron-25.9.0" ];
|
||||||
};
|
};
|
||||||
xdg.configFile."autostart/yakuake.desktop".source =
|
xdg.configFile."autostart/yakuake.desktop".source =
|
||||||
"${pkgs.yakuake.outPath}/share/applications/org.kde.yakuake.desktop";
|
"${pkgs.yakuake}/share/applications/org.kde.yakuake.desktop";
|
||||||
|
|
||||||
# Home Manager is pretty good at managing dotfiles. The primary way to manage
|
# Home Manager is pretty good at managing dotfiles. The primary way to manage
|
||||||
# plain files is through 'home.file'.
|
# plain files is through 'home.file'.
|
||||||
|
@ -117,6 +115,9 @@
|
||||||
# '';
|
# '';
|
||||||
};
|
};
|
||||||
|
|
||||||
|
home.preferXdgDirectories = true;
|
||||||
|
xdg.enable = true;
|
||||||
|
|
||||||
# Home Manager can also manage your environment variables through
|
# Home Manager can also manage your environment variables through
|
||||||
# 'home.sessionVariables'. If you don't want to manage your shell through Home
|
# 'home.sessionVariables'. If you don't want to manage your shell through Home
|
||||||
# Manager then you have to manually source 'hm-session-vars.sh' located at
|
# Manager then you have to manually source 'hm-session-vars.sh' located at
|
||||||
|
@ -133,9 +134,25 @@
|
||||||
# /etc/profiles/per-user/cdombroski/etc/profile.d/hm-session-vars.sh
|
# /etc/profiles/per-user/cdombroski/etc/profile.d/hm-session-vars.sh
|
||||||
#
|
#
|
||||||
home.sessionVariables = {
|
home.sessionVariables = {
|
||||||
# EDITOR = "emacs";
|
ANDROID_USER_HOME = "${config.xdg.dataHome}/android";
|
||||||
|
CARGO_HOME = "${config.xdg.dataHome}/cargo";
|
||||||
|
DOTNET_CLI_HOME = "${config.xdg.dataHome}/dotnet";
|
||||||
|
DVDCSS_CACHE = "${config.xdg.dataHome}/dvdcss";
|
||||||
|
GRADLE_USER_HOME = "${config.xdg.dataHome}/gradle";
|
||||||
|
JAVA_OPTIONS = "-Djava.util.prefs.userRoot=${config.xdg.configHome}/java";
|
||||||
|
NODE_REPL_HISTORY = "${config.xdg.stateHome}/node_repl_history";
|
||||||
|
NPM_CONFIG_USERCONFIG = "${config.xdg.configHome}/npm/npmrc";
|
||||||
|
PYTHON_HISTORY = "${config.xdg.stateHome}/python_history";
|
||||||
|
RUSTUP_HOME = "${config.xdg.dataHome}/rustup";
|
||||||
|
XCOMPOSE_CACHE = "${config.xdg.cacheHome}/X11/xcompose";
|
||||||
|
};
|
||||||
|
home.shellAliases = {
|
||||||
|
adb = ''HOME="${config.xdg.dataHome}/android" adb'';
|
||||||
|
mvn = "mvn -gs ${config.xdg.configHome}/maven/settings.xml";
|
||||||
|
wget = "wget --hsts-file=${config.xdg.dataHome}/wget-hsts";
|
||||||
};
|
};
|
||||||
home.sessionPath = [ "$HOME/.local/bin" ];
|
home.sessionPath = [ "$HOME/.local/bin" ];
|
||||||
|
gtk.gtk2.configLocation = "${config.xdg.configHome}/gtk-2.0/gtkrc";
|
||||||
|
|
||||||
# Let Home Manager install and manage itself.
|
# Let Home Manager install and manage itself.
|
||||||
programs = {
|
programs = {
|
||||||
|
@ -143,11 +160,16 @@
|
||||||
bash = {
|
bash = {
|
||||||
enable = true;
|
enable = true;
|
||||||
enableCompletion = true;
|
enableCompletion = true;
|
||||||
|
historyFile = "${config.xdg.stateHome}/bash/history";
|
||||||
};
|
};
|
||||||
direnv = {
|
direnv = {
|
||||||
enable = true;
|
enable = true;
|
||||||
nix-direnv.enable = true;
|
nix-direnv.enable = true;
|
||||||
};
|
};
|
||||||
|
gpg = {
|
||||||
|
enable = true;
|
||||||
|
homedir = "${config.xdg.dataHome}/gnupg";
|
||||||
|
};
|
||||||
vim = {
|
vim = {
|
||||||
enable = true;
|
enable = true;
|
||||||
defaultEditor = true;
|
defaultEditor = true;
|
||||||
|
|
Loading…
Reference in a new issue