From ea57c3c97fbfe1623897fa0b479d26853cc954fe Mon Sep 17 00:00:00 2001 From: Uttarayan Mondal Date: Thu, 15 Feb 2024 07:17:21 +0530 Subject: [PATCH] [feat] Remove useless overlay stuff --- config/nix/common/home.nix | 370 ++++++++++++++++++------------------- config/nix/flake.lock | 17 +- config/nix/flake.nix | 150 ++++++++------- config/nix/nix.conf | 1 - 4 files changed, 265 insertions(+), 273 deletions(-) diff --git a/config/nix/common/home.nix b/config/nix/common/home.nix index 458d53b6..a6f200ad 100644 --- a/config/nix/common/home.nix +++ b/config/nix/common/home.nix @@ -1,194 +1,192 @@ -{ config -, pkgs -, lib -, device -, overlays -, ... - -}: -let +{ + config, + pkgs, + lib, + device, + # overlays, + ... +}: let start-tmux = (import ../scripts/start-tmux.nix) pkgs; in -# https://mipmip.github.io/home-manager-option-search/ -{ - nixpkgs.overlays = [ - (self: super: { - neovim-nightly = overlays.neovim-nightly; - }) - ]; - imports = [ - # Include the results of the hardware scan. - ./tmux.nix - ./wezterm.nix - ../linux/hyprland.nix - ]; - - programs = { - fish = { - enable = true; - shellAbbrs = { - vim = "nvim"; - vi = "nvim"; - nv = "nvim"; - g = "git"; - cd = "z"; - ls = "exa"; - t = "${start-tmux}"; - }; - interactiveShellInit = '' - set fish_greeting - ${pkgs.macchina.outPath}/bin/macchina - ''; - }; - - nushell = { - enable = true; - shellAliases = { - "cd" = "z"; - }; - package = pkgs.nushellFull; - configFile.text = '' - $env.config = { - show_banner: false, - } - ''; - }; - zoxide = { - enable = true; - enableFishIntegration = true; - enableNushellIntegration = true; - }; - starship = { - enable = true; - enableFishIntegration = true; - enableNushellIntegration = true; - }; - eza = { - enable = true; - enableAliases = true; - git = true; - icons = true; - }; - carapace = { - enable = true; - enableFishIntegration = true; - enableNushellIntegration = true; - }; - fzf = { - enable = true; - package = pkgs.fzf; - enableFishIntegration = true; - tmux.enableShellIntegration = true; - }; - keychain = { - enable = true; - # keys = [ "id_ed25519" ]; - enableFishIntegration = true; - enableNushellIntegration = true; - }; - yazi = { - enable = true; - enableFishIntegration = true; - enableNushellIntegration = true; - }; - foot = { - enable = pkgs.stdenv.isLinux; - server.enable = true; - settings = { - main = { - shell = "${pkgs.fish.outPath}/bin/fish"; - font = "Hasklug Nerd Font Mono:size=13"; - initial-window-size-pixels = "1440x800"; - }; - colors = { - foreground = "f8f8f2"; - background = 000000; - alpha = 0.8; - - "136" = "af8700"; - - regular0 = "21222c"; - regular1 = "ff5555"; - regular2 = "50fa7b"; - regular3 = "f1fa8c"; - regular4 = "bd93f9"; - regular5 = "ff79c6"; - regular6 = "8be9fd"; - regular7 = "f8f8f2"; - - bright0 = "6272a4"; - bright1 = "ff6e6e"; - bright2 = "69ff94"; - bright3 = "ffffa5"; - bright4 = "d6acff"; - bright5 = "ff92df"; - bright6 = "a4ffff"; - bright7 = "ffffff"; - }; - }; - }; - - # Let Home Manager install and manage itself. - home-manager = { - enable = true; - }; - }; - - home = { - # Home Manager needs a bit of information about you and the paths it should - # manage. - username = device.user; - homeDirectory = - if device.system == "x86-64-linux" then - lib.mkForce "/home/${device.user}" - else - lib.mkForce "/Users/${device.user}"; - - - stateVersion = "23.11"; - - packages = [ - pkgs.macchina - pkgs.ripgrep - pkgs.alejandra - # pkgs.neovim-nightly - pkgs.cachix - # # Adds the 'hello' command to your environment. It prints a friendly - # # "Hello, world!" when run. - # pkgs.hello - - # # It is sometimes useful to fine-tune packages, for example, by applying - # # overrides. You can do that directly here, just don't forget the - # # parentheses. Maybe you want to install Nerd Fonts with a limited number of - # # fonts? - # (pkgs.nerdfonts.override { fonts = [ "FantasqueSansMono" ]; }) - - # # You can also create simple shell scripts directly inside your - # # configuration. For example, this adds a command 'my-hello' to your - # # environment: - # (pkgs.writeShellScriptBin "my-hello" '' - # echo "Hello, ${config.home.username}!" - # '') + # https://mipmip.github.io/home-manager-option-search/ + { + #nixpkgs.overlays = [ + # (self: super: { + # neovim-nightly = overlays.neovim-nightly; + # }) + #]; + imports = [ + # Include the results of the hardware scan. + ./tmux.nix + ./wezterm.nix + ../linux/hyprland.nix ]; - file = { - ".config/tmux/sessions".source = ../../tmux/sessions; - ".config/nvim".source = ../../nvim; + programs = { + fish = { + enable = true; + shellAbbrs = { + vim = "nvim"; + vi = "nvim"; + nv = "nvim"; + g = "git"; + cd = "z"; + ls = "exa"; + t = "${start-tmux}"; + }; + interactiveShellInit = '' + set fish_greeting + ${pkgs.macchina.outPath}/bin/macchina + ''; + }; - # # You can also set the file content immediately. - # ".gradle/gradle.properties".text = '' - # org.gradle.console=verbose - # org.gradle.daemon.idletimeout=3600000 - # ''; + nushell = { + enable = true; + shellAliases = { + "cd" = "z"; + }; + package = pkgs.nushellFull; + configFile.text = '' + $env.config = { + show_banner: false, + } + ''; + }; + zoxide = { + enable = true; + enableFishIntegration = true; + enableNushellIntegration = true; + }; + starship = { + enable = true; + enableFishIntegration = true; + enableNushellIntegration = true; + }; + eza = { + enable = true; + enableAliases = true; + git = true; + icons = true; + }; + carapace = { + enable = true; + enableFishIntegration = true; + enableNushellIntegration = true; + }; + fzf = { + enable = true; + package = pkgs.fzf; + enableFishIntegration = true; + tmux.enableShellIntegration = true; + }; + keychain = { + enable = true; + # keys = [ "id_ed25519" ]; + enableFishIntegration = true; + enableNushellIntegration = true; + }; + yazi = { + enable = true; + enableFishIntegration = true; + enableNushellIntegration = true; + }; + foot = { + enable = pkgs.stdenv.isLinux; + server.enable = true; + settings = { + main = { + shell = "${pkgs.fish.outPath}/bin/fish"; + font = "Hasklug Nerd Font Mono:size=13"; + initial-window-size-pixels = "1440x800"; + }; + colors = { + foreground = "f8f8f2"; + background = 000000; + alpha = 0.8; + + "136" = "af8700"; + + regular0 = "21222c"; + regular1 = "ff5555"; + regular2 = "50fa7b"; + regular3 = "f1fa8c"; + regular4 = "bd93f9"; + regular5 = "ff79c6"; + regular6 = "8be9fd"; + regular7 = "f8f8f2"; + + bright0 = "6272a4"; + bright1 = "ff6e6e"; + bright2 = "69ff94"; + bright3 = "ffffa5"; + bright4 = "d6acff"; + bright5 = "ff92df"; + bright6 = "a4ffff"; + bright7 = "ffffff"; + }; + }; + }; + + # Let Home Manager install and manage itself. + home-manager = { + enable = true; + }; }; - sessionVariables = { - EDITOR = "nvim"; - SHELL = "${pkgs.fish.outPath}/bin/fish"; + home = { + # Home Manager needs a bit of information about you and the paths it should + # manage. + username = device.user; + homeDirectory = + if device.system == "x86-64-linux" + then lib.mkForce "/home/${device.user}" + else lib.mkForce "/Users/${device.user}"; + + stateVersion = "23.11"; + + packages = with pkgs; [ + macchina + ripgrep + fd + alejandra + neovim-nightly + cachix + # # Adds the 'hello' command to your environment. It prints a friendly + # # "Hello, world!" when run. + # pkgs.hello + + # # It is sometimes useful to fine-tune packages, for example, by applying + # # overrides. You can do that directly here, just don't forget the + # # parentheses. Maybe you want to install Nerd Fonts with a limited number of + # # fonts? + # (pkgs.nerdfonts.override { fonts = [ "FantasqueSansMono" ]; }) + + # # You can also create simple shell scripts directly inside your + # # configuration. For example, this adds a command 'my-hello' to your + # # environment: + # (pkgs.writeShellScriptBin "my-hello" '' + # echo "Hello, ${config.home.username}!" + # '') + ]; + + file = { + ".config/tmux/sessions".source = ../../tmux/sessions; + ".config/nvim".source = ../../nvim; + + # # You can also set the file content immediately. + # ".gradle/gradle.properties".text = '' + # org.gradle.console=verbose + # org.gradle.daemon.idletimeout=3600000 + # ''; + }; + + sessionVariables = { + EDITOR = "nvim"; + SHELL = "${pkgs.fish.outPath}/bin/fish"; + }; + sessionPath = [ + "${config.home.homeDirectory}/.local/bin" + "${config.home.homeDirectory}/.nix-profile/bin" + ]; }; - sessionPath = [ - "${config.home.homeDirectory}/.local/bin" - "${config.home.homeDirectory}/.nix-profile/bin" - ]; - }; -} + } diff --git a/config/nix/flake.lock b/config/nix/flake.lock index 316bd5fd..b5cfe46e 100644 --- a/config/nix/flake.lock +++ b/config/nix/flake.lock @@ -71,9 +71,8 @@ "type": "github" }, "original": { - "owner": "numtide", - "repo": "flake-utils", - "type": "github" + "id": "flake-utils", + "type": "indirect" } }, "flake-utils_2": { @@ -146,11 +145,11 @@ }, "locked": { "dir": "contrib", - "lastModified": 1707868264, - "narHash": "sha256-Ewc5fxKb09XQeO6LeKmko0x7MxKmVCGUYwKq7w8sZD0=", + "lastModified": 1707941489, + "narHash": "sha256-S5KG+iYMFVHIEfeXSWYei2jcHs6kOfhM1pUoVQ9G/Lw=", "owner": "neovim", "repo": "neovim", - "rev": "a376d979bda103fa9998d05c3cc4ba56d3c3cece", + "rev": "d09957e0a06f350443c750d9838b5f1016c0cccc", "type": "github" }, "original": { @@ -169,11 +168,11 @@ "nixpkgs": "nixpkgs" }, "locked": { - "lastModified": 1707935913, - "narHash": "sha256-uAkWeyJUNyZS9/u9huCoAJXyTiHw1F+5a91IDujPppk=", + "lastModified": 1707955468, + "narHash": "sha256-ZVka2bcB1AQTiVWqp2yH9Rnsd4Tvpcf5NXXzJIp7QNE=", "owner": "nix-community", "repo": "neovim-nightly-overlay", - "rev": "b57bf64254630de4920177333f06b341653b1f28", + "rev": "0b6b4afc71e14d7f17f4e4a367ce271b9d398432", "type": "github" }, "original": { diff --git a/config/nix/flake.nix b/config/nix/flake.nix index f7e84ab1..257c4c21 100644 --- a/config/nix/flake.nix +++ b/config/nix/flake.nix @@ -13,92 +13,88 @@ inputs.nixpkgs.follows = "nixpkgs"; }; neovim-nightly-overlay.url = "github:nix-community/neovim-nightly-overlay"; - flake-utils.url = "github:numtide/flake-utils"; + # flake-utils.url = "github:numtide/flake-utils"; }; - outputs = - { nixpkgs - , home-manager - , nix-darwin - , flake-utils - , ... - } @ inputs: - let - devices = [ - { - name = "mirai"; - system = "x86_64-linux"; - user = "fs0c131y"; - } - { - name = "genzai"; - system = "x86_64-linux"; - user = "fs0c131y"; - } - { - name = "Uttarayans-MacBook-Pro"; - system = "aarch64-darwin"; - user = "fs0c131y"; - } - { - name = "SteamDeck"; - system = "x86_64-linux"; - user = "deck"; - } - ]; - linux = builtins.filter (x: x.system == "x86_64-linux") devices; - darwin = builtins.filter (x: x.system == "aarch64-darwin") devices; - in - { - homeConfigurations = builtins.listToAttrs (builtins.map + outputs = { + nixpkgs, + home-manager, + nix-darwin, + flake-utils, + ... + } @ inputs: let + devices = [ + { + name = "mirai"; + system = "x86_64-linux"; + user = "fs0c131y"; + } + { + name = "genzai"; + system = "x86_64-linux"; + user = "fs0c131y"; + } + { + name = "Uttarayans-MacBook-Pro"; + system = "aarch64-darwin"; + user = "fs0c131y"; + } + { + name = "SteamDeck"; + system = "x86_64-linux"; + user = "deck"; + } + ]; + linux = builtins.filter (x: x.system == "x86_64-linux") devices; + darwin = builtins.filter (x: x.system == "aarch64-darwin") devices; + in { + homeConfigurations = builtins.listToAttrs (builtins.map + (device: { + name = device.user; + value = let + pkgs = nixpkgs.legacyPackages.${device.system}; + overlays = [inputs.neovim-nightly-overlay.overlay]; + in + home-manager.lib.homeManagerConfiguration { + inherit pkgs; + modules = [ + ./common/home.nix + { + nixpkgs.overlays = overlays; + } + ]; + }; + }) + linux); + + darwinConfigurations = + builtins.listToAttrs + (builtins.map (device: { - name = device.user; - value = - let - pkgs = nixpkgs.legacyPackages.${device.system}; - overlays = [ inputs.neovim-nightly-overlay.overlay ]; - in - home-manager.lib.homeManagerConfiguration { + name = device.name; + value = let + pkgs = nixpkgs.legacyPackages.${device.system}; + overlays = [inputs.neovim-nightly-overlay.overlay]; + in + nix-darwin.lib.darwinSystem { inherit pkgs; modules = [ - ./home.nix + ./darwin + home-manager.darwinModules.home-manager { nixpkgs.overlays = overlays; + home-manager = { + useGlobalPkgs = true; + useUserPackages = true; + extraSpecialArgs = { + inherit device; + }; + users.${device.user}.imports = [./common/home.nix]; + }; } ]; }; }) - linux); - - darwinConfigurations = - builtins.listToAttrs - (builtins.map - (device: { - name = device.name; - value = - let - pkgs = nixpkgs.legacyPackages.${device.system}; - overlays = [ inputs.neovim-nightly-overlay.overlay ]; - in - nix-darwin.lib.darwinSystem { - inherit pkgs; - modules = [ - ./darwin - home-manager.darwinModules.home-manager - { - home-manager = { - useGlobalPkgs = true; - useUserPackages = true; - extraSpecialArgs = { - inherit device; - inherit overlays; - }; - users.${device.user}.imports = [ ./common/home.nix ]; - }; - } - ]; - }; - }) - darwin); - }; + darwin); + }; } diff --git a/config/nix/nix.conf b/config/nix/nix.conf index 55a2da16..63529267 100644 --- a/config/nix/nix.conf +++ b/config/nix/nix.conf @@ -6,4 +6,3 @@ experimental-features = nix-command flakes repl-flake bash-prompt-prefix = (nix:$name)\040 max-jobs = auto extra-nix-path = nixpkgs=flake:nixpkgs -upgrade-nix-store-path-url = https://install.determinate.systems/nix-upgrade/stable/universal