From d7ad60297dce7d09e92079620cd915291a426e60 Mon Sep 17 00:00:00 2001 From: matt1432 Date: Tue, 3 Oct 2023 11:08:56 -0400 Subject: [PATCH] refactor(nix): give alias to long symlink func and misc refactor --- nixos/home/dotfiles.nix | 28 ++++++++++++++++------------ nixos/home/hyprland.nix | 8 ++++---- nixos/home/nvim.nix | 6 ++++-- 3 files changed, 24 insertions(+), 18 deletions(-) diff --git a/nixos/home/dotfiles.nix b/nixos/home/dotfiles.nix index a372f780..86221141 100644 --- a/nixos/home/dotfiles.nix +++ b/nixos/home/dotfiles.nix @@ -1,26 +1,30 @@ { config, pkgs, ... }: let configDir = (import ../vars.nix).configDir; + symlink = config.lib.file.mkOutOfStoreSymlink; in { xdg.configFile = { - "swayosd/style.css".source = config.lib.file.mkOutOfStoreSymlink "${configDir}/swayosd/style.css"; + "swayosd/style.css".source = symlink "${configDir}/swayosd/style.css"; "gtklock/config.ini".source = pkgs.writeText "config.ini" '' - [main] - modules=${pkgs.gtklock-powerbar-module}/lib/gtklock/powerbar-module.so;${pkgs.gtklock-playerctl-module}/lib/gtklock/playerctl-module.so + [main] + modules=${builtins.concatStringsSep ";" [ + "${pkgs.gtklock-powerbar-module}/lib/gtklock/powerbar-module.so" + "${pkgs.gtklock-playerctl-module}/lib/gtklock/playerctl-module.so" + ]} ''; - "gtklock/style.css".source = config.lib.file.mkOutOfStoreSymlink "${configDir}/gtklock/style.css"; + "gtklock/style.css".source = symlink "${configDir}/gtklock/style.css"; - "ripgrep".source = config.lib.file.mkOutOfStoreSymlink "${configDir}/ripgrep"; + "ripgrep".source = symlink "${configDir}/ripgrep"; - "discord/settings.json".source = config.lib.file.mkOutOfStoreSymlink "${configDir}/discord/settings.json"; + "discord/settings.json".source = symlink "${configDir}/discord/settings.json"; - "dolphinrc".source = config.lib.file.mkOutOfStoreSymlink "${configDir}/dolphinrc"; - "kdeglobals".source = config.lib.file.mkOutOfStoreSymlink "${configDir}/kdeglobals"; - "kiorc".source = config.lib.file.mkOutOfStoreSymlink "${configDir}/kiorc"; - "mimeapps.list".source = config.lib.file.mkOutOfStoreSymlink "${configDir}/mimeapps.list"; - "neofetch".source = config.lib.file.mkOutOfStoreSymlink "${configDir}/neofetch"; - "swappy".source = config.lib.file.mkOutOfStoreSymlink "${configDir}/swappy"; + "dolphinrc".source = symlink "${configDir}/dolphinrc"; + "kdeglobals".source = symlink "${configDir}/kdeglobals"; + "kiorc".source = symlink "${configDir}/kiorc"; + "mimeapps.list".source = symlink "${configDir}/mimeapps.list"; + "neofetch".source = symlink "${configDir}/neofetch"; + "swappy".source = symlink "${configDir}/swappy"; }; programs = { diff --git a/nixos/home/hyprland.nix b/nixos/home/hyprland.nix index 68712f55..a2d4e810 100644 --- a/nixos/home/hyprland.nix +++ b/nixos/home/hyprland.nix @@ -1,10 +1,10 @@ { pkgs, config, hyprland, hyprgrass, ags, ... }: let configDir = (import ../vars.nix).configDir; + symlink = config.lib.file.mkOutOfStoreSymlink; in { home.packages = [ pkgs.sassc - pkgs.flat-remix-icon-theme pkgs.coloryou ]; @@ -16,7 +16,7 @@ in programs.ags = { enable = true; package = ags.packages.x86_64-linux.default; - configDir = config.lib.file.mkOutOfStoreSymlink "${configDir}/ags"; + configDir = symlink "${configDir}/ags"; }; wayland.windowManager.hyprland = { @@ -40,7 +40,7 @@ in }; xdg.configFile = { - "hypr/main.conf".source = config.lib.file.mkOutOfStoreSymlink "${configDir}/hypr/main.conf"; - "hypr/hyprpaper.conf".source = config.lib.file.mkOutOfStoreSymlink "${configDir}/hypr/hyprpaper.conf"; + "hypr/main.conf".source = symlink "${configDir}/hypr/main.conf"; + "hypr/hyprpaper.conf".source = symlink "${configDir}/hypr/hyprpaper.conf"; }; } diff --git a/nixos/home/nvim.nix b/nixos/home/nvim.nix index a5531ad7..a43ff2c2 100644 --- a/nixos/home/nvim.nix +++ b/nixos/home/nvim.nix @@ -1,5 +1,4 @@ -{ pkgs, lib, ... }: -let +{ pkgs, lib, ... }: let # installs a vim plugin from git with a given tag / branch plugin = owner: repo: rev: hash: pkgs.vimUtils.buildVimPlugin { pname = "${lib.strings.sanitizeDerivationName repo}"; @@ -9,12 +8,14 @@ let }; }; in + { xdg.configFile = { "../.gradle/gradle.properties".source = pkgs.writeText "gradle.properties" '' org.gradle.java.home = ${pkgs.temurin-bin-17} ''; }; + programs.neovim = { enable = true; package = pkgs.neovim-nightly; @@ -67,6 +68,7 @@ in }; }; }; + plugins = with pkgs.vimPlugins; [ vim-which-key