diff --git a/.config/nvim/plugin/autocommands.lua b/.config/nvim/plugin/autocommands.lua index 3de0d831..b0ce7973 100644 --- a/.config/nvim/plugin/autocommands.lua +++ b/.config/nvim/plugin/autocommands.lua @@ -54,6 +54,23 @@ vim.api.nvim_create_autocmd("WinLeave", { callback = function() vim.wo.cursorline = false end, }) +local auto_linenr = vim.api.nvim_create_augroup("AutoLineNr", {}) +vim.api.nvim_create_autocmd({ "VimEnter", "WinEnter", "BufWinEnter" }, { + group = auto_linenr, + callback = function() + -- fugitive, for example, doesn't have numbers + -- if I set relative number I'll get numbers and we don't want that + if vim.wo.number then + vim.wo.relativenumber = true + end + end, +}) + +vim.api.nvim_create_autocmd("WinLeave", { + group = auto_linenr, + callback = function() vim.wo.relativenumber = false end, +}) + vim.api.nvim_create_autocmd({ "VimEnter", "FocusGained", "BufEnter" }, { group = vim.api.nvim_create_augroup("ReloadFileOnChange", {}), command = "checktime", diff --git a/nix/configurations/vanadium/home/dev.nix b/nix/configurations/vanadium/home/dev.nix index e664c20f..5e0ba28e 100644 --- a/nix/configurations/vanadium/home/dev.nix +++ b/nix/configurations/vanadium/home/dev.nix @@ -31,6 +31,9 @@ # bash pkgs.shfmt pkgs.nodePackages.bash-language-server + + # ghc + pkgs.hs-speedscope ]; programs.git = { diff --git a/nix/configurations/vanadium/home/xmonad/xmonad.hs b/nix/configurations/vanadium/home/xmonad/xmonad.hs index f9cbd2bc..0ea59e18 100644 --- a/nix/configurations/vanadium/home/xmonad/xmonad.hs +++ b/nix/configurations/vanadium/home/xmonad/xmonad.hs @@ -80,7 +80,7 @@ myLayout = $ smartSpacingWithEdge 5 $ reflectMsg . reflectHoriz $ SetMasterNTall - $ ResizableTall 1 (1/10) (3/7) [] + $ ResizableTall 1 (1/10) (3/7) [1.2, 1, 1, 1.2] isSioyek :: Query Bool isSioyek = className =? "sioyek" diff --git a/nix/homeModules/common/btop/btop.conf b/nix/homeModules/common/btop/btop.conf index c1973464..626f09c7 100644 --- a/nix/homeModules/common/btop/btop.conf +++ b/nix/homeModules/common/btop/btop.conf @@ -184,7 +184,8 @@ disk_free_priv = False show_io_stat = True #* Toggles io mode for disks, showing big graphs for disk read/write speeds. -io_mode = True +# This doesn't seem to have an effect when using btrfs. I'd rather see the disk usage. +io_mode = False #* Set to True to show combined read/write io graphs in io mode. io_graph_combined = False diff --git a/nix/homeModules/common/fish/aliasesAbbrs.nix b/nix/homeModules/common/fish/aliasesAbbrs.nix index 330a0159..863510f6 100644 --- a/nix/homeModules/common/fish/aliasesAbbrs.nix +++ b/nix/homeModules/common/fish/aliasesAbbrs.nix @@ -21,10 +21,6 @@ # idiot protection chmod = "chmod --preserve-root"; chown = "chown --preserve-root"; - - # I can't make alias with a space, i.e. `nom shell` - nix-shell = "nix-shell --command fish"; - nom-shell = "nom-shell --command fish"; }) ]; }; diff --git a/nix/homeModules/common/fish/functions/nix-build.fish b/nix/homeModules/common/fish/functions/nix-build.fish index 8b074641..16bc1efc 100644 --- a/nix/homeModules/common/fish/functions/nix-build.fish +++ b/nix/homeModules/common/fish/functions/nix-build.fish @@ -1,7 +1,7 @@ function nix-build if type -q nom-build - nom-build $argv + command nom-build $argv else - nix-build $argv + command nix-build $argv end end diff --git a/nix/homeModules/common/fish/functions/nix-shell.fish b/nix/homeModules/common/fish/functions/nix-shell.fish index b108e9ed..d7ea11bf 100644 --- a/nix/homeModules/common/fish/functions/nix-shell.fish +++ b/nix/homeModules/common/fish/functions/nix-shell.fish @@ -1,7 +1,7 @@ function nix-shell if type -q nom-shell - nom-shell $argv + command nom-shell $argv else - nix-shell $argv + command nix-shell $argv end end diff --git a/nix/packages/by-name/hs-speedscope/package.nix b/nix/packages/by-name/hs-speedscope/package.nix new file mode 100644 index 00000000..8206cc9b --- /dev/null +++ b/nix/packages/by-name/hs-speedscope/package.nix @@ -0,0 +1,28 @@ +{ + haskellPackages, + haskell, + fetchFromGitHub, + fetchpatch, +}: +let + inherit (haskell.lib.compose) appendPatches justStaticExecutables; + + drv = haskellPackages.callCabal2nix "hs-speedscope" (fetchFromGitHub { + owner = "mpickering"; + repo = "hs-speedscope"; + rev = "c34ac00d35f5db52e14dc5b9ba5b228aa9953398"; + hash = "sha256-sVTIPIUophj/sgNp1ox1eWHa19zhsZJGjvQt5hUfYk4="; + }) { }; +in +appendPatches [ + (fetchpatch { + name = "fix-event-dropping-logic"; + url = "https://github.com/mpickering/hs-speedscope/commit/1420a9615dc0cafc3051c87cad8a8c463550fcda.patch"; + hash = "sha256-kOaMhXHAxSQRhvxhF0uDSD1Us+ywNJcqnrKDfNaU5hA="; + }) + (fetchpatch { + name = "passing-rts-options"; + url = "https://github.com/mpickering/hs-speedscope/commit/12ad16062325817242f0b7ebefabb40b9af4aa3e.patch"; + hash = "sha256-AcL8t+D2xccKGVCCASXgP8t1K4EfHQmDpn2ZmR2Ppxk="; + }) +] (justStaticExecutables drv)