From ce2ee960259f36b6d847c52d053ad562eb7d83f5 Mon Sep 17 00:00:00 2001 From: Andrea Ciceri Date: Thu, 19 Jan 2023 18:33:04 +0100 Subject: [PATCH] Shell improvements - `nix-output-monitor` - `zoxide` - `zellij` - `helix` as default editor --- flake.lock | 164 ++++++++++++++++++++++++++++++++++-- flake.nix | 2 + hmModules/shell/default.nix | 12 +++ utils/default.nix | 4 +- 4 files changed, 174 insertions(+), 8 deletions(-) diff --git a/flake.lock b/flake.lock index c7f8f50..dafd917 100644 --- a/flake.lock +++ b/flake.lock @@ -404,6 +404,38 @@ "type": "github" } }, + "flake-compat_4": { + "flake": false, + "locked": { + "lastModified": 1668681692, + "narHash": "sha256-Ht91NGdewz8IQLtWZ9LCeNXMSXHUss+9COoqu6JLmXU=", + "owner": "edolstra", + "repo": "flake-compat", + "rev": "009399224d5e398d03b22badca40a37ac85412a1", + "type": "github" + }, + "original": { + "owner": "edolstra", + "repo": "flake-compat", + "type": "github" + } + }, + "flake-compat_5": { + "flake": false, + "locked": { + "lastModified": 1668681692, + "narHash": "sha256-Ht91NGdewz8IQLtWZ9LCeNXMSXHUss+9COoqu6JLmXU=", + "owner": "edolstra", + "repo": "flake-compat", + "rev": "009399224d5e398d03b22badca40a37ac85412a1", + "type": "github" + }, + "original": { + "owner": "edolstra", + "repo": "flake-compat", + "type": "github" + } + }, "flake-parts": { "inputs": { "nixpkgs-lib": "nixpkgs-lib" @@ -453,6 +485,20 @@ } }, "flake-utils_3": { + "locked": { + "lastModified": 1667395993, + "narHash": "sha256-nuEHfE/LcWyuSWnS8t12N1wc105Qtau+/OdUAjtQ0rA=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "5aed5285a952e0b949eb3ba02c12fa4fcfef535f", + "type": "github" + }, + "original": { + "id": "flake-utils", + "type": "indirect" + } + }, + "flake-utils_4": { "locked": { "lastModified": 1667395993, "narHash": "sha256-nuEHfE/LcWyuSWnS8t12N1wc105Qtau+/OdUAjtQ0rA=", @@ -485,6 +531,28 @@ } }, "gitignore": { + "inputs": { + "nixpkgs": [ + "nom", + "pre-commit-hooks", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1660459072, + "narHash": "sha256-8DFJjXG8zqoONA1vXtgeKXy68KdJL5UaXR8NtVMUbx8=", + "owner": "hercules-ci", + "repo": "gitignore.nix", + "rev": "a20de23b925fd8264fd7fad6454652e142fd7f73", + "type": "github" + }, + "original": { + "owner": "hercules-ci", + "repo": "gitignore.nix", + "type": "github" + } + }, + "gitignore_2": { "inputs": { "nixpkgs": [ "preCommitHooks", @@ -692,6 +760,22 @@ "type": "github" } }, + "nixpkgs-stable_2": { + "locked": { + "lastModified": 1671271954, + "narHash": "sha256-cSvu+bnvN08sOlTBWbBrKaBHQZq8mvk8bgpt0ZJ2Snc=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "d513b448cc2a6da2c8803e3c197c9fc7e67b19e3", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-22.05", + "repo": "nixpkgs", + "type": "github" + } + }, "nixpkgsStable": { "locked": { "lastModified": 1672580127, @@ -771,6 +855,22 @@ } }, "nixpkgs_5": { + "locked": { + "lastModified": 1672262501, + "narHash": "sha256-ZNXqX9lwYo1tOFAqrVtKTLcJ2QMKCr3WuIvpN8emp7I=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "e182da8622a354d44c39b3d7a542dc12cd7baa5f", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_6": { "locked": { "lastModified": 1671271357, "narHash": "sha256-xRJdLbWK4v2SewmSStYrcLa0YGJpleufl44A19XSW8k=", @@ -786,7 +886,7 @@ "type": "github" } }, - "nixpkgs_6": { + "nixpkgs_7": { "locked": { "lastModified": 1656239181, "narHash": "sha256-wW1xRFBn376yGloXZ4QzBE4hjipMawpV18Lshd9QSPw=", @@ -802,6 +902,27 @@ "type": "github" } }, + "nom": { + "inputs": { + "flake-compat": "flake-compat_3", + "flake-utils": "flake-utils_3", + "nixpkgs": "nixpkgs_5", + "pre-commit-hooks": "pre-commit-hooks" + }, + "locked": { + "lastModified": 1672353191, + "narHash": "sha256-e9OwOsD2lfJ8WfcIEcGU6tY9LWB2VGnKDEC4ZKfKJVc=", + "owner": "maralorn", + "repo": "nix-output-monitor", + "rev": "9345278323e8763ca04ede5429c72655c4cef0bf", + "type": "github" + }, + "original": { + "owner": "maralorn", + "repo": "nix-output-monitor", + "type": "github" + } + }, "nose": { "flake": false, "locked": { @@ -913,13 +1034,41 @@ "type": "github" } }, + "pre-commit-hooks": { + "inputs": { + "flake-compat": "flake-compat_4", + "flake-utils": [ + "nom", + "flake-utils" + ], + "gitignore": "gitignore", + "nixpkgs": [ + "nom", + "nixpkgs" + ], + "nixpkgs-stable": "nixpkgs-stable" + }, + "locked": { + "lastModified": 1672050129, + "narHash": "sha256-GBQMcvJUSwAVOpDjVKzB6D5mmHI7Y4nFw+04bnS9QrM=", + "owner": "cachix", + "repo": "pre-commit-hooks.nix", + "rev": "67d98f02443b9928bc77f1267741dcfdd3d7b65c", + "type": "github" + }, + "original": { + "owner": "cachix", + "repo": "pre-commit-hooks.nix", + "type": "github" + } + }, "preCommitHooks": { "inputs": { - "flake-compat": "flake-compat_3", - "flake-utils": "flake-utils_3", - "gitignore": "gitignore", - "nixpkgs": "nixpkgs_5", - "nixpkgs-stable": "nixpkgs-stable" + "flake-compat": "flake-compat_5", + "flake-utils": "flake-utils_4", + "gitignore": "gitignore_2", + "nixpkgs": "nixpkgs_6", + "nixpkgs-stable": "nixpkgs-stable_2" }, "locked": { "lastModified": 1673627351, @@ -955,7 +1104,7 @@ "inputs": { "fan-control": "fan-control", "kernel-src": "kernel-src", - "nixpkgs": "nixpkgs_6" + "nixpkgs": "nixpkgs_7" }, "locked": { "lastModified": 1672309501, @@ -982,6 +1131,7 @@ "nixosHardware": "nixosHardware", "nixpkgsStable": "nixpkgsStable", "nixpkgsUnstable": "nixpkgsUnstable", + "nom": "nom", "nur": "nur", "preCommitHooks": "preCommitHooks", "rock5b": "rock5b" diff --git a/flake.nix b/flake.nix index 7670ca7..94584eb 100644 --- a/flake.nix +++ b/flake.nix @@ -20,6 +20,8 @@ flake = false; }; helix.url = "github:helix-editor/helix"; + + nom.url = "github:maralorn/nix-output-monitor"; }; outputs = {self, ...} @ inputs: let utils = import ./utils inputs; diff --git a/hmModules/shell/default.nix b/hmModules/shell/default.nix index 7289fcf..0023949 100644 --- a/hmModules/shell/default.nix +++ b/hmModules/shell/default.nix @@ -21,6 +21,10 @@ enableAliases = true; }; + programs.zoxide.enable = true; + + programs.zellij.enable = true; + programs.fzf.enable = true; programs.vim.enable = true; @@ -71,11 +75,18 @@ "emnw" = "emacsclient -c -nw"; "pass-clone" = "[ -d .password-store ] && echo 'Password store archive already exists' || git clone git@git.sr.ht:~zrsk/pass ~/.password-store"; "getpass" = "pass show $(find .password-store/ -name \"*.gpg\" | sed \"s/\\.password-store\\/\\(.*\\)\\.gpg$/\\1/g\" | fzf) | wl-copy; ((sleep 60 && wl-copy --clear) &)"; + "n" = "nom"; }; loginExtra = "[[ -z $DISPLAY && $TTY = /dev/tty1 ]] && exec sway"; envExtra = '' [ $TERM = "dumb" ] && unsetopt zle && PS1='$ ' # for Emacs TRAMP mode ''; + initExtra = '' + source ${pkgs.zsh-vi-mode}/share/zsh-vi-mode/zsh-vi-mode.plugin.zsh + ''; + sessionVariables = { + EDITOR = "hx"; + }; }; home.packages = with pkgs; [ @@ -84,5 +95,6 @@ dig.dnsutils zsh-completions nix-zsh-completions + nom ]; } diff --git a/utils/default.nix b/utils/default.nix index 9bea149..4e9b8a8 100644 --- a/utils/default.nix +++ b/utils/default.nix @@ -10,6 +10,7 @@ rock5b, emacsSource, helix, + nom, self, ... }: let @@ -51,7 +52,8 @@ nur.overlay (_: _: { inherit emacsSource; - helix = helix.packages.${pkgs.system}.default; + helix = helix.packages.${pkgs.system}.helix-dev; + nom = nom.packages.${pkgs.system}.default; }) ]; })