diff --git a/flake.lock b/flake.lock index eb5c949..0eb5183 100644 --- a/flake.lock +++ b/flake.lock @@ -8,11 +8,11 @@ "systems": "systems" }, "locked": { - "lastModified": 1723293904, - "narHash": "sha256-b+uqzj+Wa6xgMS9aNbX4I+sXeb5biPDi39VgvSFqFvU=", + "lastModified": 1736955230, + "narHash": "sha256-uenf8fv2eG5bKM8C/UvFaiJMZ4IpUFaQxk9OH5t/1gA=", "owner": "ryantm", "repo": "agenix", - "rev": "f6291c5935fdc4e0bef208cfc0dcab7e3f7a1c41", + "rev": "e600439ec4c273cf11e06fe4d9d906fb98fa097c", "type": "github" }, "original": { @@ -51,11 +51,11 @@ ] }, "locked": { - "lastModified": 1728330715, - "narHash": "sha256-xRJ2nPOXb//u1jaBnDP56M7v5ldavjbtR6lfGqSvcKg=", + "lastModified": 1735644329, + "narHash": "sha256-tO3HrHriyLvipc4xr+Ewtdlo7wM1OjXNjlWRgmM7peY=", "owner": "numtide", "repo": "devshell", - "rev": "dd6b80932022cea34a019e2bb32f6fa9e494dfef", + "rev": "f7795ede5b02664b57035b3b757876703e2c3eac", "type": "github" }, "original": { @@ -66,12 +66,12 @@ }, "flake-compat": { "locked": { - "lastModified": 1696426674, - "narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=", - "rev": "0f9255e01c2351cc7d116c072cb317785dd33b33", - "revCount": 57, + "lastModified": 1733328505, + "narHash": "sha256-NeCCThCEP3eCl2l/+27kNNK7QrwZB1IJCrXfrbv5oqU=", + "rev": "ff81ac966bb2cae68946d5ed5fc4994f96d0ffec", + "revCount": 69, "type": "tarball", - "url": "https://api.flakehub.com/f/pinned/edolstra/flake-compat/1.0.1/018afb31-abd1-7bff-a5e4-cff7e18efb7a/source.tar.gz" + "url": "https://api.flakehub.com/f/pinned/edolstra/flake-compat/1.1.0/01948eb7-9cba-704f-bbf3-3fa956735b52/source.tar.gz" }, "original": { "type": "tarball", @@ -86,11 +86,11 @@ ] }, "locked": { - "lastModified": 1730504689, - "narHash": "sha256-hgmguH29K2fvs9szpq2r3pz2/8cJd2LPS+b4tfNFCwE=", + "lastModified": 1736143030, + "narHash": "sha256-+hu54pAoLDEZT9pjHlqL9DNzWz0NbUn8NEAHP7PQPzU=", "owner": "hercules-ci", "repo": "flake-parts", - "rev": "506278e768c2a08bec68eb62932193e341f55c90", + "rev": "b905f6fc23a9051a6e1b741e1438dbfc0634c6de", "type": "github" }, "original": { @@ -135,6 +135,24 @@ "type": "github" } }, + "flake-utils_3": { + "inputs": { + "systems": "systems_4" + }, + "locked": { + "lastModified": 1731533236, + "narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "11707dc2f618dd54ca8739b309ec4fc024de578b", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, "git-hooks": { "inputs": { "flake-compat": [ @@ -145,18 +163,14 @@ "nixpkgs": [ "nixvim", "nixpkgs" - ], - "nixpkgs-stable": [ - "nixvim", - "nixpkgs" ] }, "locked": { - "lastModified": 1731363552, - "narHash": "sha256-vFta1uHnD29VUY4HJOO/D6p6rxyObnf+InnSMT4jlMU=", + "lastModified": 1737465171, + "narHash": "sha256-R10v2hoJRLq8jcL4syVFag7nIGE7m13qO48wRIukWNg=", "owner": "cachix", "repo": "git-hooks.nix", - "rev": "cd1af27aa85026ac759d5d3fccf650abe7e1bbf0", + "rev": "9364dc02281ce2d37a1f55b6e51f7c0f65a75f17", "type": "github" }, "original": { @@ -215,11 +229,11 @@ ] }, "locked": { - "lastModified": 1732025103, - "narHash": "sha256-qjEI64RKvDxRyEarY0jTzrZMa8ebezh2DEZmJJrpVdo=", + "lastModified": 1737968762, + "narHash": "sha256-xiPARGKwocaMtv+U/rgi+h2g56CZZEmrcl7ldRaslq8=", "owner": "nix-community", "repo": "home-manager", - "rev": "a46e702093a5c46e192243edbd977d5749e7f294", + "rev": "e1ae908bcc30af792b0bb0a52e53b03d2577255e", "type": "github" }, "original": { @@ -236,11 +250,11 @@ ] }, "locked": { - "lastModified": 1731887066, - "narHash": "sha256-uw7K/RsYioJicV79Nl39yjtfhdfTDU2aRxnBgvFhkZ8=", + "lastModified": 1737968762, + "narHash": "sha256-xiPARGKwocaMtv+U/rgi+h2g56CZZEmrcl7ldRaslq8=", "owner": "nix-community", "repo": "home-manager", - "rev": "f3a2ff69586f3a54b461526e5702b1a2f81e740a", + "rev": "e1ae908bcc30af792b0bb0a52e53b03d2577255e", "type": "github" }, "original": { @@ -285,11 +299,11 @@ ] }, "locked": { - "lastModified": 1731885500, - "narHash": "sha256-ZrztYfSOS33J+ewq5alBOSdnIyZ0/sr1iy7FyBe9zIg=", + "lastModified": 1737926801, + "narHash": "sha256-un7IETRNjUm83jM5Gd/7BO4rCzzkom46O0FDMo5toaI=", "owner": "lnl7", "repo": "nix-darwin", - "rev": "c60b5c924c6188a0b3ca2e139ead3d0f92ae5db5", + "rev": "62ba0a22426721c94e08f0779ed8235d5672869b", "type": "github" }, "original": { @@ -316,11 +330,11 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1731676054, - "narHash": "sha256-OZiZ3m8SCMfh3B6bfGC/Bm4x3qc1m2SVEAlkV6iY7Yg=", + "lastModified": 1737885589, + "narHash": "sha256-Zf0hSrtzaM1DEz8//+Xs51k/wdSajticVrATqDrfQjg=", "owner": "nixos", "repo": "nixpkgs", - "rev": "5e4fbfb6b3de1aa2872b76d49fafc942626e2add", + "rev": "852ff1d9e153d8875a83602e03fdef8a63f0ecf8", "type": "github" }, "original": { @@ -330,6 +344,22 @@ "type": "github" } }, + "nixpkgs_3": { + "locked": { + "lastModified": 1733759999, + "narHash": "sha256-463SNPWmz46iLzJKRzO3Q2b0Aurff3U1n0nYItxq7jU=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "a73246e2eef4c6ed172979932bc80e1404ba2d56", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, "nixvim": { "inputs": { "devshell": "devshell", @@ -345,11 +375,11 @@ "treefmt-nix": "treefmt-nix" }, "locked": { - "lastModified": 1732035679, - "narHash": "sha256-J03v1XnxvsrrvHmzKVBZiwik8678IXfkH1/ZR954ujk=", + "lastModified": 1737995534, + "narHash": "sha256-in2EtlH84FJ5+7l2vBWhUiknmDFAHTuHIPSBiMhICyw=", "owner": "nix-community", "repo": "nixvim", - "rev": "929bb0cd1cffb9917ab14be9cdb3f27efd6f505f", + "rev": "af4483c025ecf02ba36b2013eed0062ccd629809", "type": "github" }, "original": { @@ -368,11 +398,11 @@ ] }, "locked": { - "lastModified": 1731936508, - "narHash": "sha256-z0BSSf78LkxIrrFXZYmCoRRAxAmxMUKpK7CyxQRvkZI=", + "lastModified": 1737924095, + "narHash": "sha256-9RO/IlxiE7bpY7GYsdDMNB533PnDOBo9UvYyXXqlN4c=", "owner": "NuschtOS", "repo": "search", - "rev": "fe07070f811b717a4626d01fab714a87d422a9e1", + "rev": "5efc9c966bb9bdad07a3c28667eac38b758c6f18", "type": "github" }, "original": { @@ -387,7 +417,27 @@ "flake-utils": "flake-utils", "home-manager": "home-manager_2", "nixpkgs": "nixpkgs_2", - "nixvim": "nixvim" + "nixvim": "nixvim", + "superhtml": "superhtml" + } + }, + "superhtml": { + "inputs": { + "flake-utils": "flake-utils_3", + "nixpkgs": "nixpkgs_3" + }, + "locked": { + "lastModified": 1733963442, + "narHash": "sha256-upfDKS5CXtbbzCZICGqCsCwkHtjVa01jMWCj6rjO4zI=", + "ref": "refs/heads/main", + "rev": "c17d0ffe2440a81842055e5d4649723b7829a5da", + "revCount": 141, + "type": "git", + "url": "https://git.yadunut.dev/yadunut/superhtml" + }, + "original": { + "type": "git", + "url": "https://git.yadunut.dev/yadunut/superhtml" } }, "systems": { @@ -435,6 +485,21 @@ "type": "github" } }, + "systems_4": { + "locked": { + "lastModified": 1681028828, + "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", + "owner": "nix-systems", + "repo": "default", + "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", + "type": "github" + }, + "original": { + "owner": "nix-systems", + "repo": "default", + "type": "github" + } + }, "treefmt-nix": { "inputs": { "nixpkgs": [ @@ -443,11 +508,11 @@ ] }, "locked": { - "lastModified": 1731944360, - "narHash": "sha256-sJxPh+V0vUkBhlA58ok/y0o96AtfqiEF0O8qsdolI6o=", + "lastModified": 1737483750, + "narHash": "sha256-5An1wq5U8sNycOBBg3nsDDgpwBmR9liOpDGlhliA6Xo=", "owner": "numtide", "repo": "treefmt-nix", - "rev": "579b9a2fd0020cd9cd81a4ef4eab2dca4d20c94c", + "rev": "f2cc121df15418d028a59c9737d38e3a90fbaf8f", "type": "github" }, "original": { diff --git a/flake.nix b/flake.nix index 31b0d15..115542c 100644 --- a/flake.nix +++ b/flake.nix @@ -14,6 +14,8 @@ inputs.nixpkgs.follows = "nixpkgs"; }; flake-utils.url = "github:numtide/flake-utils"; + # ziggy.url = "github:kristoff-it/ziggy"; + superhtml.url = "git+https://git.yadunut.dev/yadunut/superhtml"; }; outputs = { diff --git a/modules/neovim.nix b/modules/neovim.nix index cb65a41..ab611aa 100644 --- a/modules/neovim.nix +++ b/modules/neovim.nix @@ -1,5 +1,4 @@ { - config, pkgs, inputs, lib, @@ -12,7 +11,7 @@ nixpkgs.pkgs = pkgs; performance.combinePlugins.enable = false; - performance.byteCompileLua.enable = true; + performance.byteCompileLua.enable = false; performance.byteCompileLua.nvimRuntime = true; performance.byteCompileLua.plugins = true; @@ -25,6 +24,11 @@ oil.enable = true; neogit.enable = true; hardtime.enable = true; + + none-ls = { + enable = true; + sources.formatting.ocamlformat.enable = true; + }; lsp = { package = pkgs.vimUtils.buildVimPlugin { name = "lsp"; @@ -45,6 +49,9 @@ ruff.enable = true; # python nil_ls.enable = true; # nix + rust_analyzer.enable = true; + rust_analyzer.installCargo = false; + rust_analyzer.installRustc = false; cssls.enable = true; jsonls.enable = true; @@ -52,6 +59,29 @@ denols.enable = true; denols.autostart = false; gopls.enable = true; + + ziggy = { + enable = false; + package = inputs.ziggy.outputs.packages.aarch64-darwin.ziggy; + }; + ziggy_schema = { + enable = false; + package = inputs.ziggy.outputs.packages.aarch64-darwin.ziggy; + }; + zls= { + package = null; + enable = true; + }; + + superhtml = { + enable = true; + package = inputs.superhtml.outputs.packages.aarch64-darwin.superhtml; + }; + ocamllsp = { + enable = true; + package = null; + }; + }; keymaps.lspBuf = { gd = { @@ -267,6 +297,11 @@ enableTelescope = true; }; web-devicons.enable = true; + + lean = { + enable = true; + }; + copilot-vim.enable = true; }; opts = { number = true; @@ -312,6 +347,11 @@ key = ""; options.desc = "Find Files"; } + { + action.__raw = "function() require('telescope.builtin').lsp_document_symbols({symbols='method'}) end"; + key = "fm"; + options.desc = "Find Methods"; + } { action = "Telescope live_grep"; key = "fg"; @@ -322,6 +362,11 @@ key = "fb"; options.desc = "Find Buffers"; } + { + action = "Telescope buffers"; + key = "fb"; + options.desc = "Find Buffers"; + } { action = "Telescope projects"; key = "pp"; @@ -374,5 +419,125 @@ options.desc = "Toggle Flash"; } ]; + + extraConfigLua = '' + vim.api.nvim_create_autocmd('FileType', { + group = vim.api.nvim_create_augroup('ziggy', {}), + pattern = 'ziggy', + callback = function() + vim.lsp.start { + name = 'Ziggy LSP', + cmd = { 'ziggy', 'lsp' }, + root_dir = vim.loop.cwd(), + flags = { exit_timeout = 1000 }, + } + end, + }) + + vim.api.nvim_create_autocmd('FileType', { + group = vim.api.nvim_create_augroup('ziggy_schema', {}), + pattern = 'ziggy_schema', + callback = function() + vim.lsp.start { + name = 'Ziggy LSP', + cmd = { 'ziggy', 'lsp', '--schema' }, + root_dir = vim.loop.cwd(), + flags = { exit_timeout = 1000 }, + } + end, + }) + + vim.api.nvim_create_autocmd('FileType', { + group = vim.api.nvim_create_augroup('superhtml', {}), + pattern = 'superhtml', + callback = function() + vim.lsp.start { + name = 'SuperHTML LSP', + cmd = { 'superhtml', 'lsp' }, + root_dir = vim.loop.cwd(), + flags = { exit_timeout = 1000 }, + } + end, + }) + local parser_config = require( + 'nvim-treesitter.parsers' + ).get_parser_configs() + parser_config.ziggy = { + install_info = { + url = 'https://github.com/kristoff-it/ziggy', + includes = { 'tree-sitter-ziggy/src' }, + files = { 'tree-sitter-ziggy/src/parser.c' }, + branch = 'main', + generate_requires_npm = false, + requires_generate_from_grammar = false, + }, + filetype = 'ziggy', + } + + parser_config.ziggy_schema = { + install_info = { + url = 'https://github.com/kristoff-it/ziggy', + files = { 'tree-sitter-ziggy-schema/src/parser.c' }, + branch = 'main', + generate_requires_npm = false, + requires_generate_from_grammar = false, + }, + filetype = 'ziggy-schema', + } + + parser_config.supermd = { + install_info = { + url = 'https://github.com/kristoff-it/supermd', + includes = { 'tree-sitter/supermd/src' }, + files = { + 'tree-sitter/supermd/src/parser.c', + 'tree-sitter/supermd/src/scanner.c' + }, + branch = 'main', + generate_requires_npm = false, + requires_generate_from_grammar = false, + }, + filetype = 'supermd', + } + + parser_config.supermd_inline = { + install_info = { + url = 'https://github.com/kristoff-it/supermd', + includes = { 'tree-sitter/supermd-inline/src' }, + files = { + 'tree-sitter/supermd-inline/src/parser.c', + 'tree-sitter/supermd-inline/src/scanner.c' + }, + branch = 'main', + generate_requires_npm = false, + requires_generate_from_grammar = false, + }, + filetype = 'supermd_inline', + } + + parser_config.superhtml = { + install_info = { + url = 'https://github.com/kristoff-it/superhtml', + includes = { 'tree-sitter-superhtml/src' }, + files = { + 'tree-sitter-superhtml/src/parser.c', + 'tree-sitter-superhtml/src/scanner.c' + }, + branch = 'main', + generate_requires_npm = false, + requires_generate_from_grammar = false, + }, + filetype = 'superhtml', + } + + vim.filetype.add { + extension = { + smd = 'supermd', + shtml = 'superhtml', + ziggy = 'ziggy', + ['ziggy-schema'] = 'ziggy_schema', + }, + } + ''; }; } diff --git a/modules/wezterm/default.nix b/modules/wezterm/default.nix index be6010f..f9ebc4b 100644 --- a/modules/wezterm/default.nix +++ b/modules/wezterm/default.nix @@ -8,7 +8,7 @@ pkgs.comic-mono ]; programs.wezterm = { - enable = true; + enable = false; extraConfig = builtins.readFile ./wezterm.lua; }; } diff --git a/modules/zsh.nix b/modules/zsh.nix index 86a829a..ccf5aee 100644 --- a/modules/zsh.nix +++ b/modules/zsh.nix @@ -53,6 +53,8 @@ enableZshIntegration = true; settings = { nodejs.disabled = true; + package.disabled = true; + aws.disabled = true; }; }; } diff --git a/yadunut-mbp/brewfile b/yadunut-mbp/brewfile index e2e64ce..0fe03ca 100644 --- a/yadunut-mbp/brewfile +++ b/yadunut-mbp/brewfile @@ -6,6 +6,7 @@ bartender brave-browser calibre cardhop +chatgpt daisydisk darktable datagrip @@ -16,40 +17,35 @@ font-fantasque-sans-mono font-jetbrains-mono font-jetbrains-mono-nerd-font fork +ghostty google-chrome handbrake inkscape insomnia -intellij-idea keybase kicad -kitty launchcontrol ledger-live +lens +logitech-g-hub loom lulu -microsoft-teams -mongodb-compass -notion obs obsidian -postman protonvpn -pycharm raycast -roam-research skim +slack spotify steam tailscale telegram the-unarchiver -thunderbird -todoist -utm visual-studio-code vlc whatsapp -wireshark +whisky +zerotier-one zoom zotero +zulu@17 diff --git a/yadunut-mbp/home.nix b/yadunut-mbp/home.nix index 633a355..f7d854c 100644 --- a/yadunut-mbp/home.nix +++ b/yadunut-mbp/home.nix @@ -1,6 +1,6 @@ { - config, pkgs, + inputs, ... }: { imports = [ @@ -34,7 +34,7 @@ pkgs.fava pkgs.typst - pkgs.typst-lsp + pkgs.tinymist pkgs.lazygit pkgs.jq @@ -51,6 +51,11 @@ pkgs.poppler pkgs.procps + pkgs.rust-analyzer + + # (inputs.ziggy.outputs.packages.aarch64-darwin.ziggy) + (inputs.superhtml.outputs.packages.aarch64-darwin.superhtml) + # # 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