From 4be4a7979f4f0a7589bcdaa0292d659f8e6f41a7 Mon Sep 17 00:00:00 2001 From: Michael Mandl Date: Mon, 16 Dec 2024 14:06:34 +0100 Subject: [PATCH 01/41] feat: add "ubuntu" config for containers --- flake.nix | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/flake.nix b/flake.nix index 8737aba..0fe7fb7 100644 --- a/flake.nix +++ b/flake.nix @@ -59,6 +59,27 @@ vimwikiPath = "~/vimwiki"; }; }; + "ubuntu" = home-manager.lib.homeManagerConfiguration { + inherit pkgs; + + modules = [ + ./shell + ./git + ./gpg + ./neovim + ./horsch.nix + ]; + + extraSpecialArgs = { + user = "ubuntu"; + userName = "Michael Mandl"; + userEmail = "michael.mandl@horsch.com"; + gpgSigningKey = "088ED38F036C7AF2"; + gpgSSHKeys = [ "AEB2BF3FF9CF9529E9A3C6F1A202D21686FF9278" ]; + theme = "dark"; + vimwikiPath = "~/vimwiki"; + }; + }; }; }; } From 8e45e1e0a0cde95666dde7074dff539a6e851cc5 Mon Sep 17 00:00:00 2001 From: Michael Mandl Date: Fri, 20 Dec 2024 14:28:02 +0100 Subject: [PATCH 02/41] feat(nvim): add firenvim --- neovim/default.nix | 14 ++++++++++++-- neovim/firenvim.lua | 38 ++++++++++++++++++++++++++++++++++++++ 2 files changed, 50 insertions(+), 2 deletions(-) create mode 100644 neovim/firenvim.lua diff --git a/neovim/default.nix b/neovim/default.nix index d138ddf..20e9a97 100644 --- a/neovim/default.nix +++ b/neovim/default.nix @@ -91,6 +91,9 @@ # vim-wiki vimwiki + + # firenvim + firenvim ]; withNodeJs = true; @@ -137,8 +140,12 @@ require("local_toggleterm") require("local_notify") require("local_comment") - require("local_lualine") - require("local_tabline") + + if vim.g.started_by_firenvim ~= true then + require("local_lualine") + require("local_tabline") + end + require("local_indent-blankline") require("local_gitsigns") require("local_luasnip") @@ -158,6 +165,8 @@ require("nvim-autopairs").setup({}) require("neogen").setup({ snippet_engine = "luasnip" }) + + require("local_firenvim") ''; }; }; @@ -186,4 +195,5 @@ home.file.".config/nvim/lua/local_dap.lua".source = ./dap.lua; home.file.".config/nvim/lua/local_illuminate.lua".source = ./illuminate.lua; home.file.".config/nvim/lua/local_wilder.lua".source = ./wilder.lua; + home.file.".config/nvim/lua/local_firenvim.lua".source = ./firenvim.lua; } diff --git a/neovim/firenvim.lua b/neovim/firenvim.lua new file mode 100644 index 0000000..260bbd2 --- /dev/null +++ b/neovim/firenvim.lua @@ -0,0 +1,38 @@ +if vim.g.started_by_firenvim ~= true then + return +end + +vim.g.firenvim_config = { + globalSettings = { alt = "all" }, + localSettings = { + [".*"] = { + cmdline = "neovim", + content = "text", + priority = 0, + selector = "textarea", + takeover = "never" + } + } +} + +vim.api.nvim_create_autocmd('UIEnter', { + callback = function() + local client = vim.api.nvim_get_chan_info(vim.v.event.chan).client + if client ~= nil and client.name == "Firenvim" then + vim.o.laststatus = 0 + end + end +}) + +vim.api.nvim_create_autocmd({ 'TextChanged', 'TextChangedI' }, { + callback = function() + if vim.g.timer_started == true then + return + end + vim.g.timer_started = true + vim.fn.timer_start(500, function() + vim.g.timer_started = false + vim.cmd('silent write') + end) + end +}) From f217b7af5ea0ec62b79bc1d05831cdee4c4c522d Mon Sep 17 00:00:00 2001 From: Michael Mandl Date: Fri, 20 Dec 2024 14:28:27 +0100 Subject: [PATCH 03/41] feat(nvim): add copilot --- neovim/default.nix | 4 ++++ neovim/nvim-cmp.lua | 6 ++++++ 2 files changed, 10 insertions(+) diff --git a/neovim/default.nix b/neovim/default.nix index 20e9a97..1a79877 100644 --- a/neovim/default.nix +++ b/neovim/default.nix @@ -85,6 +85,10 @@ lsp_lines-nvim lsp-inlayhints-nvim + # Copilot + copilot-lua + copilot-cmp + # debugging nvim-dap nvim-dap-ui diff --git a/neovim/nvim-cmp.lua b/neovim/nvim-cmp.lua index 098ce04..eddcdef 100644 --- a/neovim/nvim-cmp.lua +++ b/neovim/nvim-cmp.lua @@ -7,6 +7,11 @@ end local cmp = require("cmp") local luasnip = require("luasnip") +local copilot_lua = require("copilot") +local copilot_cmp = require("copilot_cmp") + +copilot_lua.setup({}) +copilot_cmp.setup({}) cmp.setup({ snippet = { @@ -15,6 +20,7 @@ cmp.setup({ end }, sources = cmp.config.sources({ + { name = "copilot" }, { name = "nvim_lsp" }, { name = "nvim_lsp_signature_help" }, { name = "luasnip" }, From cc92efac9a51483c9b6a9736378b4f6dc6f0db77 Mon Sep 17 00:00:00 2001 From: Michael Mandl Date: Tue, 7 Jan 2025 09:32:40 +0100 Subject: [PATCH 04/41] chore: nix flake update --- .nix/flake.lock | 10 +++++----- flake.lock | 12 ++++++------ 2 files changed, 11 insertions(+), 11 deletions(-) diff --git a/.nix/flake.lock b/.nix/flake.lock index 2ac74d2..937ca6f 100644 --- a/.nix/flake.lock +++ b/.nix/flake.lock @@ -2,12 +2,12 @@ "nodes": { "nixpkgs": { "locked": { - "lastModified": 1729665710, - "narHash": "sha256-AlcmCXJZPIlO5dmFzV3V2XF6x/OpNWUV8Y/FMPGd8Z4=", - "rev": "2768c7d042a37de65bb1b5b3268fc987e534c49d", - "revCount": 696158, + "lastModified": 1736012469, + "narHash": "sha256-/qlNWm/IEVVH7GfgAIyP6EsVZI6zjAx1cV5zNyrs+rI=", + "rev": "8f3e1f807051e32d8c95cd12b9b421623850a34d", + "revCount": 733374, "type": "tarball", - "url": "https://api.flakehub.com/f/pinned/NixOS/nixpkgs/0.1.696158%2Brev-2768c7d042a37de65bb1b5b3268fc987e534c49d/0192bd28-d6c0-735c-ab86-8ab9d12f7d62/source.tar.gz" + "url": "https://api.flakehub.com/f/pinned/NixOS/nixpkgs/0.1.733374%2Brev-8f3e1f807051e32d8c95cd12b9b421623850a34d/01943a5d-98a8-75c0-9963-3a93900583fd/source.tar.gz" }, "original": { "type": "tarball", diff --git a/flake.lock b/flake.lock index b3174e7..74bf3c6 100644 --- a/flake.lock +++ b/flake.lock @@ -7,11 +7,11 @@ ] }, "locked": { - "lastModified": 1734093295, - "narHash": "sha256-hSwgGpcZtdDsk1dnzA0xj5cNaHgN9A99hRF/mxMtwS4=", + "lastModified": 1736204492, + "narHash": "sha256-CoBPRgkUex9Iz6qGSzi/BFVUQjndB0PmME2B6eEyeCs=", "owner": "nix-community", "repo": "home-manager", - "rev": "66c5d8b62818ec4c1edb3e941f55ef78df8141a8", + "rev": "20665c6efa83d71020c8730f26706258ba5c6b2a", "type": "github" }, "original": { @@ -22,11 +22,11 @@ }, "nixpkgs": { "locked": { - "lastModified": 1734119587, - "narHash": "sha256-AKU6qqskl0yf2+JdRdD0cfxX4b9x3KKV5RqA6wijmPM=", + "lastModified": 1736012469, + "narHash": "sha256-/qlNWm/IEVVH7GfgAIyP6EsVZI6zjAx1cV5zNyrs+rI=", "owner": "nixos", "repo": "nixpkgs", - "rev": "3566ab7246670a43abd2ffa913cc62dad9cdf7d5", + "rev": "8f3e1f807051e32d8c95cd12b9b421623850a34d", "type": "github" }, "original": { From 2cca40f5e821551eb20aa7d4f220eef90134b88f Mon Sep 17 00:00:00 2001 From: Michael Mandl Date: Tue, 11 Feb 2025 14:15:27 +0100 Subject: [PATCH 05/41] feat(nvim): enable CopilotChat --- neovim/default.nix | 4 ++++ neovim/nvim-cmp.lua | 23 ++++++++++++----------- 2 files changed, 16 insertions(+), 11 deletions(-) diff --git a/neovim/default.nix b/neovim/default.nix index 1a79877..f213b6b 100644 --- a/neovim/default.nix +++ b/neovim/default.nix @@ -84,10 +84,12 @@ none-ls-nvim lsp_lines-nvim lsp-inlayhints-nvim + lspkind-nvim # Copilot copilot-lua copilot-cmp + CopilotChat-nvim # debugging nvim-dap @@ -171,6 +173,8 @@ require("neogen").setup({ snippet_engine = "luasnip" }) require("local_firenvim") + + require("CopilotChat").setup() ''; }; }; diff --git a/neovim/nvim-cmp.lua b/neovim/nvim-cmp.lua index eddcdef..1bc45ac 100644 --- a/neovim/nvim-cmp.lua +++ b/neovim/nvim-cmp.lua @@ -9,6 +9,7 @@ local cmp = require("cmp") local luasnip = require("luasnip") local copilot_lua = require("copilot") local copilot_cmp = require("copilot_cmp") +local lspkind = require("lspkind") copilot_lua.setup({}) copilot_cmp.setup({}) @@ -62,18 +63,18 @@ cmp.setup({ documentation = cmp.config.window.bordered(), }, formatting = { - fields = { "menu", "abbr", "kind" }, - format = function(entry, item) - local menu_icon = { - nvim_lsp = "λ", - luasnip = "⋗", - buffer = "Ω", - path = "🖿", + format = lspkind.cmp_format({ + mode = "symbol", + maxwidth = { + menu = 50, + abbr = 50, + }, + ellipsis_char = "...", + show_labelDetails = true, + symbol_map = { + Copilot = "", } - - item.menu = menu_icon[entry.source.name] - return item - end, + }), }, }) From fd14195ccdbe1684f18e2cdae0a886458102184e Mon Sep 17 00:00:00 2001 From: Michael Mandl Date: Wed, 12 Feb 2025 16:23:34 +0100 Subject: [PATCH 06/41] feat(nvim): use diffview-nvim for diffs and merges --- git/default.nix | 3 ++- neovim/default.nix | 9 +++++++++ 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/git/default.nix b/git/default.nix index 183cddd..4ed8da1 100644 --- a/git/default.nix +++ b/git/default.nix @@ -44,7 +44,8 @@ merge.ff = false; merge.tool = "nvim"; - mergetool.nvim.cmd = "nvim -f -c \"Gdiffsplit!\" \"$MERGED\""; + mergetool.nvim.cmd = "nvim -d $BASE $LOCAL $REMOTE $MERGED -c 'DiffviewOpen'"; + mergetool.nvim.trustExitCode = false; mergetool.prompt = false; pager.difftool = true; diff --git a/neovim/default.nix b/neovim/default.nix index f213b6b..1b7f2a5 100644 --- a/neovim/default.nix +++ b/neovim/default.nix @@ -55,6 +55,7 @@ vim-flog git-blame-nvim nvim-web-devicons # used by diffview-nvim + diffview-nvim # snippets friendly-snippets @@ -175,6 +176,14 @@ require("local_firenvim") require("CopilotChat").setup() + require("diffview").setup({ + view = { + merge_tool = { + layout = "diff4_mixed", + disable_diagnostics = true, + } + } + }) ''; }; }; From 9533f9c169d27f2aa1ea20bc0bd9e0717213256a Mon Sep 17 00:00:00 2001 From: Michael Mandl Date: Thu, 20 Feb 2025 10:09:26 +0100 Subject: [PATCH 07/41] feat(shell): add devenv --- shell/default.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/shell/default.nix b/shell/default.nix index dcddb25..a6023b0 100644 --- a/shell/default.nix +++ b/shell/default.nix @@ -1,6 +1,7 @@ { pkgs, ... }: { home.packages = with pkgs; [ + devenv difftastic dust htop From 45472e0722a8dd845b24b1570458747a31afcda1 Mon Sep 17 00:00:00 2001 From: Michael Mandl Date: Thu, 20 Feb 2025 10:09:57 +0100 Subject: [PATCH 08/41] chore: nix flake update --- flake.lock | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/flake.lock b/flake.lock index 74bf3c6..1355412 100644 --- a/flake.lock +++ b/flake.lock @@ -7,11 +7,11 @@ ] }, "locked": { - "lastModified": 1736204492, - "narHash": "sha256-CoBPRgkUex9Iz6qGSzi/BFVUQjndB0PmME2B6eEyeCs=", + "lastModified": 1739992710, + "narHash": "sha256-9kEscmGnXHjSgcqyJR4TzzHhska4yz1inSQs6HuO9qU=", "owner": "nix-community", "repo": "home-manager", - "rev": "20665c6efa83d71020c8730f26706258ba5c6b2a", + "rev": "1c189f011447810af939a886ba7bee33532bb1f9", "type": "github" }, "original": { @@ -22,11 +22,11 @@ }, "nixpkgs": { "locked": { - "lastModified": 1736012469, - "narHash": "sha256-/qlNWm/IEVVH7GfgAIyP6EsVZI6zjAx1cV5zNyrs+rI=", + "lastModified": 1739866667, + "narHash": "sha256-EO1ygNKZlsAC9avfcwHkKGMsmipUk1Uc0TbrEZpkn64=", "owner": "nixos", "repo": "nixpkgs", - "rev": "8f3e1f807051e32d8c95cd12b9b421623850a34d", + "rev": "73cf49b8ad837ade2de76f87eb53fc85ed5d4680", "type": "github" }, "original": { From d2293714217f1746a54d3facb48e3f00fa4fb54b Mon Sep 17 00:00:00 2001 From: Michael Mandl Date: Wed, 26 Feb 2025 08:08:40 +0100 Subject: [PATCH 09/41] feat(nvim): add pyright language server --- neovim/default.nix | 2 ++ neovim/lspconfig.lua | 1 + 2 files changed, 3 insertions(+) diff --git a/neovim/default.nix b/neovim/default.nix index 1b7f2a5..c06ccb7 100644 --- a/neovim/default.nix +++ b/neovim/default.nix @@ -122,6 +122,8 @@ nixd nixpkgs-fmt bitbake-language-server + pyright + (python3.withPackages (ps: with ps; [ pep8 autopep8 diff --git a/neovim/lspconfig.lua b/neovim/lspconfig.lua index ea85b43..51d1fe1 100644 --- a/neovim/lspconfig.lua +++ b/neovim/lspconfig.lua @@ -113,6 +113,7 @@ local servers = { } } }, + ["pyright"] = {}, ["texlab"] = {}, ["yamlls"] = { yaml = { From a131d538c8a0f200541f791b4d808dbca1e01442 Mon Sep 17 00:00:00 2001 From: Michael Mandl Date: Wed, 26 Feb 2025 08:17:31 +0100 Subject: [PATCH 10/41] feat(git): sort branches by commit date --- git/default.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/git/default.nix b/git/default.nix index 4ed8da1..eb18e57 100644 --- a/git/default.nix +++ b/git/default.nix @@ -28,6 +28,7 @@ extraConfig = { core.editor = "nvim"; core.pager = "less -FX"; + branch.sort = "-committerdate"; diff.ignoreSubmodules = "none"; From c74cd97351950e132180697518f09f6ff886182f Mon Sep 17 00:00:00 2001 From: Michael Mandl Date: Wed, 26 Feb 2025 08:18:22 +0100 Subject: [PATCH 11/41] feat(git): speed-up large repo handling --- git/default.nix | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/git/default.nix b/git/default.nix index eb18e57..205cecb 100644 --- a/git/default.nix +++ b/git/default.nix @@ -26,10 +26,15 @@ }; extraConfig = { - core.editor = "nvim"; - core.pager = "less -FX"; branch.sort = "-committerdate"; + core = { + editor = "nvim"; + fsmonitor = true; + pager = "less -FX"; + untrackedCache = true; + }; + diff.ignoreSubmodules = "none"; fetch.parallel = 8; From 3b959ee112cf07d799fc07dc81753cffc5816e20 Mon Sep 17 00:00:00 2001 From: Michael Mandl Date: Wed, 26 Feb 2025 08:19:13 +0100 Subject: [PATCH 12/41] feat(git): use multi-column output for branches and tags --- git/default.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/git/default.nix b/git/default.nix index 205cecb..6873e08 100644 --- a/git/default.nix +++ b/git/default.nix @@ -36,6 +36,7 @@ }; diff.ignoreSubmodules = "none"; + column.ui = "auto"; fetch.parallel = 8; fetch.writeCommitGraph = true; From 7a23d0607949c3837d7ddf7d0ab8f3193309e202 Mon Sep 17 00:00:00 2001 From: Michael Mandl Date: Wed, 26 Feb 2025 08:19:58 +0100 Subject: [PATCH 13/41] feat(git): show diff in commit-message editor --- git/default.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/git/default.nix b/git/default.nix index 6873e08..deb1f30 100644 --- a/git/default.nix +++ b/git/default.nix @@ -41,6 +41,7 @@ fetch.parallel = 8; fetch.writeCommitGraph = true; fetch.recurseSubmodules = true; + commit.verbose = true; format.pretty = "format:%C(yellow)%h %Cblue%>(12)%ad %C(red)%G? %Cgreen%<(7,trunc)%aN%Cred%d %Creset%s"; From 555d229cf1a4e4679cd3939c96a0093558c6bc4c Mon Sep 17 00:00:00 2001 From: Michael Mandl Date: Wed, 26 Feb 2025 08:20:45 +0100 Subject: [PATCH 14/41] feat(git): use improved diff algos --- git/default.nix | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/git/default.nix b/git/default.nix index deb1f30..80fc6a8 100644 --- a/git/default.nix +++ b/git/default.nix @@ -35,7 +35,6 @@ untrackedCache = true; }; - diff.ignoreSubmodules = "none"; column.ui = "auto"; fetch.parallel = 8; @@ -43,6 +42,14 @@ fetch.recurseSubmodules = true; commit.verbose = true; + diff = { + algorithm = "histogram"; + colorMoved = "plain"; + ignoreSubmodules = "none"; + mnemonicPrefix = true; + renames = true; + }; + format.pretty = "format:%C(yellow)%h %Cblue%>(12)%ad %C(red)%G? %Cgreen%<(7,trunc)%aN%Cred%d %Creset%s"; init.defaultBranch = "main"; From f73891c335b1f259af9952a41a6cf147e36cf0b0 Mon Sep 17 00:00:00 2001 From: Michael Mandl Date: Wed, 26 Feb 2025 08:21:35 +0100 Subject: [PATCH 15/41] feat(git): always fetch all and prune --- git/default.nix | 12 +++++++++--- shell/shell_aliases.nix | 1 - 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/git/default.nix b/git/default.nix index 80fc6a8..1b18073 100644 --- a/git/default.nix +++ b/git/default.nix @@ -37,9 +37,6 @@ column.ui = "auto"; - fetch.parallel = 8; - fetch.writeCommitGraph = true; - fetch.recurseSubmodules = true; commit.verbose = true; diff = { @@ -50,6 +47,15 @@ renames = true; }; + fetch = { + all = true; + parallel = 8; + prune = true; + pruneTags = true; + recurseSubmodules = true; + writeCommitGraph = true; + }; + format.pretty = "format:%C(yellow)%h %Cblue%>(12)%ad %C(red)%G? %Cgreen%<(7,trunc)%aN%Cred%d %Creset%s"; init.defaultBranch = "main"; diff --git a/shell/shell_aliases.nix b/shell/shell_aliases.nix index 2b39161..c3141df 100644 --- a/shell/shell_aliases.nix +++ b/shell/shell_aliases.nix @@ -7,7 +7,6 @@ gs = "git status"; gd = "git diff"; gf = "git fetch"; - gfp = "git fetch --prune"; k = "kubectl"; ww = "nvim -c VimwikiIndex"; }; From bc21047420ef7dfefd9ce255ae078db067e697f3 Mon Sep 17 00:00:00 2001 From: Michael Mandl Date: Wed, 26 Feb 2025 08:23:04 +0100 Subject: [PATCH 16/41] feat(git): show merge conflicts in 3-way style --- git/default.nix | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/git/default.nix b/git/default.nix index 1b18073..b901b27 100644 --- a/git/default.nix +++ b/git/default.nix @@ -62,8 +62,11 @@ log.date = "relative"; - merge.ff = false; - merge.tool = "nvim"; + merge = { + conflictstyle = "zdiff3"; + ff = false; + tool = "nvim"; + }; mergetool.nvim.cmd = "nvim -d $BASE $LOCAL $REMOTE $MERGED -c 'DiffviewOpen'"; mergetool.nvim.trustExitCode = false; From ca135b493574cea09b427ef95f48f06caab0c585 Mon Sep 17 00:00:00 2001 From: Michael Mandl Date: Wed, 26 Feb 2025 08:34:30 +0100 Subject: [PATCH 17/41] feat(git): auto-stage rerere results --- git/default.nix | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/git/default.nix b/git/default.nix index b901b27..ee2398d 100644 --- a/git/default.nix +++ b/git/default.nix @@ -80,7 +80,10 @@ rebase.autostash = true; - rerere.enabled = true; + rerere = { + autoupdate = true; + enabled = true; + }; status.submoduleSummary = true; From 325ddabe3cc6228f3239be0d482434a7a5d0c73a Mon Sep 17 00:00:00 2001 From: Michael Mandl Date: Wed, 26 Feb 2025 08:36:36 +0100 Subject: [PATCH 18/41] feat(git): sort tags by version number --- git/default.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/git/default.nix b/git/default.nix index ee2398d..43027cf 100644 --- a/git/default.nix +++ b/git/default.nix @@ -90,6 +90,8 @@ submodule.fetchJobs = 8; submodule.recurse = true; + tag.sort = "version:refname"; + worktree.guessRemote = true; }; From 5bcecad8b6e2fd6f03f1c7824c22a89a7e2eb5e8 Mon Sep 17 00:00:00 2001 From: Michael Mandl Date: Wed, 26 Feb 2025 08:37:03 +0100 Subject: [PATCH 19/41] feat(git): update dependent branches on rebase --- git/default.nix | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/git/default.nix b/git/default.nix index 43027cf..84a4f13 100644 --- a/git/default.nix +++ b/git/default.nix @@ -78,7 +78,11 @@ push.recurseSubmodules = "on-demand"; - rebase.autostash = true; + rebase = { + qutoSquash = true; + autoStash = true; + updateRefs = true; + }; rerere = { autoupdate = true; From dc2295289246260e07c106be26787179e6640b76 Mon Sep 17 00:00:00 2001 From: Michael Mandl Date: Wed, 26 Feb 2025 08:44:09 +0100 Subject: [PATCH 20/41] feat(git): automatically set-upstream on push --- git/default.nix | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/git/default.nix b/git/default.nix index 84a4f13..82e5ec5 100644 --- a/git/default.nix +++ b/git/default.nix @@ -76,7 +76,10 @@ pull.rebase = true; - push.recurseSubmodules = "on-demand"; + push = { + autoSetupRemote = true; + recurseSubmodules = "on-demand"; + }; rebase = { qutoSquash = true; From 88c22f7b6af0d95aac56c85a1a5f12a862b111da Mon Sep 17 00:00:00 2001 From: Michael Mandl Date: Wed, 26 Feb 2025 08:44:51 +0100 Subject: [PATCH 21/41] feat(git): automatically push tags --- git/default.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/git/default.nix b/git/default.nix index 82e5ec5..ae79ee9 100644 --- a/git/default.nix +++ b/git/default.nix @@ -78,6 +78,7 @@ push = { autoSetupRemote = true; + followTags = true; recurseSubmodules = "on-demand"; }; From 621a555c25da2f668ece12795a33cc9e37e3a369 Mon Sep 17 00:00:00 2001 From: Michael Mandl Date: Wed, 26 Feb 2025 08:45:13 +0100 Subject: [PATCH 22/41] feat(git): push only current branch, and only if upstream matches --- git/default.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/git/default.nix b/git/default.nix index ae79ee9..9491095 100644 --- a/git/default.nix +++ b/git/default.nix @@ -78,6 +78,7 @@ push = { autoSetupRemote = true; + default = "simple"; followTags = true; recurseSubmodules = "on-demand"; }; From d1637e46fcf831ebaf910523d25cc7e28508e704 Mon Sep 17 00:00:00 2001 From: Michael Mandl Date: Tue, 4 Mar 2025 14:31:08 +0100 Subject: [PATCH 23/41] feat(nvim): open copilot chat on leader-cc in floating window --- neovim/default.nix | 12 +++++++++++- neovim/keymaps.lua | 3 +++ 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/neovim/default.nix b/neovim/default.nix index c06ccb7..8422c2a 100644 --- a/neovim/default.nix +++ b/neovim/default.nix @@ -177,7 +177,17 @@ require("local_firenvim") - require("CopilotChat").setup() + require("CopilotChat").setup({ + highlight_headers = false, + separator = "---", + error_header = "> [!ERROR] Error", + window = { + layout = "float", + width = 0.8, + height = 0.8, + } + }) + require("diffview").setup({ view = { merge_tool = { diff --git a/neovim/keymaps.lua b/neovim/keymaps.lua index 2179b03..5ece7b2 100644 --- a/neovim/keymaps.lua +++ b/neovim/keymaps.lua @@ -67,3 +67,6 @@ vim.cmd('nnoremap * v:hlsearch ? ":nohlsearch" : "*"') -- insert-map jj/jk to escape require("better_escape").setup() + +-- open Copilot Chat window +nnoremap("cc", ":lua require('CopilotChat').open()") From a7e66550063cf0a5720adccc02238d856f9708ab Mon Sep 17 00:00:00 2001 From: Michael Mandl Date: Tue, 4 Mar 2025 14:31:59 +0100 Subject: [PATCH 24/41] feat(nvim): add render-markdown plugin --- neovim/default.nix | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/neovim/default.nix b/neovim/default.nix index 8422c2a..126cdf7 100644 --- a/neovim/default.nix +++ b/neovim/default.nix @@ -38,6 +38,7 @@ nvim-treesitter-textobjects nvim-ts-context-commentstring markdown-preview-nvim # use({ "iamcco/markdown-preview.nvim", run = ":call mkdp#util#install()" }) + render-markdown-nvim toggleterm-nvim nvim-notify comment-nvim @@ -185,7 +186,7 @@ layout = "float", width = 0.8, height = 0.8, - } + }, }) require("diffview").setup({ @@ -196,6 +197,10 @@ } } }) + + require("render-markdown").setup({ + file_types = { "markdown", "vimwiki", "copilot-chat" }, + }) ''; }; }; From 5cb4656a71228b891c82a8ff6a91dd22f09be4f6 Mon Sep 17 00:00:00 2001 From: Michael Mandl Date: Tue, 4 Mar 2025 15:18:37 +0100 Subject: [PATCH 25/41] feat(shell): add sshfs --- shell/default.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/shell/default.nix b/shell/default.nix index a6023b0..82caa42 100644 --- a/shell/default.nix +++ b/shell/default.nix @@ -7,6 +7,7 @@ htop jq nh + sshfs unzip xclip ]; From c61a8e3b1eeb95970b99f8c2e9641aae08a5c7ac Mon Sep 17 00:00:00 2001 From: Michael Mandl Date: Tue, 4 Mar 2025 15:26:53 +0100 Subject: [PATCH 26/41] chore: replace manual dev-shell with devenv --- .envrc | 11 ++---- .gitignore | 7 ++++ .nix/flake.lock | 25 ------------ .nix/flake.nix | 32 --------------- devenv.lock | 103 ++++++++++++++++++++++++++++++++++++++++++++++++ devenv.nix | 11 ++++++ devenv.yaml | 15 +++++++ 7 files changed, 140 insertions(+), 64 deletions(-) delete mode 100644 .nix/flake.lock delete mode 100644 .nix/flake.nix create mode 100644 devenv.lock create mode 100644 devenv.nix create mode 100644 devenv.yaml diff --git a/.envrc b/.envrc index a8d08c3..30da14f 100644 --- a/.envrc +++ b/.envrc @@ -1,8 +1,5 @@ -use flake .nix +export DIRENV_WARN_TIMEOUT=20s -if on_git_branch; then - echo - git status --short --branch - echo - git fetch -fi +eval "$(devenv direnvrc)" + +use devenv diff --git a/.gitignore b/.gitignore index 3357b94..785767a 100644 --- a/.gitignore +++ b/.gitignore @@ -2,3 +2,10 @@ # Ignore build outputs from performing a nix-build or `nix build` command result result-* + +# Devenv +.devenv* +devenv.local.nix + +# direnv +.direnv diff --git a/.nix/flake.lock b/.nix/flake.lock deleted file mode 100644 index 937ca6f..0000000 --- a/.nix/flake.lock +++ /dev/null @@ -1,25 +0,0 @@ -{ - "nodes": { - "nixpkgs": { - "locked": { - "lastModified": 1736012469, - "narHash": "sha256-/qlNWm/IEVVH7GfgAIyP6EsVZI6zjAx1cV5zNyrs+rI=", - "rev": "8f3e1f807051e32d8c95cd12b9b421623850a34d", - "revCount": 733374, - "type": "tarball", - "url": "https://api.flakehub.com/f/pinned/NixOS/nixpkgs/0.1.733374%2Brev-8f3e1f807051e32d8c95cd12b9b421623850a34d/01943a5d-98a8-75c0-9963-3a93900583fd/source.tar.gz" - }, - "original": { - "type": "tarball", - "url": "https://flakehub.com/f/NixOS/nixpkgs/0.1.%2A.tar.gz" - } - }, - "root": { - "inputs": { - "nixpkgs": "nixpkgs" - } - } - }, - "root": "root", - "version": 7 -} diff --git a/.nix/flake.nix b/.nix/flake.nix deleted file mode 100644 index 0cbe327..0000000 --- a/.nix/flake.nix +++ /dev/null @@ -1,32 +0,0 @@ -{ - description = "A flake editing flake"; - - inputs.nixpkgs.url = "https://flakehub.com/f/NixOS/nixpkgs/0.1.*.tar.gz"; - - outputs = { nixpkgs, ... }: - let - supportedSystems = [ "x86_64-linux" "aarch64-linux" "x86_64-darwin" "aarch64-darwin" ]; - forEachSupportedSystem = f: nixpkgs.lib.genAttrs supportedSystems (system: f { - pkgs = import nixpkgs { inherit system; }; - }); - in - { - devShells = forEachSupportedSystem ({ pkgs }: { - default = pkgs.mkShell.override - { - # Override stdenv in order to change compiler: - # stdenv = pkgs.clangStdenv; - } - { - packages = with pkgs; [ - pre-commit - commitizen - ]; - - shellHook = '' - pre-commit install --allow-missing-config --hook-type pre-commit --hook-type commit-msg - ''; - }; - }); - }; -} diff --git a/devenv.lock b/devenv.lock new file mode 100644 index 0000000..a9f9ec6 --- /dev/null +++ b/devenv.lock @@ -0,0 +1,103 @@ +{ + "nodes": { + "devenv": { + "locked": { + "dir": "src/modules", + "lastModified": 1741068816, + "owner": "cachix", + "repo": "devenv", + "rev": "9f6da63c162ad86b6fb84edcbd8c447fdc411c3d", + "type": "github" + }, + "original": { + "dir": "src/modules", + "owner": "cachix", + "repo": "devenv", + "type": "github" + } + }, + "flake-compat": { + "flake": false, + "locked": { + "lastModified": 1733328505, + "owner": "edolstra", + "repo": "flake-compat", + "rev": "ff81ac966bb2cae68946d5ed5fc4994f96d0ffec", + "type": "github" + }, + "original": { + "owner": "edolstra", + "repo": "flake-compat", + "type": "github" + } + }, + "git-hooks": { + "inputs": { + "flake-compat": "flake-compat", + "gitignore": "gitignore", + "nixpkgs": [ + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1740915799, + "owner": "cachix", + "repo": "git-hooks.nix", + "rev": "42b1ba089d2034d910566bf6b40830af6b8ec732", + "type": "github" + }, + "original": { + "owner": "cachix", + "repo": "git-hooks.nix", + "type": "github" + } + }, + "gitignore": { + "inputs": { + "nixpkgs": [ + "git-hooks", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1709087332, + "owner": "hercules-ci", + "repo": "gitignore.nix", + "rev": "637db329424fd7e46cf4185293b9cc8c88c95394", + "type": "github" + }, + "original": { + "owner": "hercules-ci", + "repo": "gitignore.nix", + "type": "github" + } + }, + "nixpkgs": { + "locked": { + "lastModified": 1733477122, + "owner": "cachix", + "repo": "devenv-nixpkgs", + "rev": "7bd9e84d0452f6d2e63b6e6da29fe73fac951857", + "type": "github" + }, + "original": { + "owner": "cachix", + "ref": "rolling", + "repo": "devenv-nixpkgs", + "type": "github" + } + }, + "root": { + "inputs": { + "devenv": "devenv", + "git-hooks": "git-hooks", + "nixpkgs": "nixpkgs", + "pre-commit-hooks": [ + "git-hooks" + ] + } + } + }, + "root": "root", + "version": 7 +} diff --git a/devenv.nix b/devenv.nix new file mode 100644 index 0000000..1a6c6f8 --- /dev/null +++ b/devenv.nix @@ -0,0 +1,11 @@ +{ pkgs, ... }: + +{ + packages = with pkgs; [ + git + ]; + + git-hooks.hooks = { + commitizen.enable = true; + }; +} diff --git a/devenv.yaml b/devenv.yaml new file mode 100644 index 0000000..116a2ad --- /dev/null +++ b/devenv.yaml @@ -0,0 +1,15 @@ +# yaml-language-server: $schema=https://devenv.sh/devenv.schema.json +inputs: + nixpkgs: + url: github:cachix/devenv-nixpkgs/rolling + +# If you're using non-OSS software, you can set allowUnfree to true. +# allowUnfree: true + +# If you're willing to use a package that's vulnerable +# permittedInsecurePackages: +# - "openssl-1.1.1w" + +# If you have more than one devenv you can merge them +#imports: +# - ./backend From 95edaae633bf32a24075cf066b48d4e6636211ee Mon Sep 17 00:00:00 2001 From: Michael Mandl Date: Tue, 4 Mar 2025 15:30:23 +0100 Subject: [PATCH 27/41] chore: nix flake update --- flake.lock | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/flake.lock b/flake.lock index 1355412..4bf6bd3 100644 --- a/flake.lock +++ b/flake.lock @@ -7,11 +7,11 @@ ] }, "locked": { - "lastModified": 1739992710, - "narHash": "sha256-9kEscmGnXHjSgcqyJR4TzzHhska4yz1inSQs6HuO9qU=", + "lastModified": 1741056285, + "narHash": "sha256-/JKDMVqq8PIqcGonBVKbKq1SooV3kzGmv+cp3rKAgPA=", "owner": "nix-community", "repo": "home-manager", - "rev": "1c189f011447810af939a886ba7bee33532bb1f9", + "rev": "70fbbf05a5594b0a72124ab211bff1d502c89e3f", "type": "github" }, "original": { @@ -22,11 +22,11 @@ }, "nixpkgs": { "locked": { - "lastModified": 1739866667, - "narHash": "sha256-EO1ygNKZlsAC9avfcwHkKGMsmipUk1Uc0TbrEZpkn64=", + "lastModified": 1741010256, + "narHash": "sha256-WZNlK/KX7Sni0RyqLSqLPbK8k08Kq7H7RijPJbq9KHM=", "owner": "nixos", "repo": "nixpkgs", - "rev": "73cf49b8ad837ade2de76f87eb53fc85ed5d4680", + "rev": "ba487dbc9d04e0634c64e3b1f0d25839a0a68246", "type": "github" }, "original": { From 24acf9c23d3f666e716d0121486d9129d4fee3eb Mon Sep 17 00:00:00 2001 From: Michael Mandl Date: Thu, 6 Mar 2025 19:50:55 +0100 Subject: [PATCH 28/41] feat: add zoom --- private.nix | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/private.nix b/private.nix index 9df6b32..4a9e97c 100644 --- a/private.nix +++ b/private.nix @@ -1,4 +1,4 @@ -{ pkgs, user, ... }: +{ pkgs, user, lib, ... }: { home.username = user; @@ -25,6 +25,11 @@ evince inkscape chromium + zoom-us + ]; + + nixpkgs.config.allowUnfreePredicate = pkg: builtins.elem (lib.getName pkg) [ + "zoom" ]; programs.home-manager.enable = true; From 501be7a1ce8c757f7926d614216937a9872eb1d7 Mon Sep 17 00:00:00 2001 From: Michael Mandl Date: Thu, 6 Mar 2025 19:53:57 +0100 Subject: [PATCH 29/41] fix: use plain element-desktop package --- private.nix | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/private.nix b/private.nix index 4a9e97c..86fffb9 100644 --- a/private.nix +++ b/private.nix @@ -13,7 +13,8 @@ thunderbird keepassxc light - element-desktop-wayland + # element-desktop-wayland + element-desktop darktable kubectl kubectx From c6af7586cee5deb71b84144a375a23267b9960e6 Mon Sep 17 00:00:00 2001 From: Michael Mandl Date: Thu, 6 Mar 2025 19:58:50 +0100 Subject: [PATCH 30/41] chore: nix flake update --- flake.lock | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/flake.lock b/flake.lock index 4bf6bd3..f3372f9 100644 --- a/flake.lock +++ b/flake.lock @@ -7,11 +7,11 @@ ] }, "locked": { - "lastModified": 1741056285, - "narHash": "sha256-/JKDMVqq8PIqcGonBVKbKq1SooV3kzGmv+cp3rKAgPA=", + "lastModified": 1741217763, + "narHash": "sha256-g/TrltIjFHIjtzKY5CJpoPANfHQWDD43G5U1a/v5oVg=", "owner": "nix-community", "repo": "home-manager", - "rev": "70fbbf05a5594b0a72124ab211bff1d502c89e3f", + "rev": "486b066025dccd8af7fbe5dd2cc79e46b88c80da", "type": "github" }, "original": { @@ -22,11 +22,11 @@ }, "nixpkgs": { "locked": { - "lastModified": 1741010256, - "narHash": "sha256-WZNlK/KX7Sni0RyqLSqLPbK8k08Kq7H7RijPJbq9KHM=", + "lastModified": 1741173522, + "narHash": "sha256-k7VSqvv0r1r53nUI/IfPHCppkUAddeXn843YlAC5DR0=", "owner": "nixos", "repo": "nixpkgs", - "rev": "ba487dbc9d04e0634c64e3b1f0d25839a0a68246", + "rev": "d69ab0d71b22fa1ce3dbeff666e6deb4917db049", "type": "github" }, "original": { From 9a5a39d210229b3b2aae1ec0a0bc08970d2f7b93 Mon Sep 17 00:00:00 2001 From: Michael Mandl Date: Mon, 17 Mar 2025 13:59:54 +0100 Subject: [PATCH 31/41] feat(nvim): strip trailing whitespaces on save --- neovim/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/neovim/default.nix b/neovim/default.nix index 126cdf7..c3324d0 100644 --- a/neovim/default.nix +++ b/neovim/default.nix @@ -15,6 +15,9 @@ # auto-close brackets, etc nvim-autopairs + # trailing whirespaces + vim-better-whitespace + # better wildmenu wilder-nvim @@ -201,6 +204,8 @@ require("render-markdown").setup({ file_types = { "markdown", "vimwiki", "copilot-chat" }, }) + + vim.g.strip_whitespace_on_save = 1 ''; }; }; From 84e376943d8d3b302f7195d882092bc45be7efd1 Mon Sep 17 00:00:00 2001 From: Michael Mandl Date: Thu, 20 Mar 2025 07:05:35 +0100 Subject: [PATCH 32/41] feat: silence direnv --- shell/direnv.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/shell/direnv.nix b/shell/direnv.nix index 005868d..bfff889 100644 --- a/shell/direnv.nix +++ b/shell/direnv.nix @@ -4,6 +4,7 @@ programs = { direnv = { enable = true; + silent = true; enableZshIntegration = true; nix-direnv.enable = true; }; From 69aca65778928e465382ab7d0c66ba94945d6ee1 Mon Sep 17 00:00:00 2001 From: Michael Mandl Date: Thu, 20 Mar 2025 07:06:35 +0100 Subject: [PATCH 33/41] chore: devenv update --- devenv.lock | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/devenv.lock b/devenv.lock index a9f9ec6..5bda4b0 100644 --- a/devenv.lock +++ b/devenv.lock @@ -3,10 +3,10 @@ "devenv": { "locked": { "dir": "src/modules", - "lastModified": 1741068816, + "lastModified": 1742320965, "owner": "cachix", "repo": "devenv", - "rev": "9f6da63c162ad86b6fb84edcbd8c447fdc411c3d", + "rev": "6bde92766ddd3ee1630029a03d36baddd51934e2", "type": "github" }, "original": { @@ -40,10 +40,10 @@ ] }, "locked": { - "lastModified": 1740915799, + "lastModified": 1742300892, "owner": "cachix", "repo": "git-hooks.nix", - "rev": "42b1ba089d2034d910566bf6b40830af6b8ec732", + "rev": "ea26a82dda75bee6783baca6894040c8e6599728", "type": "github" }, "original": { From dc6a6c95ffb5a9b2885ad1a11723cc002d413169 Mon Sep 17 00:00:00 2001 From: Michael Mandl Date: Thu, 20 Mar 2025 07:09:16 +0100 Subject: [PATCH 34/41] chore: update --- flake.lock | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/flake.lock b/flake.lock index f3372f9..79d56c8 100644 --- a/flake.lock +++ b/flake.lock @@ -7,11 +7,11 @@ ] }, "locked": { - "lastModified": 1741217763, - "narHash": "sha256-g/TrltIjFHIjtzKY5CJpoPANfHQWDD43G5U1a/v5oVg=", + "lastModified": 1742447757, + "narHash": "sha256-Q0KXcHQmum8L6IzGhhkVhjFMKY6BvYa/rhmLP26Ws8o=", "owner": "nix-community", "repo": "home-manager", - "rev": "486b066025dccd8af7fbe5dd2cc79e46b88c80da", + "rev": "94605dcadefeaff6b35c8931c9f38e4f4dc7ad0a", "type": "github" }, "original": { @@ -22,11 +22,11 @@ }, "nixpkgs": { "locked": { - "lastModified": 1741173522, - "narHash": "sha256-k7VSqvv0r1r53nUI/IfPHCppkUAddeXn843YlAC5DR0=", + "lastModified": 1742288794, + "narHash": "sha256-Txwa5uO+qpQXrNG4eumPSD+hHzzYi/CdaM80M9XRLCo=", "owner": "nixos", "repo": "nixpkgs", - "rev": "d69ab0d71b22fa1ce3dbeff666e6deb4917db049", + "rev": "b6eaf97c6960d97350c584de1b6dcff03c9daf42", "type": "github" }, "original": { From ada1a9448ada0ccb29152474570c6b97d9e94c66 Mon Sep 17 00:00:00 2001 From: Michael Mandl Date: Tue, 25 Mar 2025 08:39:50 +0100 Subject: [PATCH 35/41] feat(gh): add gh-copilot --- horsch/github.nix | 20 +++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) diff --git a/horsch/github.nix b/horsch/github.nix index 2015359..8841ca4 100644 --- a/horsch/github.nix +++ b/horsch/github.nix @@ -1,11 +1,21 @@ -{ ... }: +{ pkgs, lib, ... }: { - programs.gh = { - enable = true; + nixpkgs.config.allowUnfreePredicate = pkg: builtins.elem (lib.getName pkg) [ + "gh-copilot" + ]; - settings = { - git_protocol = "ssh"; + programs = { + gh = { + enable = true; + + settings = { + git_protocol = "ssh"; + }; + + extensions = with pkgs; [ + gh-copilot + ]; }; }; } From 49dda752cb8196f8e2be1e4794ba571eb3bb5629 Mon Sep 17 00:00:00 2001 From: Michael Mandl Date: Tue, 25 Mar 2025 08:40:22 +0100 Subject: [PATCH 36/41] feat(gh): add gh-dash --- horsch/github.nix | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/horsch/github.nix b/horsch/github.nix index 8841ca4..1bb5783 100644 --- a/horsch/github.nix +++ b/horsch/github.nix @@ -15,7 +15,15 @@ extensions = with pkgs; [ gh-copilot + gh-dash ]; }; + + gh-dash = { + enable = true; + + settings = { + }; + }; }; } From 73c1ab8d56e62eac8797b43563a25e54d32797ea Mon Sep 17 00:00:00 2001 From: Michael Mandl Date: Tue, 25 Mar 2025 08:43:47 +0100 Subject: [PATCH 37/41] feat(shell): add gfg shell alias (git fetch graph) --- shell/shell_aliases.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/shell/shell_aliases.nix b/shell/shell_aliases.nix index c3141df..1ab320f 100644 --- a/shell/shell_aliases.nix +++ b/shell/shell_aliases.nix @@ -7,6 +7,7 @@ gs = "git status"; gd = "git diff"; gf = "git fetch"; + gfg = "git fetch --no-recurse-submodules && git graph --all --max-count 32"; k = "kubectl"; ww = "nvim -c VimwikiIndex"; }; From 9056c04c001f76671be57f7554642a3e9c3f01a9 Mon Sep 17 00:00:00 2001 From: Michael Mandl Date: Fri, 4 Apr 2025 13:19:13 +0200 Subject: [PATCH 38/41] feat: add git-worktree-switcher --- git/default.nix | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/git/default.nix b/git/default.nix index 9491095..5248c25 100644 --- a/git/default.nix +++ b/git/default.nix @@ -4,6 +4,10 @@ programs = { less.enable = true; git-credential-oauth.enable = true; + git-worktree-switcher = { + enable = true; + enableZshIntegration = true; + }; git = { enable = true; From 532200060b35f64bd6ee4bbd92eac1406b740669 Mon Sep 17 00:00:00 2001 From: Michael Mandl Date: Fri, 4 Apr 2025 13:20:20 +0200 Subject: [PATCH 39/41] feat: configure gh-dash layout --- horsch/github.nix | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/horsch/github.nix b/horsch/github.nix index 1bb5783..92c4697 100644 --- a/horsch/github.nix +++ b/horsch/github.nix @@ -23,6 +23,12 @@ enable = true; settings = { + defaults = { + preview = { + open = true; + width = 64; + }; + }; }; }; }; From 642709d33dcefb45c1ce27b2c8f65f8a8aafccdd Mon Sep 17 00:00:00 2001 From: Michael Mandl Date: Tue, 8 Apr 2025 22:14:47 +0200 Subject: [PATCH 40/41] feat: add private ssh host config --- private.nix | 1 + private/ssh.nix | 19 +++++++++++++++++++ 2 files changed, 20 insertions(+) create mode 100644 private/ssh.nix diff --git a/private.nix b/private.nix index 86fffb9..4944525 100644 --- a/private.nix +++ b/private.nix @@ -40,5 +40,6 @@ ./kitty.nix ./nextcloud.nix ./sway + ./private/ssh.nix ]; } diff --git a/private/ssh.nix b/private/ssh.nix new file mode 100644 index 0000000..0a603ba --- /dev/null +++ b/private/ssh.nix @@ -0,0 +1,19 @@ +{ ... }: + +{ + programs = { + ssh = { + enable = true; + matchBlocks = { + tc-0x = { + host = "tc-*"; + user = "root"; + }; + ed-0x = { + host = "ed-*"; + user = "root"; + }; + }; + }; + }; +} From bb8ac5db06de09449eb0a6da247f35a337e5284b Mon Sep 17 00:00:00 2001 From: Michael Mandl Date: Fri, 11 Apr 2025 07:52:05 +0200 Subject: [PATCH 41/41] feat(nvim): map leader-F to git file log --- neovim/keymaps.lua | 1 + 1 file changed, 1 insertion(+) diff --git a/neovim/keymaps.lua b/neovim/keymaps.lua index 5ece7b2..310744b 100644 --- a/neovim/keymaps.lua +++ b/neovim/keymaps.lua @@ -20,6 +20,7 @@ nnoremap("g", ":0Git") -- vim-flog nnoremap("G", ":Flog -all -date=relative -open-cmd=new") +nnoremap("F", ":Flog -path=% -date=relative -open-cmd=new") -- telescope local telescope = require("telescope.builtin")