added: swaync
This commit is contained in:
285
flake.lock
generated
285
flake.lock
generated
@@ -51,6 +51,27 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"devshell": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": [
|
||||||
|
"nixvim",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1741473158,
|
||||||
|
"narHash": "sha256-kWNaq6wQUbUMlPgw8Y+9/9wP0F8SHkjy24/mN3UAppg=",
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "devshell",
|
||||||
|
"rev": "7c9e793ebe66bcba8292989a68c0419b737a22a0",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "devshell",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"flake-compat": {
|
"flake-compat": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
@@ -81,6 +102,20 @@
|
|||||||
"url": "https://flakehub.com/f/edolstra/flake-compat/1.tar.gz"
|
"url": "https://flakehub.com/f/edolstra/flake-compat/1.tar.gz"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"flake-compat_3": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1733328505,
|
||||||
|
"narHash": "sha256-NeCCThCEP3eCl2l/+27kNNK7QrwZB1IJCrXfrbv5oqU=",
|
||||||
|
"rev": "ff81ac966bb2cae68946d5ed5fc4994f96d0ffec",
|
||||||
|
"revCount": 69,
|
||||||
|
"type": "tarball",
|
||||||
|
"url": "https://api.flakehub.com/f/pinned/edolstra/flake-compat/1.1.0/01948eb7-9cba-704f-bbf3-3fa956735b52/source.tar.gz"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"type": "tarball",
|
||||||
|
"url": "https://flakehub.com/f/edolstra/flake-compat/1.tar.gz"
|
||||||
|
}
|
||||||
|
},
|
||||||
"flake-parts": {
|
"flake-parts": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs-lib": "nixpkgs-lib"
|
"nixpkgs-lib": "nixpkgs-lib"
|
||||||
@@ -99,6 +134,71 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"flake-parts_2": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs-lib": [
|
||||||
|
"nixvim",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1756770412,
|
||||||
|
"narHash": "sha256-+uWLQZccFHwqpGqr2Yt5VsW/PbeJVTn9Dk6SHWhNRPw=",
|
||||||
|
"owner": "hercules-ci",
|
||||||
|
"repo": "flake-parts",
|
||||||
|
"rev": "4524271976b625a4a605beefd893f270620fd751",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "hercules-ci",
|
||||||
|
"repo": "flake-parts",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flake-utils": {
|
||||||
|
"inputs": {
|
||||||
|
"systems": "systems_2"
|
||||||
|
},
|
||||||
|
"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": [
|
||||||
|
"nixvim",
|
||||||
|
"flake-compat"
|
||||||
|
],
|
||||||
|
"gitignore": "gitignore_2",
|
||||||
|
"nixpkgs": [
|
||||||
|
"nixvim",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1757239681,
|
||||||
|
"narHash": "sha256-E9spYi9lxm2f1zWQLQ7xQt8Xs2nWgr1T4QM7ZjLFphM=",
|
||||||
|
"owner": "cachix",
|
||||||
|
"repo": "git-hooks.nix",
|
||||||
|
"rev": "ab82ab08d6bf74085bd328de2a8722c12d97bd9d",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "cachix",
|
||||||
|
"repo": "git-hooks.nix",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"gitignore": {
|
"gitignore": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
@@ -121,6 +221,28 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"gitignore_2": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": [
|
||||||
|
"nixvim",
|
||||||
|
"git-hooks",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1709087332,
|
||||||
|
"narHash": "sha256-HG2cCnktfHsKV0s4XW83gU3F57gaTljL9KNSuG6bnQs=",
|
||||||
|
"owner": "hercules-ci",
|
||||||
|
"repo": "gitignore.nix",
|
||||||
|
"rev": "637db329424fd7e46cf4185293b9cc8c88c95394",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "hercules-ci",
|
||||||
|
"repo": "gitignore.nix",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"home-manager": {
|
"home-manager": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
@@ -142,6 +264,28 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"home-manager_2": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": [
|
||||||
|
"nixvim",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1747688870,
|
||||||
|
"narHash": "sha256-ypL9WAZfmJr5V70jEVzqGjjQzF0uCkz+AFQF7n9NmNc=",
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "home-manager",
|
||||||
|
"rev": "d5f1f641b289553927b3801580598d200a501863",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-community",
|
||||||
|
"ref": "release-24.11",
|
||||||
|
"repo": "home-manager",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"hyprcursor": {
|
"hyprcursor": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"hyprlang": [
|
"hyprlang": [
|
||||||
@@ -431,6 +575,56 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"ixx": {
|
||||||
|
"inputs": {
|
||||||
|
"flake-utils": [
|
||||||
|
"nixvim",
|
||||||
|
"nuschtosSearch",
|
||||||
|
"flake-utils"
|
||||||
|
],
|
||||||
|
"nixpkgs": [
|
||||||
|
"nixvim",
|
||||||
|
"nuschtosSearch",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1754860581,
|
||||||
|
"narHash": "sha256-EM0IE63OHxXCOpDHXaTyHIOk2cNvMCGPqLt/IdtVxgk=",
|
||||||
|
"owner": "NuschtOS",
|
||||||
|
"repo": "ixx",
|
||||||
|
"rev": "babfe85a876162c4acc9ab6fb4483df88fa1f281",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "NuschtOS",
|
||||||
|
"ref": "v0.1.1",
|
||||||
|
"repo": "ixx",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nix-darwin": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": [
|
||||||
|
"nixvim",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1743127615,
|
||||||
|
"narHash": "sha256-+sMGqywrSr50BGMLMeY789mSrzjkoxZiu61eWjYS/8o=",
|
||||||
|
"owner": "lnl7",
|
||||||
|
"repo": "nix-darwin",
|
||||||
|
"rev": "fc843893cecc1838a59713ee3e50e9e7edc6207c",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "lnl7",
|
||||||
|
"ref": "nix-darwin-24.11",
|
||||||
|
"repo": "nix-darwin",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"nixcord": {
|
"nixcord": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-compat": "flake-compat_2",
|
"flake-compat": "flake-compat_2",
|
||||||
@@ -546,6 +740,58 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"nixvim": {
|
||||||
|
"inputs": {
|
||||||
|
"devshell": "devshell",
|
||||||
|
"flake-compat": "flake-compat_3",
|
||||||
|
"flake-parts": "flake-parts_2",
|
||||||
|
"git-hooks": "git-hooks",
|
||||||
|
"home-manager": "home-manager_2",
|
||||||
|
"nix-darwin": "nix-darwin",
|
||||||
|
"nixpkgs": [
|
||||||
|
"nixpkgs"
|
||||||
|
],
|
||||||
|
"nuschtosSearch": "nuschtosSearch",
|
||||||
|
"treefmt-nix": "treefmt-nix"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1751725553,
|
||||||
|
"narHash": "sha256-bkvw8jXTdRBWRfO50IaxNuUIamnLllxfEFqUG/g3uwo=",
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "nixvim",
|
||||||
|
"rev": "81d65e0cfb00df0269195b59f156c719cc045ab8",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-community",
|
||||||
|
"ref": "nixos-24.11",
|
||||||
|
"repo": "nixvim",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nuschtosSearch": {
|
||||||
|
"inputs": {
|
||||||
|
"flake-utils": "flake-utils",
|
||||||
|
"ixx": "ixx",
|
||||||
|
"nixpkgs": [
|
||||||
|
"nixvim",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1756738487,
|
||||||
|
"narHash": "sha256-8QX7Ab5CcICp7zktL47VQVS+QeaU4YDNAjzty7l7TQE=",
|
||||||
|
"owner": "NuschtOS",
|
||||||
|
"repo": "search",
|
||||||
|
"rev": "5feeaeefb571e6ca2700888b944f436f7c05149b",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "NuschtOS",
|
||||||
|
"repo": "search",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"pre-commit-hooks": {
|
"pre-commit-hooks": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-compat": "flake-compat",
|
"flake-compat": "flake-compat",
|
||||||
@@ -577,6 +823,7 @@
|
|||||||
"hyprland-plugins": "hyprland-plugins",
|
"hyprland-plugins": "hyprland-plugins",
|
||||||
"nixcord": "nixcord",
|
"nixcord": "nixcord",
|
||||||
"nixpkgs": "nixpkgs_4",
|
"nixpkgs": "nixpkgs_4",
|
||||||
|
"nixvim": "nixvim",
|
||||||
"spicetify-nix": "spicetify-nix",
|
"spicetify-nix": "spicetify-nix",
|
||||||
"unstable": "unstable"
|
"unstable": "unstable"
|
||||||
}
|
}
|
||||||
@@ -584,7 +831,7 @@
|
|||||||
"spicetify-nix": {
|
"spicetify-nix": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": "nixpkgs_5",
|
"nixpkgs": "nixpkgs_5",
|
||||||
"systems": "systems_2"
|
"systems": "systems_3"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1751776600,
|
"lastModified": 1751776600,
|
||||||
@@ -630,6 +877,42 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"systems_3": {
|
||||||
|
"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": [
|
||||||
|
"nixvim",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1756662192,
|
||||||
|
"narHash": "sha256-F1oFfV51AE259I85av+MAia221XwMHCOtZCMcZLK2Jk=",
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "treefmt-nix",
|
||||||
|
"rev": "1aabc6c05ccbcbf4a635fb7a90400e44282f61c4",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "treefmt-nix",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"unstable": {
|
"unstable": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1756787288,
|
"lastModified": 1756787288,
|
||||||
|
@@ -18,6 +18,13 @@
|
|||||||
nixpkgs.url = "github:nixos/nixpkgs/nixos-24.11";
|
nixpkgs.url = "github:nixos/nixpkgs/nixos-24.11";
|
||||||
unstable.url = "github:nixos/nixpkgs/nixos-unstable";
|
unstable.url = "github:nixos/nixpkgs/nixos-unstable";
|
||||||
|
|
||||||
|
# Editor
|
||||||
|
nixvim = {
|
||||||
|
url = "github:nix-community/nixvim/nixos-24.11";
|
||||||
|
# If using a stable channel you can use `url = "github:nix-community/nixvim/nixos-<version>"`
|
||||||
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
};
|
||||||
|
|
||||||
# Desktop ENV
|
# Desktop ENV
|
||||||
hyprland.url = "github:hyprwm/Hyprland";
|
hyprland.url = "github:hyprwm/Hyprland";
|
||||||
hyprland-plugins = {
|
hyprland-plugins = {
|
||||||
@@ -42,6 +49,7 @@
|
|||||||
nixpkgs,
|
nixpkgs,
|
||||||
home-manager,
|
home-manager,
|
||||||
catppuccin,
|
catppuccin,
|
||||||
|
nixvim,
|
||||||
...
|
...
|
||||||
}:
|
}:
|
||||||
|
|
||||||
@@ -89,6 +97,7 @@
|
|||||||
sharedModules = [
|
sharedModules = [
|
||||||
inputs.catppuccin.homeModules.catppuccin
|
inputs.catppuccin.homeModules.catppuccin
|
||||||
inputs.nixcord.homeModules.nixcord
|
inputs.nixcord.homeModules.nixcord
|
||||||
|
inputs.nixvim.homeManagerModules.nixvim
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
@@ -9,8 +9,9 @@
|
|||||||
#./wpaperd.nix
|
#./wpaperd.nix
|
||||||
./swww.nix
|
./swww.nix
|
||||||
./rofi # App Launcher
|
./rofi # App Launcher
|
||||||
./mako.nix # Notifyer
|
#./mako.nix # Notifyer
|
||||||
./cava.nix # Music Visualizer
|
./cava.nix # Music Visualizer
|
||||||
|
./swaync.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
programs.waybar =
|
programs.waybar =
|
||||||
|
4
home/hyprland/swaync.nix
Normal file
4
home/hyprland/swaync.nix
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
{ pkgs, ... }:
|
||||||
|
{
|
||||||
|
home.packages = [ pkgs.swaynotificationcenter ];
|
||||||
|
}
|
@@ -54,7 +54,6 @@ require("mason-lspconfig").setup({
|
|||||||
"nil_ls",
|
"nil_ls",
|
||||||
"rust_analyzer",
|
"rust_analyzer",
|
||||||
"pylsp",
|
"pylsp",
|
||||||
"stylelint-lsp",
|
|
||||||
},
|
},
|
||||||
automatic_installation = true,
|
automatic_installation = true,
|
||||||
})
|
})
|
||||||
@@ -77,8 +76,6 @@ cmp.setup({
|
|||||||
sources = cmp.config.sources({
|
sources = cmp.config.sources({
|
||||||
{ name = "nvim_lsp" },
|
{ name = "nvim_lsp" },
|
||||||
{ name = "luasnip" },
|
{ name = "luasnip" },
|
||||||
{ name = "avante_commands" },
|
|
||||||
{ name = "avante_mentions" },
|
|
||||||
}, {
|
}, {
|
||||||
{ name = "buffer" },
|
{ name = "buffer" },
|
||||||
{ name = "path" },
|
{ name = "path" },
|
||||||
@@ -151,58 +148,6 @@ vim.keymap.set("n", "<leader>fg", telescope.live_grep, { desc = "Telescope live
|
|||||||
vim.keymap.set("n", "<leader>fb", telescope.buffers, { desc = "Telescope buffers" })
|
vim.keymap.set("n", "<leader>fb", telescope.buffers, { desc = "Telescope buffers" })
|
||||||
vim.keymap.set("n", "<leader>fh", telescope.help_tags, { desc = "Telescope help tags" })
|
vim.keymap.set("n", "<leader>fh", telescope.help_tags, { desc = "Telescope help tags" })
|
||||||
|
|
||||||
-- Avante.nvim Setup
|
|
||||||
require("avante").setup({
|
|
||||||
-- Provider configuration
|
|
||||||
provider = "ollama",
|
|
||||||
claude = {
|
|
||||||
endpoint = "https://api.anthropic.com",
|
|
||||||
model = "claude-sonnet-4-20250514",
|
|
||||||
},
|
|
||||||
-- File selector settings
|
|
||||||
file_selector = {
|
|
||||||
provider = "telescope",
|
|
||||||
},
|
|
||||||
-- Other settings
|
|
||||||
instructions_file = "avante.md",
|
|
||||||
-- Keymaps will be set automatically
|
|
||||||
mappings = {
|
|
||||||
ask = "<leader>aa",
|
|
||||||
edit = "<leader>ae",
|
|
||||||
refresh = "<leader>ar",
|
|
||||||
--- @class AvanteConflictMappings
|
|
||||||
diff = {
|
|
||||||
ours = "co",
|
|
||||||
theirs = "ct",
|
|
||||||
none = "c0",
|
|
||||||
both = "cb",
|
|
||||||
next = "]x",
|
|
||||||
prev = "[x",
|
|
||||||
},
|
|
||||||
jump = {
|
|
||||||
next = "]]",
|
|
||||||
prev = "[[",
|
|
||||||
},
|
|
||||||
},
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Img-clip setup for image pasting
|
|
||||||
require("img-clip").setup({
|
|
||||||
default = {
|
|
||||||
embed_image_as_base64 = false,
|
|
||||||
prompt_for_file_name = false,
|
|
||||||
drag_and_drop = {
|
|
||||||
insert_mode = true,
|
|
||||||
},
|
|
||||||
use_absolute_path = true,
|
|
||||||
},
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Render-markdown setup
|
|
||||||
require("render-markdown").setup({
|
|
||||||
file_types = { "markdown", "Avante" },
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Styling
|
-- Styling
|
||||||
require("catppuccin").setup({
|
require("catppuccin").setup({
|
||||||
flavour = "mocha",
|
flavour = "mocha",
|
||||||
|
331
home/programs/dev/neovim/default.nix.back1
Normal file
331
home/programs/dev/neovim/default.nix.back1
Normal file
@@ -0,0 +1,331 @@
|
|||||||
|
{ pkgs, ... }:
|
||||||
|
{
|
||||||
|
programs.nixvim = {
|
||||||
|
enable = true;
|
||||||
|
defaultEditor = true;
|
||||||
|
viAlias = true;
|
||||||
|
vimAlias = true;
|
||||||
|
|
||||||
|
# ===================
|
||||||
|
# Basic Options
|
||||||
|
# ===================
|
||||||
|
options = {
|
||||||
|
number = true;
|
||||||
|
cursorline = true;
|
||||||
|
showmode = false;
|
||||||
|
syntax = "enable";
|
||||||
|
hlsearch = true;
|
||||||
|
incsearch = true;
|
||||||
|
tabstop = 4;
|
||||||
|
termguicolors = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
globals.mapleader = " ";
|
||||||
|
|
||||||
|
keymaps = [
|
||||||
|
# Clipboard
|
||||||
|
{
|
||||||
|
mode = "n";
|
||||||
|
key = "y";
|
||||||
|
action = "\"+y";
|
||||||
|
options.desc = "Yank to clipboard";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
mode = "v";
|
||||||
|
key = "y";
|
||||||
|
action = "\"+y";
|
||||||
|
options.desc = "Yank to clipboard";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
mode = "n";
|
||||||
|
key = "Y";
|
||||||
|
action = "\"+Y";
|
||||||
|
options.desc = "Yank line to clipboard";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
mode = "n";
|
||||||
|
key = "d";
|
||||||
|
action = "\"+d";
|
||||||
|
options.desc = "Delete to clipboard";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
mode = "v";
|
||||||
|
key = "d";
|
||||||
|
action = "\"+d";
|
||||||
|
options.desc = "Delete to clipboard";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
mode = "n";
|
||||||
|
key = "D";
|
||||||
|
action = "\"+D";
|
||||||
|
options.desc = "Delete line to clipboard";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
mode = "n";
|
||||||
|
key = "p";
|
||||||
|
action = "\"+p";
|
||||||
|
options.desc = "Paste from clipboard";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
mode = "v";
|
||||||
|
key = "p";
|
||||||
|
action = "\"+p";
|
||||||
|
options.desc = "Paste from clipboard";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
|
||||||
|
# ===================
|
||||||
|
# Plugins
|
||||||
|
# ===================
|
||||||
|
plugins = {
|
||||||
|
# Treesitter
|
||||||
|
treesitter = {
|
||||||
|
enable = true;
|
||||||
|
ensureInstalled = [
|
||||||
|
"lua"
|
||||||
|
"nix"
|
||||||
|
"python"
|
||||||
|
"javascript"
|
||||||
|
"rust"
|
||||||
|
"rasi"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
# Lint
|
||||||
|
lint.enable = true;
|
||||||
|
|
||||||
|
# Mason + LSP
|
||||||
|
mason.enable = true;
|
||||||
|
mason-lspconfig = {
|
||||||
|
enable = true;
|
||||||
|
ensureInstalled = [
|
||||||
|
"lua_ls"
|
||||||
|
"nil_ls"
|
||||||
|
"rust_analyzer"
|
||||||
|
"pylsp"
|
||||||
|
"stylelint_lsp"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
lsp = {
|
||||||
|
enable = true;
|
||||||
|
servers = {
|
||||||
|
lua_ls.settings.Lua = {
|
||||||
|
runtime.version = "LuaJIT";
|
||||||
|
diagnostics.globals = [ "vim" ];
|
||||||
|
telemetry.enable = false;
|
||||||
|
};
|
||||||
|
nil_ls.enable = true;
|
||||||
|
rust_analyzer.enable = true;
|
||||||
|
pylsp.enable = true;
|
||||||
|
stylelint_lsp = {
|
||||||
|
enable = true;
|
||||||
|
filetypes = [
|
||||||
|
"css"
|
||||||
|
"scss"
|
||||||
|
"rasi"
|
||||||
|
];
|
||||||
|
cmd = [
|
||||||
|
"stylelint-lsp"
|
||||||
|
"--stdio"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
keymaps.lspBuf = {
|
||||||
|
gd = "definition";
|
||||||
|
K = "hover";
|
||||||
|
"<leader>rn" = "rename";
|
||||||
|
"<leader>ca" = "code_action";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
# Completion
|
||||||
|
cmp = {
|
||||||
|
enable = true;
|
||||||
|
sources = [
|
||||||
|
{ name = "nvim_lsp"; }
|
||||||
|
{ name = "luasnip"; }
|
||||||
|
{ name = "avante_commands"; }
|
||||||
|
{ name = "avante_mentions"; }
|
||||||
|
{ name = "buffer"; }
|
||||||
|
{ name = "path"; }
|
||||||
|
];
|
||||||
|
};
|
||||||
|
luasnip.enable = true;
|
||||||
|
|
||||||
|
# Conform
|
||||||
|
conform-nvim = {
|
||||||
|
enable = true;
|
||||||
|
formattersByFt = {
|
||||||
|
lua = [ "stylua" ];
|
||||||
|
nix = [ "nixfmt" ];
|
||||||
|
python = [ "black" ];
|
||||||
|
rust = [ "rustfmt" ];
|
||||||
|
rasi = [ "prettierd" ];
|
||||||
|
};
|
||||||
|
formatOnSave = {
|
||||||
|
timeoutMs = 500;
|
||||||
|
lspFallback = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
# Telescope
|
||||||
|
telescope = {
|
||||||
|
enable = true;
|
||||||
|
keymaps = {
|
||||||
|
"<leader>ff" = "find_files";
|
||||||
|
"<leader>fg" = "live_grep";
|
||||||
|
"<leader>fb" = "buffers";
|
||||||
|
"<leader>fh" = "help_tags";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
# Toggleterm
|
||||||
|
toggleterm = {
|
||||||
|
enable = true;
|
||||||
|
settings = {
|
||||||
|
size = 20;
|
||||||
|
direction = "float";
|
||||||
|
float_opts = {
|
||||||
|
border = "single";
|
||||||
|
width = 200;
|
||||||
|
height = 40;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
# Statusline
|
||||||
|
lualine = {
|
||||||
|
enable = true;
|
||||||
|
settings.options = {
|
||||||
|
theme = "catppuccin";
|
||||||
|
component_separators = {
|
||||||
|
left = "|";
|
||||||
|
right = "|";
|
||||||
|
};
|
||||||
|
section_separators = {
|
||||||
|
left = "";
|
||||||
|
right = "";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
# Dashboard (alpha)
|
||||||
|
alpha = {
|
||||||
|
enable = true;
|
||||||
|
theme = "dashboard";
|
||||||
|
layout.dashboard = {
|
||||||
|
section.header.val = [
|
||||||
|
"⣿⣿⣿⣿⣿⣿⣿⣿⣿⢿⣯⣿⠿⣟⣷⣯⣛⢿⣿⣿⣾⣟⣿⣿⣿⣿⣿⣿⣿⣿⣿"
|
||||||
|
"⣿⣿⣿⣿⣿⣿⣿⡿⣵⣿⡿⣴⣽⡟⣳⢿⢽⣽⣕⣽⢿⡿⣿⣟⣿⣿⣿⣿⣿⣿⣿"
|
||||||
|
"⣿⣿⣿⣷⣿⣿⢟⣫⣿⢟⢟⣾⣾⣿⣿⣞⢳⣻⢞⣎⠿⢞⣊⣿⣞⣿⣿⣿⣿⣿⢽"
|
||||||
|
"⣿⣿⣿⣿⣿⣏⢯⣿⣏⣏⠔⢇⣿⢢⢆⢀⢆⣧⣼⢻⢰⡧⢻⣝⣏⡸⣧⣾⣿⣿⣿"
|
||||||
|
"⣿⣿⣿⣿⡟⣻⣿⣿⡾⡿⡼⢸⡝⣝⡳⢢⣧⢳⣳⢷⡇⣗⢺⡺⣿⡧⣿⣿⣿⢿⢿"
|
||||||
|
"⣿⡿⣿⣼⡼⣿⣿⡗⡧⣧⠁⡝⣧⣳⠅⡾⠈⣎⢮⣧⣿⣿⣗⣷⣻⢷⣏⣼⢏⣺⣿"
|
||||||
|
"⣿⣿⣿⣻⣿⣿⣿⢧⣿⢹⠉⢷⢿⣧⣲⡏⡀⡈⢆⠳⣿⡿⢿⣿⣱⢿⢫⣷⣝⣿⣿"
|
||||||
|
"⣿⣿⣿⡯⡟⣿⣿⢽⣡⠟⢿⣮⠁⠙⠛⠈⡴⢿⣿⡷⣬⣽⢽⠧⣷⡏⣿⡇⣧⣽⣿"
|
||||||
|
"⣿⠟⢻⡧⡇⣿⡇⣇⣆⢄⡜⢃⡀⡀⡀⡀⡀⢎⣁⠁⣸⣗⣸⣿⣧⣼⡿⢹⢿⢾⣿"
|
||||||
|
"⣿⣷⣾⣿⢻⣿⢧⢻⣽⡀⡀⡀⡀⢄⡀⡀⡀⡀⡀⢀⣷⡸⡟⣿⣶⣻⣧⡛⡱⢝⣿"
|
||||||
|
"⣿⣿⣿⣿⢸⡿⢚⡜⣿⣇⡀⡀⡀⡀⡀⡀⡀⡀⠚⢁⢣⣜⡿⣿⡇⢼⣿⠨⣸⣿⣿"
|
||||||
|
"⣿⣄⣿⣗⢾⢻⣧⢿⣾⣿⣦⡀⡀⠑⠚⠉⡀⡀⣤⣿⢨⣿⠗⣻⢣⣿⢹⢈⣽⣿⣿"
|
||||||
|
"⣿⣿⣿⣿⢎⡄⢿⣞⡇⣿⠹⣿⣶⣀⡀⣀⡴⡩⢸⢏⣿⣿⣶⢻⣾⢏⡞⠡⢽⣇⣾"
|
||||||
|
"⣿⣿⣿⣮⣼⢬⣦⢿⣳⣌⠧⡉⠈⣇⣛⣁⣈⣼⣿⡸⠫⠛⠐⠛⠕⣙⣻⣬⣼⣿⣿"
|
||||||
|
"⢟⢿⣿⣿⣿⡢⣃⣪⣭⣡⣤⣶⠟⡿⠿⠿⠿⠛⢁⣿⣿⢩⠉⡀⠈⠓⡝⣿⣿⣿⣿"
|
||||||
|
"⣾⣿⣿⣿⣿⠞⢔⡣⡴⣾⣿⠓⣤⢧⡼⣉⠠⢤⣿⣿⠇⠃⡀⡀⡀⡀⡸⢿⣾⣿⣿"
|
||||||
|
"⣿⣿⣿⡿⣺⡸⢗⢠⣇⣿⣿⠊⠃⡀⠉⡀⢠⣿⣿⠟⡸⡀⡀⡀⡀⡀⣃⣬⠽⠿⣿"
|
||||||
|
"⣿⣿⣿⣿⡇⡏⢸⣿⠟⣽⡇⡀⡀⡀⡀⣴⣟⢭⣾⣿⡇⠎⣠⠒⠉⠈⢀⡀⢨⡋⣿"
|
||||||
|
"⠛⠛⠛⠋⠃⠓⠚⠛⠘⠛⠃⡀⠊⡀⠛⠛⠛⠂⠛⠛⠓⠁⠚⡀⠂⠒⠒⠐⠒⠋⠛"
|
||||||
|
];
|
||||||
|
section.buttons.val = [
|
||||||
|
{
|
||||||
|
shortcut = "e";
|
||||||
|
text = "[+] New file";
|
||||||
|
command = ":ene <BAR> startinsert <CR>";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
shortcut = "f";
|
||||||
|
text = "[?] Find file";
|
||||||
|
command = ":Telescope find_files <CR>";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
shortcut = "r";
|
||||||
|
text = "[~] Recent files";
|
||||||
|
command = ":Telescope oldfiles <CR>";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
shortcut = "y";
|
||||||
|
text = "[Y] Yazi";
|
||||||
|
command = ":Yazi<CR>";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
shortcut = "m";
|
||||||
|
text = "[M] Mason";
|
||||||
|
command = ":Mason<CR>";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
shortcut = "q";
|
||||||
|
text = "[X] Quit";
|
||||||
|
command = ":qa<CR>";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
section.footer.val = "Circuits hum in anticipation of your will.";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
# Colorscheme
|
||||||
|
catppuccin = {
|
||||||
|
enable = true;
|
||||||
|
flavour = "mocha";
|
||||||
|
transparentBackground = true;
|
||||||
|
integrations = {
|
||||||
|
treesitter = true;
|
||||||
|
mason = true;
|
||||||
|
cmp = true;
|
||||||
|
telescope = true;
|
||||||
|
toggleterm = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
# ===================
|
||||||
|
# Plugins not in nixvim
|
||||||
|
# ===================
|
||||||
|
extraPlugins = with pkgs.vimPlugins; [
|
||||||
|
yazi-nvim
|
||||||
|
cheatsheet-nvim
|
||||||
|
avante-nvim
|
||||||
|
plenary-nvim
|
||||||
|
nui-nvim
|
||||||
|
dressing-nvim
|
||||||
|
nvim-web-devicons
|
||||||
|
img-clip-nvim
|
||||||
|
render-markdown-nvim
|
||||||
|
(pkgs.vimUtils.buildVimPlugin {
|
||||||
|
name = "conform-nvim";
|
||||||
|
src = pkgs.fetchFromGitHub {
|
||||||
|
owner = "stevearc";
|
||||||
|
repo = "conform.nvim";
|
||||||
|
rev = "stable";
|
||||||
|
sha256 = "sha256-pUF9F5QoDzCZuVRcJEF91M8Qjkh/xosMkf9tRavkmJs=";
|
||||||
|
};
|
||||||
|
})
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
home.packages = with pkgs; [
|
||||||
|
nixfmt-rfc-style
|
||||||
|
stylua
|
||||||
|
black
|
||||||
|
nodePackages.prettier
|
||||||
|
rustfmt
|
||||||
|
nodejs
|
||||||
|
prettierd
|
||||||
|
stylelint-lsp
|
||||||
|
lua-language-server
|
||||||
|
nil
|
||||||
|
rust-analyzer
|
||||||
|
python3Packages.python-lsp-server
|
||||||
|
curl
|
||||||
|
cargo
|
||||||
|
];
|
||||||
|
}
|
@@ -24,6 +24,7 @@
|
|||||||
# $ nix search wget
|
# $ nix search wget
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
# Bare minimum
|
# Bare minimum
|
||||||
|
vim
|
||||||
neovim # Do not forget to add an editor to edit configuration.nix! The Nano editor is also installed by default.
|
neovim # Do not forget to add an editor to edit configuration.nix! The Nano editor is also installed by default.
|
||||||
wget
|
wget
|
||||||
git
|
git
|
||||||
|
@@ -39,7 +39,6 @@
|
|||||||
../../home/programs/games/lutris.nix
|
../../home/programs/games/lutris.nix
|
||||||
../../home/programs/games/opensource.nix
|
../../home/programs/games/opensource.nix
|
||||||
../../home/programs/games/airshipper.nix
|
../../home/programs/games/airshipper.nix
|
||||||
|
|
||||||
];
|
];
|
||||||
|
|
||||||
catppuccin = {
|
catppuccin = {
|
||||||
|
Reference in New Issue
Block a user