fix: Error installing file '.config/mako/config' outside $HOME

This commit is contained in:
Ryan Yin
2025-07-12 15:17:59 +08:00
parent c8a790f2cf
commit 5e311c6e42
3 changed files with 51 additions and 42 deletions
+47 -41
View File
@@ -20,55 +20,61 @@ let
configPath = "${config.home.homeDirectory}/nix-config/home/base/tui/editors/neovim/nvim"; configPath = "${config.home.homeDirectory}/nix-config/home/base/tui/editors/neovim/nvim";
in { in {
xdg.configFile."nvim".source = config.lib.file.mkOutOfStoreSymlink configPath; xdg.configFile."nvim".source = config.lib.file.mkOutOfStoreSymlink configPath;
# Disable catppuccin to avoid conflict with my non-nix config.
catppuccin.nvim.enable = false;
home.shellAliases = shellAliases; home.shellAliases = shellAliases;
programs.nushell.shellAliases = shellAliases; programs.nushell.shellAliases = shellAliases;
programs = { programs.neovim = {
neovim = { enable = true;
enable = true; package = pkgs-unstable.neovim-unwrapped;
package = pkgs-unstable.neovim-unwrapped;
# defaultEditor = true; # set EDITOR at system-wide level # defaultEditor = true; # set EDITOR at system-wide level
viAlias = true; viAlias = true;
vimAlias = true; vimAlias = true;
# These environment variables are needed to build and run binaries # These environment variables are needed to build and run binaries
# with external package managers like mason.nvim. # with external package managers like mason.nvim.
# #
# LD_LIBRARY_PATH is also needed to run the non-FHS binaries downloaded by mason.nvim. # LD_LIBRARY_PATH is also needed to run the non-FHS binaries downloaded by mason.nvim.
# it will be set by nix-ld, so we do not need to set it here again. # it will be set by nix-ld, so we do not need to set it here again.
extraWrapperArgs = with pkgs; [ extraWrapperArgs = with pkgs; [
# LIBRARY_PATH is used by gcc before compilation to search directories # LIBRARY_PATH is used by gcc before compilation to search directories
# containing static and shared libraries that need to be linked to your program. # containing static and shared libraries that need to be linked to your program.
"--suffix" "--suffix"
"LIBRARY_PATH" "LIBRARY_PATH"
":" ":"
"${lib.makeLibraryPath [stdenv.cc.cc zlib]}" "${lib.makeLibraryPath [
stdenv.cc.cc
zlib
]}"
# PKG_CONFIG_PATH is used by pkg-config before compilation to search directories # PKG_CONFIG_PATH is used by pkg-config before compilation to search directories
# containing .pc files that describe the libraries that need to be linked to your program. # containing .pc files that describe the libraries that need to be linked to your program.
"--suffix" "--suffix"
"PKG_CONFIG_PATH" "PKG_CONFIG_PATH"
":" ":"
"${lib.makeSearchPathOutput "dev" "lib/pkgconfig" [stdenv.cc.cc zlib]}" "${lib.makeSearchPathOutput "dev" "lib/pkgconfig" [
]; stdenv.cc.cc
zlib
]}"
];
# Currently we use lazy.nvim as neovim's package manager, so comment this one. # Currently we use lazy.nvim as neovim's package manager, so comment this one.
# #
# NOTE: These plugins will not be used by astronvim by default! # NOTE: These plugins will not be used by astronvim by default!
# We should install packages that will compile locally or download FHS binaries via Nix! # We should install packages that will compile locally or download FHS binaries via Nix!
# and use lazy.nvim's `dir` option to specify the package directory in nix store. # and use lazy.nvim's `dir` option to specify the package directory in nix store.
# so that these plugins can work on NixOS. # so that these plugins can work on NixOS.
# #
# related project: # related project:
# https://github.com/b-src/lazy-nix-helper.nvim # https://github.com/b-src/lazy-nix-helper.nvim
plugins = with pkgs.vimPlugins; [ plugins = with pkgs.vimPlugins; [
# search all the plugins using https://search.nixos.org/packages # search all the plugins using https://search.nixos.org/packages
telescope-fzf-native-nvim telescope-fzf-native-nvim
nvim-treesitter.withAllGrammars nvim-treesitter.withAllGrammars
]; ];
};
}; };
} }
-1
View File
@@ -7,7 +7,6 @@
force = true; force = true;
}; };
}; };
catppuccin.fcitx5.enable = true;
i18n.inputMethod = { i18n.inputMethod = {
enable = true; enable = true;
@@ -21,18 +21,22 @@ in {
enable = true; enable = true;
systemd.enable = true; systemd.enable = true;
}; };
# Disable catppuccin to avoid conflict with my non-nix config.
catppuccin.waybar.enable = false;
# screen locker # screen locker
programs.hyprlock.enable = true; programs.hyprlock.enable = true;
# Logout Menu # Logout Menu
programs.wlogout.enable = true; programs.wlogout.enable = true;
catppuccin.wlogout.enable = false;
# Hyprland idle daemon # Hyprland idle daemon
services.hypridle.enable = true; services.hypridle.enable = true;
# notification daemon, the same as dunst # notification daemon, the same as dunst
services.mako.enable = true; services.mako.enable = true;
catppuccin.mako.enable = false;
# NOTE: # NOTE:
# We have to enable hyprland/i3's systemd user service in home-manager, # We have to enable hyprland/i3's systemd user service in home-manager,