Move to nixos-23.11
This commit is contained in:
parent
659fb33ca7
commit
38a7932c2c
|
@ -1,17 +1,28 @@
|
||||||
{ pkgs, ... }: {
|
{ pkgs, ... }: {
|
||||||
stylix.fonts = {
|
stylix.fonts = {
|
||||||
|
|
||||||
|
# monospace = {
|
||||||
|
# name = "Cascadia Code";
|
||||||
|
# package = pkgs.cascadia-code;
|
||||||
|
# };
|
||||||
|
|
||||||
monospace = {
|
monospace = {
|
||||||
name = "FiraCode Nerd Font";
|
name = "Iosevka";
|
||||||
package = pkgs.nerdfonts.override { fonts = [ "FiraCode" ]; };
|
package = pkgs.iosevka;
|
||||||
};
|
};
|
||||||
|
|
||||||
sansSerif = {
|
sansSerif = {
|
||||||
name = "Fira Sans";
|
name = "CMUSansSerif";
|
||||||
package = pkgs.fira;
|
package = pkgs.cm_unicode;
|
||||||
|
};
|
||||||
|
|
||||||
|
serif = {
|
||||||
|
name = "CMUSerif-Roman";
|
||||||
|
package = pkgs.cm_unicode;
|
||||||
};
|
};
|
||||||
|
|
||||||
# Why would you not want sansSerif
|
# Why would you not want sansSerif
|
||||||
# (that's what I used to think, but I somewhat changed my mind)
|
# (that's what I used to think, but I have since changed my mind)
|
||||||
# serif = sansSerif;
|
# serif = sansSerif;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
1035
flake.lock
1035
flake.lock
File diff suppressed because it is too large
Load diff
45
flake.nix
45
flake.nix
|
@ -4,10 +4,12 @@
|
||||||
# {{{ Inputs
|
# {{{ Inputs
|
||||||
inputs = {
|
inputs = {
|
||||||
# Nixpkgs
|
# Nixpkgs
|
||||||
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
|
nixpkgs-stable.url = "github:nixos/nixpkgs/nixos-23.11";
|
||||||
|
nixpkgs.url = "github:nixos/nixpkgs/nixos-23.11";
|
||||||
|
nixpkgs-unstable.url = "github:nixos/nixpkgs/nixos-unstable";
|
||||||
|
|
||||||
# Home manager
|
# Home manager
|
||||||
home-manager.url = "github:nix-community/home-manager";
|
home-manager.url = "github:nix-community/home-manager/release-23.11";
|
||||||
home-manager.inputs.nixpkgs.follows = "nixpkgs";
|
home-manager.inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
|
||||||
# NUR
|
# NUR
|
||||||
|
@ -57,7 +59,7 @@
|
||||||
hyprland.url = "github:hyprwm/Hyprland";
|
hyprland.url = "github:hyprwm/Hyprland";
|
||||||
hyprland.inputs.nixpkgs.follows = "nixpkgs";
|
hyprland.inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
|
||||||
# Hyprland (available in nix unstable only atm)
|
# Hyprland-contrib
|
||||||
hyprland-contrib.url = "github:hyprwm/contrib";
|
hyprland-contrib.url = "github:hyprwm/contrib";
|
||||||
hyprland-contrib.inputs.nixpkgs.follows = "nixpkgs";
|
hyprland-contrib.inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
|
||||||
|
@ -101,6 +103,11 @@
|
||||||
matui.url = "github:pkulak/matui";
|
matui.url = "github:pkulak/matui";
|
||||||
matui.inputs.nixpkgs.follows = "nixpkgs";
|
matui.inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
|
||||||
|
# Wezterm nightly
|
||||||
|
# https://github.com/happenslol/wezterm/blob/add-nix-flake/nix/flake.nix
|
||||||
|
wezterm.url = "github:happenslol/wezterm/add-nix-flake?dir=nix";
|
||||||
|
wezterm.inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
|
||||||
# {{{ Self management
|
# {{{ Self management
|
||||||
# Smos
|
# Smos
|
||||||
smos.url = "github:NorfairKing/smos";
|
smos.url = "github:NorfairKing/smos";
|
||||||
|
@ -134,6 +141,9 @@
|
||||||
|
|
||||||
specialArgs = system: {
|
specialArgs = system: {
|
||||||
inherit inputs outputs;
|
inherit inputs outputs;
|
||||||
|
|
||||||
|
spkgs = inputs.nixpkgs-stable.legacyPackages.${system};
|
||||||
|
upkgs = inputs.nixpkgs-unstable.legacyPackages.${system};
|
||||||
};
|
};
|
||||||
# }}}
|
# }}}
|
||||||
in
|
in
|
||||||
|
@ -142,7 +152,22 @@
|
||||||
# Acessible through 'nix build', 'nix shell', etc
|
# Acessible through 'nix build', 'nix shell', etc
|
||||||
packages = forAllSystems (system:
|
packages = forAllSystems (system:
|
||||||
let pkgs = nixpkgs.legacyPackages.${system};
|
let pkgs = nixpkgs.legacyPackages.${system};
|
||||||
in import ./pkgs { inherit pkgs; }
|
in import ./pkgs { inherit pkgs; } // {
|
||||||
|
nix-tree = (pkgs.nix-tree.overrideAttrs (oldAttrs: {
|
||||||
|
patches =
|
||||||
|
(oldAttrs.patches or [])
|
||||||
|
++ [
|
||||||
|
(pkgs.fetchpatch {
|
||||||
|
url = "https://github.com/utdemir/nix-tree/pull/68.patch";
|
||||||
|
hash = "sha256-70Xo88ZWzWUYM0qxbW64kYaVwHaYkS2dQWmBGCkL0oA=";
|
||||||
|
})
|
||||||
|
(pkgs.fetchpatch {
|
||||||
|
url = "https://github.com/utdemir/nix-tree/pull/69.patch";
|
||||||
|
hash = "sha256-8LdOKU2pc0tojmquCEqjnovkG3hD7YdTQoC4WSawdAQ=";
|
||||||
|
})
|
||||||
|
];
|
||||||
|
}));
|
||||||
|
}
|
||||||
);
|
);
|
||||||
# }}}
|
# }}}
|
||||||
# {{{ Bootstrapping and other pinned devshells
|
# {{{ Bootstrapping and other pinned devshells
|
||||||
|
@ -233,6 +258,18 @@
|
||||||
};
|
};
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
|
nixd = home-manager.lib.homeManagerConfiguration {
|
||||||
|
pkgs = nixpkgs.legacyPackages."x86_64-linux";
|
||||||
|
modules = [
|
||||||
|
({ lib, config, ... }: {
|
||||||
|
home = {
|
||||||
|
username = "adrielus";
|
||||||
|
homeDirectory = "/home/${config.home.username}";
|
||||||
|
stateVersion = "23.05";
|
||||||
|
};
|
||||||
|
})
|
||||||
|
];
|
||||||
|
};
|
||||||
"adrielus@tethys" = mkHomeConfig {
|
"adrielus@tethys" = mkHomeConfig {
|
||||||
system = "x86_64-linux";
|
system = "x86_64-linux";
|
||||||
hostname = "tethys";
|
hostname = "tethys";
|
||||||
|
|
|
@ -2,10 +2,20 @@
|
||||||
let
|
let
|
||||||
spicePkgs = inputs.spicetify-nix.packages.${pkgs.system}.default;
|
spicePkgs = inputs.spicetify-nix.packages.${pkgs.system}.default;
|
||||||
themeMap = lib.fix (self: {
|
themeMap = lib.fix (self: {
|
||||||
"Catppuccin Mocha" = spicePkgs.themes.catppuccin-mocha;
|
"Catppuccin Mocha" = spicePkgs.themes.catppuccin;
|
||||||
"Catppuccin Latte" = spicePkgs.themes.catppuccin-latte;
|
"Catppuccin Latte" = spicePkgs.themes.catppuccin;
|
||||||
"Catppuccin Frappe" = spicePkgs.themes.catppuccin-frappe;
|
"Catppuccin Frappe" = spicePkgs.themes.catppuccin;
|
||||||
"Catppuccin Macchiato" = spicePkgs.themes.catppuccin-macchiato;
|
"Catppuccin Macchiato" = spicePkgs.themes.catppuccin;
|
||||||
|
|
||||||
|
default.light = self."Catppuccin Latte";
|
||||||
|
default.dark = self."Catppuccin Macchiato";
|
||||||
|
});
|
||||||
|
|
||||||
|
colorschemeMap = lib.fix (self: {
|
||||||
|
"Catppuccin Mocha" = "mocha";
|
||||||
|
"Catppuccin Latte" = "latte";
|
||||||
|
"Catppuccin Frappe" = "frappe";
|
||||||
|
"Catppuccin Macchiato" = "macchiato";
|
||||||
|
|
||||||
default.light = self."Catppuccin Latte";
|
default.light = self."Catppuccin Latte";
|
||||||
default.dark = self."Catppuccin Macchiato";
|
default.dark = self."Catppuccin Macchiato";
|
||||||
|
@ -16,6 +26,7 @@ in
|
||||||
enable = true;
|
enable = true;
|
||||||
|
|
||||||
theme = config.satellite.theming.get themeMap;
|
theme = config.satellite.theming.get themeMap;
|
||||||
|
colorScheme = config.satellite.theming.get colorschemeMap;
|
||||||
|
|
||||||
enabledExtensions = with spicePkgs.extensions; [
|
enabledExtensions = with spicePkgs.extensions; [
|
||||||
fullAppDisplayMod
|
fullAppDisplayMod
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
{ pkgs, config, ... }: {
|
{ inputs, pkgs, config, ... }: {
|
||||||
home.packages = [ pkgs.wezterm ];
|
# REASON: the unstable version crashes on launch
|
||||||
|
home.packages = [ inputs.wezterm.packages.${pkgs.system}.default ];
|
||||||
|
|
||||||
# Create link to config
|
# Create link to config
|
||||||
xdg.configFile."wezterm/colorscheme.lua".text = config.satellite.colorscheme.lua;
|
xdg.configFile."wezterm/colorscheme.lua".text = config.satellite.colorscheme.lua;
|
||||||
|
|
|
@ -57,6 +57,7 @@ config.window_background_opacity = colorscheme.transparency.value
|
||||||
-- }}}
|
-- }}}
|
||||||
-- {{{ Main config options
|
-- {{{ Main config options
|
||||||
config.automatically_reload_config = true
|
config.automatically_reload_config = true
|
||||||
|
config.check_for_updates = false
|
||||||
|
|
||||||
-- {{{ Fonts
|
-- {{{ Fonts
|
||||||
config.adjust_window_size_when_changing_font_size = false -- Makes it work with fixed window sizes.
|
config.adjust_window_size_when_changing_font_size = false -- Makes it work with fixed window sizes.
|
||||||
|
|
|
@ -1,79 +1,87 @@
|
||||||
{
|
{
|
||||||
"LuaSnip": { "branch": "master", "commit": "409535b8fc54c650eb845b0c35e0cc7f08810284" },
|
"LuaSnip": { "branch": "master", "commit": "118263867197a111717b5f13d954cd1ab8124387" },
|
||||||
"alpha-nvim": { "branch": "main", "commit": "63a860e7ed3ae41ee92481ea65a48fb35431ae21" },
|
"alpha-nvim": { "branch": "main", "commit": "29074eeb869a6cbac9ce1fbbd04f5f5940311b32" },
|
||||||
"catppuccin": { "branch": "main", "commit": "490078b1593c6609e6a50ad5001e7902ea601824" },
|
"catppuccin": { "branch": "main", "commit": "64dc309bc157779691be38bbfc5123584e0a4a85" },
|
||||||
"clipboard-image": { "branch": "main", "commit": "485de5493d196154db30f85665f8ac480ce116a2" },
|
"clipboard-image": { "branch": "main", "commit": "485de5493d196154db30f85665f8ac480ce116a2" },
|
||||||
"cmp-buffer": { "branch": "main", "commit": "3022dbc9166796b644a841a02de8dd1cc1d311fa" },
|
"cmp-buffer": { "branch": "main", "commit": "3022dbc9166796b644a841a02de8dd1cc1d311fa" },
|
||||||
"cmp-cmdline": { "branch": "main", "commit": "8ee981b4a91f536f52add291594e89fb6645e451" },
|
"cmp-cmdline": { "branch": "main", "commit": "8ee981b4a91f536f52add291594e89fb6645e451" },
|
||||||
"cmp-emoji": { "branch": "main", "commit": "19075c36d5820253d32e2478b6aaf3734aeaafa0" },
|
"cmp-emoji": { "branch": "main", "commit": "19075c36d5820253d32e2478b6aaf3734aeaafa0" },
|
||||||
"cmp-nvim-lsp": { "branch": "main", "commit": "44b16d11215dce86f253ce0c30949813c0a90765" },
|
"cmp-nvim-lsp": { "branch": "main", "commit": "44b16d11215dce86f253ce0c30949813c0a90765" },
|
||||||
"cmp-path": { "branch": "main", "commit": "91ff86cd9c29299a64f968ebb45846c485725f23" },
|
"cmp-path": { "branch": "main", "commit": "91ff86cd9c29299a64f968ebb45846c485725f23" },
|
||||||
"cmp_luasnip": { "branch": "master", "commit": "18095520391186d634a0045dacaa346291096566" },
|
"cmp_luasnip": { "branch": "master", "commit": "05a9ab28b53f71d1aece421ef32fee2cb857a843" },
|
||||||
"conform": { "branch": "master", "commit": "5bf1405fd234d469243ea6f394e0aeec9ea53bd8" },
|
"conform": { "branch": "master", "commit": "48bc9996ebfe90e7766f46338360f75fd6ecb174" },
|
||||||
"crates": { "branch": "main", "commit": "b8ea20fda2e1029fbbb1bae7a9eab35c84037ca0" },
|
"crates": { "branch": "main", "commit": "b8ea20fda2e1029fbbb1bae7a9eab35c84037ca0" },
|
||||||
"dhall-vim": { "branch": "master", "commit": "68500ef46ff3706f46c99db3be7a0c8abcf6a3ae" },
|
"dhall-vim": { "branch": "master", "commit": "68500ef46ff3706f46c99db3be7a0c8abcf6a3ae" },
|
||||||
"dressing.nvim": { "branch": "master", "commit": "6bde51adabba06f7fd4a469885a85f36d78a5f52" },
|
"discord-rich-presence": { "branch": "main", "commit": "87c857a56b7703f976d3a5ef15967d80508df6e6" },
|
||||||
|
"dressing.nvim": { "branch": "master", "commit": "8b7ae53d7f04f33be3439a441db8071c96092d19" },
|
||||||
|
"femaco": { "branch": "main", "commit": "6af458f0196215f397db31a6e1fb2df795811693" },
|
||||||
"fidget.nvim": { "branch": "main", "commit": "0ba1e16d07627532b6cae915cc992ecac249fb97" },
|
"fidget.nvim": { "branch": "main", "commit": "0ba1e16d07627532b6cae915cc992ecac249fb97" },
|
||||||
"flash": { "branch": "main", "commit": "48817af25f51c0590653bbc290866e4890fe1cbe" },
|
"flash": { "branch": "main", "commit": "48817af25f51c0590653bbc290866e4890fe1cbe" },
|
||||||
|
"ftft": { "branch": "master", "commit": "09a72f9adf8ee7c824c517ef8408c9e687453039" },
|
||||||
"github-actions-yaml.vim": { "branch": "master", "commit": "f2f16243447cea174daa6b4a9ffd3ff9213814ef" },
|
"github-actions-yaml.vim": { "branch": "master", "commit": "f2f16243447cea174daa6b4a9ffd3ff9213814ef" },
|
||||||
|
"gitlinker": { "branch": "master", "commit": "cc59f732f3d043b626c8702cb725c82e54d35c25" },
|
||||||
"gitlinker.nvim": { "branch": "master", "commit": "cc59f732f3d043b626c8702cb725c82e54d35c25" },
|
"gitlinker.nvim": { "branch": "master", "commit": "cc59f732f3d043b626c8702cb725c82e54d35c25" },
|
||||||
"gitsigns.nvim": { "branch": "main", "commit": "af0f583cd35286dd6f0e3ed52622728703237e50" },
|
"gitsigns.nvim": { "branch": "main", "commit": "87640f5a877b18bdd49884dbcac220fed924b867" },
|
||||||
"harpoon": { "branch": "master", "commit": "21f4c47c6803d64ddb934a5b314dcb1b8e7365dc" },
|
"harpoon": { "branch": "master", "commit": "867e212ac153e793f95b316d1731f3ca1894625e" },
|
||||||
"haskell-tools": { "branch": "master", "commit": "92e097c6832405fb64e4c44a7ce8bebe7836cae6" },
|
"haskell-tools": { "branch": "master", "commit": "92e097c6832405fb64e4c44a7ce8bebe7836cae6" },
|
||||||
"hydra.nvim": { "branch": "master", "commit": "3ced42c0b6a6c85583ff0f221635a7f4c1ab0dd0" },
|
"hydra.nvim": { "branch": "master", "commit": "3ced42c0b6a6c85583ff0f221635a7f4c1ab0dd0" },
|
||||||
"hyprland-vim-syntax": { "branch": "main", "commit": "8488a24b50882da969979103b4d668c70e7995b9" },
|
"hyprland-vim-syntax": { "branch": "main", "commit": "8488a24b50882da969979103b4d668c70e7995b9" },
|
||||||
"idris2-nvim": { "branch": "main", "commit": "3a2b4d2b5ffeab9e47298456c59c31b4e1ddebc9" },
|
"idris2-nvim": { "branch": "main", "commit": "8bff02984a33264437e70fd9fff4359679d910da" },
|
||||||
"inc-rename.nvim": { "branch": "main", "commit": "ed0f6f2b917cac4eb3259f907da0a481b27a3b7e" },
|
"inc-rename.nvim": { "branch": "main", "commit": "a48c7cec5c4f00d7438dce5fadb55f4d715ef9f2" },
|
||||||
|
"indent-blankline": { "branch": "master", "commit": "7206c77cb931f79885fc47f88ae18f99148392eb" },
|
||||||
"iron.nvim": { "branch": "master", "commit": "7f876ee3e1f4ea1e5284b1b697cdad5b256e8046" },
|
"iron.nvim": { "branch": "master", "commit": "7f876ee3e1f4ea1e5284b1b697cdad5b256e8046" },
|
||||||
"kmonad-vim": { "branch": "master", "commit": "37978445197ab00edeb5b731e9ca90c2b141723f" },
|
"kmonad-vim": { "branch": "master", "commit": "37978445197ab00edeb5b731e9ca90c2b141723f" },
|
||||||
"kotlin-vim": { "branch": "master", "commit": "53fe045906df8eeb07cb77b078fc93acda6c90b8" },
|
"kotlin-vim": { "branch": "master", "commit": "53fe045906df8eeb07cb77b078fc93acda6c90b8" },
|
||||||
"lazy.nvim": { "branch": "main", "commit": "dac844ed617dda4f9ec85eb88e9629ad2add5e05" },
|
"lastplace": { "branch": "main", "commit": "0bb6103c506315044872e0f84b1f736c4172bb20" },
|
||||||
"lean.nvim": { "branch": "main", "commit": "67580fab5bed73920fa3fdd712fc8e805c389c3d" },
|
"lazy.nvim": { "branch": "main", "commit": "96584866b9c5e998cbae300594d0ccfd0c464627" },
|
||||||
|
"lean.nvim": { "branch": "main", "commit": "360908674890f3bd92eb41c5b362510dca8fc4cb" },
|
||||||
"live-command.nvim": { "branch": "main", "commit": "d460067d47948725a6f25b20f31ea8bbfdfe4622" },
|
"live-command.nvim": { "branch": "main", "commit": "d460067d47948725a6f25b20f31ea8bbfdfe4622" },
|
||||||
"lspkind.nvim": { "branch": "master", "commit": "57610d5ab560c073c465d6faf0c19f200cb67e6e" },
|
"lspkind.nvim": { "branch": "master", "commit": "57610d5ab560c073c465d6faf0c19f200cb67e6e" },
|
||||||
"lualine": { "branch": "master", "commit": "2248ef254d0a1488a72041cfb45ca9caada6d994" },
|
"lualine": { "branch": "master", "commit": "2248ef254d0a1488a72041cfb45ca9caada6d994" },
|
||||||
"magma-nvim": { "branch": "main", "commit": "ff3deba8a879806a51c005e50782130246143d06" },
|
"magma-nvim": { "branch": "main", "commit": "ff3deba8a879806a51c005e50782130246143d06" },
|
||||||
"mini.files": { "branch": "main", "commit": "dea80a8147aa4e3025c34d2e2aaa6f2aeb7b21dd" },
|
"mini.comment": { "branch": "main", "commit": "3d9c8009615857e982f09bc5357fc95f2a2175f3" },
|
||||||
"mini.operators": { "branch": "main", "commit": "15f137f28412517e2248d39cf0663bd3a87aa24a" },
|
"mini.files": { "branch": "main", "commit": "173d73f5d0b2a9abbb2d6533a3770fdbbd0c4dcc" },
|
||||||
"mini.surround": { "branch": "main", "commit": "9d1956b576d7051da3a483b251dfc778121c60db" },
|
"mini.operators": { "branch": "main", "commit": "7a97e2528a4c274e9da8953d3ba22f493c360a9f" },
|
||||||
|
"mini.surround": { "branch": "main", "commit": "af8129efcabe95fc08a233e9f91569829bed031f" },
|
||||||
"neoconf": { "branch": "main", "commit": "64437787dba70fce50dad7bfbb97d184c5bc340f" },
|
"neoconf": { "branch": "main", "commit": "64437787dba70fce50dad7bfbb97d184c5bc340f" },
|
||||||
"neoconf.nvim": { "branch": "main", "commit": "08f146d53e075055500dca35e93281faff95716b" },
|
"neoconf.nvim": { "branch": "main", "commit": "64437787dba70fce50dad7bfbb97d184c5bc340f" },
|
||||||
"neodev.nvim": { "branch": "main", "commit": "9a5c0f0de5c15fba52d4fb83d425d3f4fa7abfa1" },
|
"neodev.nvim": { "branch": "main", "commit": "c4ce017bd4bacf60bf59330cec9e93c5d5e104a6" },
|
||||||
"neogit": { "branch": "master", "commit": "e4c428239928425829cb5247e430f26d25d5788e" },
|
"neogit": { "branch": "master", "commit": "761e9be2aa7cc4c8ca87f10c8c37108a687b928e" },
|
||||||
"neorg": { "branch": "main", "commit": "f296a22864bbac0d94ad00fa18cc8231dbeaa1e3" },
|
"neorg": { "branch": "main", "commit": "baaf13a3145534144b795ad37db22bfffd2ad343" },
|
||||||
"neorg-telescope": { "branch": "main", "commit": "1310d4aaefd8149c9839bbe1d5610e94389e2f0e" },
|
"neorg-telescope": { "branch": "main", "commit": "6a7a677c40fa3c348924a4e2a06a513e0b34c056" },
|
||||||
"nui.nvim": { "branch": "main", "commit": "9e3916e784660f55f47daa6f26053ad044db5d6a" },
|
"nui": { "branch": "main", "commit": "c9b4de623d19a85b353ff70d2ae9c77143abe69c" },
|
||||||
"null-ls.nvim": { "branch": "main", "commit": "0010ea927ab7c09ef0ce9bf28c2b573fc302f5a7" },
|
"null-ls.nvim": { "branch": "main", "commit": "0010ea927ab7c09ef0ce9bf28c2b573fc302f5a7" },
|
||||||
"nvim-autopairs": { "branch": "master", "commit": "ae5b41ce880a6d850055e262d6dfebd362bb276e" },
|
"nvim-autopairs": { "branch": "master", "commit": "0f04d78619cce9a5af4f355968040f7d675854a1" },
|
||||||
"nvim-cmp": { "branch": "main", "commit": "51f1e11a89ec701221877532ee1a23557d291dd5" },
|
"nvim-cmp": { "branch": "main", "commit": "0b751f6beef40fd47375eaf53d3057e0bfa317e4" },
|
||||||
"nvim-comment": { "branch": "main", "commit": "e9ac16ab056695cad6461173693069ec070d2b23" },
|
"nvim-lspconfig": { "branch": "master", "commit": "511609ae0311abfcfaed3c398429a147e895ce2c" },
|
||||||
"nvim-lspconfig": { "branch": "master", "commit": "a981d4447b92c54a4d464eb1a76b799bc3f9a771" },
|
|
||||||
"nvim-tree": { "branch": "master", "commit": "7d1760f892951dd6a118dae1d7a1d8df5f029edf" },
|
"nvim-tree": { "branch": "master", "commit": "7d1760f892951dd6a118dae1d7a1d8df5f029edf" },
|
||||||
"nvim-treesitter": { "branch": "master", "commit": "0791b5ebb590a2d44e20640c52679df1fc42e8ab" },
|
"nvim-treesitter": { "branch": "master", "commit": "180e1ca385442e35e1d18420221a148c5e045671" },
|
||||||
"nvim-treesitter-context": { "branch": "master", "commit": "a17c31268b56d53624fdc9cb03a225d4a17cabdb" },
|
"nvim-treesitter-context": { "branch": "master", "commit": "cfa8ee19ac9bae9b7fb2958eabe2b45b70c56ccb" },
|
||||||
"nvim-treesitter-textobjects": { "branch": "master", "commit": "9e519b6146512c8e2e702faf8ac48420f4f5deec" },
|
"nvim-treesitter-textobjects": { "branch": "master", "commit": "ec1c5bdb3d87ac971749fa6c7dbc2b14884f1f6a" },
|
||||||
"nvim-web-devicons": { "branch": "master", "commit": "ab899311f8ae00a47eae8e0879506cead8eb1561" },
|
"nvim-web-devicons": { "branch": "master", "commit": "5efb8bd06841f91f97c90e16de85e96d57e9c862" },
|
||||||
"nvim_context_vt": { "branch": "master", "commit": "f44f46ecad6e6983fd04dac84c5a5c03815d3427" },
|
"nvim_context_vt": { "branch": "master", "commit": "a14f9292b4bd68ceed433fc513f287641816dc6d" },
|
||||||
"paperplanes.nvim": { "branch": "master", "commit": "d704b2e1e594b32d454cc7e0c5f2cf9b391e3cc1" },
|
"paperlanes": { "branch": "master", "commit": "bd52c54c36ad2e9ac563ae1c6a4f6ed1f5faacd2" },
|
||||||
"plenary.nvim": { "branch": "master", "commit": "267282a9ce242bbb0c5dc31445b6d353bed978bb" },
|
"plenary": { "branch": "master", "commit": "55d9fe89e33efd26f532ef20223e5f9430c8b0c0" },
|
||||||
"presence.nvim": { "branch": "main", "commit": "87c857a56b7703f976d3a5ef15967d80508df6e6" },
|
"plenary.nvim": { "branch": "master", "commit": "55d9fe89e33efd26f532ef20223e5f9430c8b0c0" },
|
||||||
"purescript-vim": { "branch": "main", "commit": "82348352e6568fcc0385bd7c99a8ead3a479feea" },
|
"purescript-vim": { "branch": "main", "commit": "82348352e6568fcc0385bd7c99a8ead3a479feea" },
|
||||||
"rasi.vim": { "branch": "main", "commit": "eac9969cf935cd4380987dc99bfa10d69d3f34a6" },
|
"rasi.vim": { "branch": "main", "commit": "eac9969cf935cd4380987dc99bfa10d69d3f34a6" },
|
||||||
"rust-tools": { "branch": "master", "commit": "0cc8adab23117783a0292a0c8a2fbed1005dc645" },
|
"rust-tools": { "branch": "master", "commit": "0cc8adab23117783a0292a0c8a2fbed1005dc645" },
|
||||||
"rust-tools.nvim": { "branch": "master", "commit": "0cc8adab23117783a0292a0c8a2fbed1005dc645" },
|
"rust-tools.nvim": { "branch": "master", "commit": "0cc8adab23117783a0292a0c8a2fbed1005dc645" },
|
||||||
"scrap.nvim": { "branch": "main", "commit": "16db44ae9403ec9c4b140394f294475d1af80a18" },
|
"scrap.nvim": { "branch": "main", "commit": "0f833d8dccaabe49c1ed7a2b24cfd887d9d5003f" },
|
||||||
"smart-splits.nvim": { "branch": "master", "commit": "7aad6019dee974a01333523a5b8e122b7e7da454" },
|
"smart-splits.nvim": { "branch": "master", "commit": "c970c7a3cc7ba635fd73d43c81b40f04c00f5058" },
|
||||||
"telescope-fzf-native.nvim": { "branch": "main", "commit": "9bc8237565ded606e6c366a71c64c0af25cd7a50" },
|
"ssr": { "branch": "main", "commit": "bb323ba621ac647b4ac5638b47666e3ef3c279e1" },
|
||||||
"telescope.nvim": { "branch": "master", "commit": "776b509f80dd49d8205b9b0d94485568236d1192" },
|
"telescope-fzf-native.nvim": { "branch": "main", "commit": "6c921ca12321edaa773e324ef64ea301a1d0da62" },
|
||||||
"typst.vim": { "branch": "main", "commit": "6a99324a138c2da69589a8ab2e49375774e43d77" },
|
"telescope.nvim": { "branch": "master", "commit": "d90956833d7c27e73c621a61f20b29fdb7122709" },
|
||||||
"undotree": { "branch": "master", "commit": "0e11ba7325efbbb3f3bebe06213afa3e7ec75131" },
|
"typst.vim": { "branch": "main", "commit": "5b11b42de1703838ca1bb31dc66e73c002698e49" },
|
||||||
"venn.nvim": { "branch": "main", "commit": "c114563960b8fb1197695d42798d1f3e7190b798" },
|
"undotree": { "branch": "master", "commit": "36ff7abb6b60980338344982ad4cdf03f7961ecd" },
|
||||||
|
"venn.nvim": { "branch": "main", "commit": "e4d68341a73dd56c64955058821a58295fb337b1" },
|
||||||
"vim-sleuth": { "branch": "master", "commit": "1cc4557420f215d02c4d2645a748a816c220e99b" },
|
"vim-sleuth": { "branch": "master", "commit": "1cc4557420f215d02c4d2645a748a816c220e99b" },
|
||||||
"vim-teal": { "branch": "master", "commit": "d2aa107b257879e774680792a2aebaf9cd5742e0" },
|
"vim-teal": { "branch": "master", "commit": "d2aa107b257879e774680792a2aebaf9cd5742e0" },
|
||||||
"vim-tmux-navigator": { "branch": "master", "commit": "cdd66d6a37d991bba7997d593586fc51a5b37aa8" },
|
"vim-tmux-navigator": { "branch": "master", "commit": "7db70e08ea03b3e4d91f63713d76134512e28d7e" },
|
||||||
"vim-wakatime": { "branch": "master", "commit": "018fa9a80c27ccf2a8967b9e27890372e5c2fb4f" },
|
|
||||||
"vimux": { "branch": "master", "commit": "616fcb4799674a7a809b14ca2dc155bb6ba25788" },
|
"vimux": { "branch": "master", "commit": "616fcb4799674a7a809b14ca2dc155bb6ba25788" },
|
||||||
"which-key.nvim": { "branch": "main", "commit": "7ccf476ebe0445a741b64e36c78a682c1c6118b7" },
|
"wakatime": { "branch": "master", "commit": "8c8856327815a077cbebeba8c7456312a3d2c39c" },
|
||||||
|
"web-devicons": { "branch": "master", "commit": "5efb8bd06841f91f97c90e16de85e96d57e9c862" },
|
||||||
|
"which-key.nvim": { "branch": "main", "commit": "4433e5ec9a507e5097571ed55c02ea9658fb268a" },
|
||||||
"winbar": { "branch": "main", "commit": "13739fdb31be51a1000486189662596f07a59a31" },
|
"winbar": { "branch": "main", "commit": "13739fdb31be51a1000486189662596f07a59a31" },
|
||||||
"yuck.vim": { "branch": "master", "commit": "9b5e0370f70cc30383e1dabd6c215475915fe5c3" }
|
"yuck.vim": { "branch": "master", "commit": "9b5e0370f70cc30383e1dabd6c215475915fe5c3" }
|
||||||
}
|
}
|
|
@ -89,7 +89,7 @@ function M.setup()
|
||||||
-- In the future, I might get this on my keyboard firmware.
|
-- In the future, I might get this on my keyboard firmware.
|
||||||
vim.keymap.set({ "i", "v" }, "<f10>", "<Esc>", { desc = "Exit insert mode" }) -- Exit inset mode using *jk*
|
vim.keymap.set({ "i", "v" }, "<f10>", "<Esc>", { desc = "Exit insert mode" }) -- Exit inset mode using *jk*
|
||||||
vim.keymap.set({ "n", "v" }, "<f11>", '"+', { desc = "Use global clipboard" }) -- Use global clipboard with *cp*
|
vim.keymap.set({ "n", "v" }, "<f11>", '"+', { desc = "Use global clipboard" }) -- Use global clipboard with *cp*
|
||||||
M.nmap("<f12>", ":silent write<cr>", "Save current file") -- Save using *ji*
|
M.nmap("<f12>", "<cmd>silent write<cr>", "Save current file", true) -- Save using *ji*
|
||||||
-- }}}
|
-- }}}
|
||||||
-- {{{ Shift-Enter for not continuing the current comment
|
-- {{{ Shift-Enter for not continuing the current comment
|
||||||
-- This does not preserve intendation. Not sure what a better solution would look like.
|
-- This does not preserve intendation. Not sure what a better solution would look like.
|
||||||
|
|
|
@ -95,14 +95,6 @@ return {
|
||||||
end,
|
end,
|
||||||
},
|
},
|
||||||
|
|
||||||
-- Helper libs
|
|
||||||
{
|
|
||||||
"nvim-lua/plenary.nvim",
|
|
||||||
-- Autoload when running tests
|
|
||||||
cmd = { "PlenaryBustedDirectory", "PlenaryBustedFile" },
|
|
||||||
},
|
|
||||||
"MunifTanjim/nui.nvim",
|
|
||||||
"nvim-tree/nvim-web-devicons", -- nice looking icons
|
|
||||||
{
|
{
|
||||||
"mateiadrielrafael/scrap.nvim",
|
"mateiadrielrafael/scrap.nvim",
|
||||||
event = "InsertEnter",
|
event = "InsertEnter",
|
||||||
|
@ -111,14 +103,6 @@ return {
|
||||||
end,
|
end,
|
||||||
}, -- vim-abolish rewrite
|
}, -- vim-abolish rewrite
|
||||||
|
|
||||||
{
|
|
||||||
"terrortylor/nvim-comment",
|
|
||||||
keys = { "gc", "gcc", { "gc", mode = "v" } },
|
|
||||||
config = function()
|
|
||||||
require("nvim_comment").setup()
|
|
||||||
end,
|
|
||||||
},
|
|
||||||
|
|
||||||
{
|
{
|
||||||
-- easly switch between tmux and vim panes
|
-- easly switch between tmux and vim panes
|
||||||
"christoomey/vim-tmux-navigator",
|
"christoomey/vim-tmux-navigator",
|
||||||
|
@ -128,13 +112,6 @@ return {
|
||||||
and env.firenvim.not_active(),
|
and env.firenvim.not_active(),
|
||||||
},
|
},
|
||||||
|
|
||||||
{
|
|
||||||
-- track time usage
|
|
||||||
"wakatime/vim-wakatime",
|
|
||||||
event = "VeryLazy",
|
|
||||||
cond = env.vscode.not_active() and env.firenvim.not_active(),
|
|
||||||
},
|
|
||||||
|
|
||||||
{
|
{
|
||||||
-- show progress for lsp stuff
|
-- show progress for lsp stuff
|
||||||
"j-hui/fidget.nvim",
|
"j-hui/fidget.nvim",
|
||||||
|
@ -144,15 +121,6 @@ return {
|
||||||
config = true,
|
config = true,
|
||||||
},
|
},
|
||||||
|
|
||||||
{
|
|
||||||
-- export to pastebin like services
|
|
||||||
"rktjmp/paperplanes.nvim",
|
|
||||||
opts = {
|
|
||||||
provider = "paste.rs",
|
|
||||||
},
|
|
||||||
cmd = "PP",
|
|
||||||
},
|
|
||||||
|
|
||||||
{
|
{
|
||||||
-- case switching + the subvert command
|
-- case switching + the subvert command
|
||||||
"tpope/vim-abolish",
|
"tpope/vim-abolish",
|
||||||
|
@ -187,16 +155,6 @@ return {
|
||||||
keys = "<leader>yg",
|
keys = "<leader>yg",
|
||||||
},
|
},
|
||||||
|
|
||||||
{
|
|
||||||
-- discord rich presence
|
|
||||||
"andweeb/presence.nvim",
|
|
||||||
cond = env.vscode.not_active() and env.firenvim.not_active(),
|
|
||||||
config = function()
|
|
||||||
require("presence"):setup()
|
|
||||||
end,
|
|
||||||
event = "VeryLazy",
|
|
||||||
},
|
|
||||||
|
|
||||||
-- Live command preview for stuff like :norm
|
-- Live command preview for stuff like :norm
|
||||||
{
|
{
|
||||||
"smjonas/live-command.nvim",
|
"smjonas/live-command.nvim",
|
||||||
|
@ -210,16 +168,4 @@ return {
|
||||||
event = "VeryLazy",
|
event = "VeryLazy",
|
||||||
-- cond = false,
|
-- cond = false,
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"mbbill/undotree",
|
|
||||||
cmd = "UndotreeToggle",
|
|
||||||
init = function()
|
|
||||||
vim.keymap.set(
|
|
||||||
"n",
|
|
||||||
"<leader>u",
|
|
||||||
"<cmd>UndotreeToggle<cr>",
|
|
||||||
{ desc = "[U]ndo tree" }
|
|
||||||
)
|
|
||||||
end,
|
|
||||||
},
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -2,6 +2,7 @@ local env = require("my.helpers.env")
|
||||||
|
|
||||||
local M = {
|
local M = {
|
||||||
"L3MON4D3/LuaSnip", -- snippeting engine
|
"L3MON4D3/LuaSnip", -- snippeting engine
|
||||||
|
version = "v2",
|
||||||
cond = env.vscode.not_active(),
|
cond = env.vscode.not_active(),
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -3,8 +3,7 @@ local env = require("my.helpers.env")
|
||||||
|
|
||||||
local M = {
|
local M = {
|
||||||
"echasnovski/mini.files",
|
"echasnovski/mini.files",
|
||||||
version = "main",
|
keys = { "<C-S-F>" },
|
||||||
event = "VeryLazy",
|
|
||||||
cond = env.vscode.not_active() and env.firenvim.not_active(),
|
cond = env.vscode.not_active() and env.firenvim.not_active(),
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,5 @@
|
||||||
local M = {
|
local M = {
|
||||||
"echasnovski/mini.operators",
|
"echasnovski/mini.operators",
|
||||||
version = false,
|
|
||||||
event = "VeryLazy",
|
event = "VeryLazy",
|
||||||
opts = {},
|
opts = {},
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,6 +1,5 @@
|
||||||
local M = {
|
local M = {
|
||||||
"echasnovski/mini.surround",
|
"echasnovski/mini.surround",
|
||||||
version = "main",
|
|
||||||
event = "VeryLazy",
|
event = "VeryLazy",
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -68,8 +68,7 @@ end
|
||||||
-- {{{ Main config runtime
|
-- {{{ Main config runtime
|
||||||
local function recursive_assign(source, destination)
|
local function recursive_assign(source, destination)
|
||||||
for key, value in pairs(source) do
|
for key, value in pairs(source) do
|
||||||
if type(value) == "table" then
|
if type(value) == "table" and type(destination[key]) == "table" then
|
||||||
destination[key] = destination[key] or {}
|
|
||||||
recursive_assign(value, destination[key])
|
recursive_assign(value, destination[key])
|
||||||
else
|
else
|
||||||
destination[key] = value
|
destination[key] = value
|
||||||
|
@ -79,7 +78,7 @@ end
|
||||||
|
|
||||||
function M.configure(opts, context)
|
function M.configure(opts, context)
|
||||||
if type(opts.vim) == "table" then
|
if type(opts.vim) == "table" then
|
||||||
recursive_assign(opts, vim)
|
recursive_assign(opts.vim, vim)
|
||||||
end
|
end
|
||||||
|
|
||||||
if type(opts.keys) == "table" then
|
if type(opts.keys) == "table" then
|
||||||
|
@ -117,10 +116,14 @@ function M.configure(opts, context)
|
||||||
if
|
if
|
||||||
type(context) == "table"
|
type(context) == "table"
|
||||||
and context.opts ~= nil
|
and context.opts ~= nil
|
||||||
|
and vim.inspect(context.opts) ~= "{}"
|
||||||
and context.lazy ~= nil
|
and context.lazy ~= nil
|
||||||
then
|
then
|
||||||
-- This is a terrible way to do it :/
|
-- This is a terrible way to do it :/
|
||||||
require(context.lazy.name).setup(context.opts)
|
local status, module = pcall(require, context.lazy.name)
|
||||||
|
if status then
|
||||||
|
module.setup(context.opts)
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
if type(opts.callback) == "function" then
|
if type(opts.callback) == "function" then
|
||||||
|
|
|
@ -10,23 +10,23 @@ let
|
||||||
rnix-lsp # nix
|
rnix-lsp # nix
|
||||||
nil # nix
|
nil # nix
|
||||||
inputs.nixd.packages.${system}.nixd # nix
|
inputs.nixd.packages.${system}.nixd # nix
|
||||||
haskell-language-server # haskell
|
# haskell-language-server # haskell
|
||||||
# REASON: marked as broken
|
# REASON: marked as broken
|
||||||
# dhall-lsp-server # dhall
|
# dhall-lsp-server # dhall
|
||||||
tectonic # something related to latex (?)
|
# tectonic # something related to latex (?)
|
||||||
texlab # latex
|
texlab # latex
|
||||||
nodePackages_latest.vscode-langservers-extracted # web stuff
|
nodePackages_latest.vscode-langservers-extracted # web stuff
|
||||||
python310Packages.python-lsp-server # python
|
# python310Packages.python-lsp-server # python
|
||||||
pyright # python
|
# pyright # python
|
||||||
rust-analyzer # rust
|
rust-analyzer # rust
|
||||||
typst-lsp # typst
|
typst-lsp # typst
|
||||||
|
|
||||||
# Formatters
|
# Formatters
|
||||||
luaformatter # Lua
|
# luaformatter # Lua
|
||||||
stylua # Lua
|
stylua # Lua
|
||||||
black # Python
|
# black # Python
|
||||||
yapf # Python
|
# yapf # Python
|
||||||
isort # Reorder python imports
|
# isort # Reorder python imports
|
||||||
nodePackages_latest.purs-tidy # Purescript
|
nodePackages_latest.purs-tidy # Purescript
|
||||||
nodePackages_latest.prettier # Js & friends
|
nodePackages_latest.prettier # Js & friends
|
||||||
nodePackages_latest.prettier_d_slim # Js & friends
|
nodePackages_latest.prettier_d_slim # Js & friends
|
||||||
|
@ -34,7 +34,7 @@ let
|
||||||
|
|
||||||
# Linters
|
# Linters
|
||||||
ruff # Python linter
|
ruff # Python linter
|
||||||
mypy # Python typechecking
|
# mypy # Python typechecking
|
||||||
|
|
||||||
# Languages
|
# Languages
|
||||||
nodePackages.typescript # typescript
|
nodePackages.typescript # typescript
|
||||||
|
@ -48,20 +48,20 @@ let
|
||||||
update-nix-fetchgit # Useful for nix stuff
|
update-nix-fetchgit # Useful for nix stuff
|
||||||
tree-sitter # Syntax highlighting
|
tree-sitter # Syntax highlighting
|
||||||
libstdcxx5 # Required by treesitter aparently
|
libstdcxx5 # Required by treesitter aparently
|
||||||
python310Packages.jupytext # Convert between jupyter notebooks and python files
|
# python310Packages.jupytext # Convert between jupyter notebooks and python files
|
||||||
graphviz # For rust crate graph
|
# graphviz # For rust crate graph
|
||||||
haskellPackages.hoogle # For haskell search
|
haskellPackages.hoogle # For haskell search
|
||||||
|
|
||||||
# Preview
|
# Preview
|
||||||
zathura # Pdf reader
|
# zathura # Pdf reader
|
||||||
xdotool # For zathura reverse search or whatever it's called
|
# xdotool # For zathura reverse search or whatever it's called
|
||||||
glow # Md preview in terminal
|
# glow # Md preview in terminal
|
||||||
pandoc # Md processing
|
# pandoc # Md processing
|
||||||
libsForQt5.falkon # Needed for one of the md preview plugins I tried
|
# libsForQt5.falkon # Needed for one of the md preview plugins I tried
|
||||||
|
|
||||||
# Latex setup
|
# Latex setup
|
||||||
texlive.combined.scheme-full # Latex stuff
|
# texlive.combined.scheme-full # Latex stuff
|
||||||
python38Packages.pygments # required for latex syntax highlighting
|
# python38Packages.pygments # required for latex syntax highlighting
|
||||||
# sage
|
# sage
|
||||||
# sagetex # sage in latex
|
# sagetex # sage in latex
|
||||||
|
|
||||||
|
@ -146,6 +146,7 @@ let
|
||||||
# }}}
|
# }}}
|
||||||
|
|
||||||
nlib = config.satellite.neovim.lib;
|
nlib = config.satellite.neovim.lib;
|
||||||
|
lazy = config.satellite.neovim.lazy;
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
# {{{ Basic config
|
# {{{ Basic config
|
||||||
|
@ -216,6 +217,21 @@ in
|
||||||
tempest = "my.runtime";
|
tempest = "my.runtime";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
# {{{ libraries
|
||||||
|
# {{{ plenary
|
||||||
|
satellite.neovim.lazy.plenary = {
|
||||||
|
package = "nvim-lua/plenary.nvim";
|
||||||
|
# Autoload when running tests
|
||||||
|
cmd = [ "PlenaryBustedDirectory" "PlenaryBustedFile" ];
|
||||||
|
};
|
||||||
|
# }}}
|
||||||
|
# {{{ nui
|
||||||
|
satellite.neovim.lazy.nui.package = "MunifTanjim/nui.nvim";
|
||||||
|
# }}}
|
||||||
|
# {{{ web-devicons
|
||||||
|
satellite.neovim.lazy.web-devicons.package = "nvim-tree/nvim-web-devicons";
|
||||||
|
# }}}
|
||||||
|
# }}}
|
||||||
# {{{ ui
|
# {{{ ui
|
||||||
# {{{ nvim-tree
|
# {{{ nvim-tree
|
||||||
satellite.neovim.lazy.nvim-tree = {
|
satellite.neovim.lazy.nvim-tree = {
|
||||||
|
@ -232,6 +248,7 @@ in
|
||||||
# {{{ lualine
|
# {{{ lualine
|
||||||
satellite.neovim.lazy.lualine = {
|
satellite.neovim.lazy.lualine = {
|
||||||
package = "nvim-lualine/lualine.nvim";
|
package = "nvim-lualine/lualine.nvim";
|
||||||
|
dependencies.lua = [ lazy.web-devicons.package ];
|
||||||
|
|
||||||
env.blacklist = [ "vscode" "firenvim" ];
|
env.blacklist = [ "vscode" "firenvim" ];
|
||||||
event = "VeryLazy";
|
event = "VeryLazy";
|
||||||
|
@ -305,7 +322,22 @@ in
|
||||||
};
|
};
|
||||||
# }}}
|
# }}}
|
||||||
# }}}
|
# }}}
|
||||||
|
# {{{ visual
|
||||||
|
# The line between `ui` and `visual is a bit rought. I currenlty mostly judge
|
||||||
|
# it by vibe.
|
||||||
|
# {{{ indent-blankline
|
||||||
|
satellite.neovim.lazy.indent-blankline = {
|
||||||
|
package = "lukas-reineke/indent-blankline.nvim";
|
||||||
|
main = "ibl";
|
||||||
|
setup = true;
|
||||||
|
|
||||||
|
env.blacklist = [ "vscode" ];
|
||||||
|
event = "BufReadPost";
|
||||||
|
};
|
||||||
|
# }}}
|
||||||
|
# }}}
|
||||||
# {{{ editing
|
# {{{ editing
|
||||||
|
# {{{ text navigation
|
||||||
# {{{ flash
|
# {{{ flash
|
||||||
satellite.neovim.lazy.flash = {
|
satellite.neovim.lazy.flash = {
|
||||||
package = "folke/flash.nvim";
|
package = "folke/flash.nvim";
|
||||||
|
@ -329,6 +361,16 @@ in
|
||||||
opts.modes.char.enabled = false;
|
opts.modes.char.enabled = false;
|
||||||
};
|
};
|
||||||
# }}}
|
# }}}
|
||||||
|
# {{{ ftft (quickscope but written in lua)
|
||||||
|
satellite.neovim.lazy.ftft = {
|
||||||
|
package = "gukz/ftFT.nvim";
|
||||||
|
|
||||||
|
env.blacklist = [ "vscode" ];
|
||||||
|
keys = [ "f" "F" "t" "T" ];
|
||||||
|
setup = true;
|
||||||
|
};
|
||||||
|
# }}}
|
||||||
|
# }}}
|
||||||
# {{{ clipboard-image
|
# {{{ clipboard-image
|
||||||
satellite.neovim.lazy.clipboard-image = {
|
satellite.neovim.lazy.clipboard-image = {
|
||||||
package = "postfen/clipboard-image.nvim";
|
package = "postfen/clipboard-image.nvim";
|
||||||
|
@ -353,6 +395,71 @@ in
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
# }}}
|
# }}}
|
||||||
|
# {{{ lastplace
|
||||||
|
satellite.neovim.lazy.lastplace = {
|
||||||
|
package = "ethanholz/nvim-lastplace";
|
||||||
|
|
||||||
|
env.blacklist = [ "vscode" ];
|
||||||
|
event = "BufReadPre";
|
||||||
|
|
||||||
|
opts.lastplace_ignore_buftype = [ "quickfix" "nofile" "help" ];
|
||||||
|
};
|
||||||
|
# }}}
|
||||||
|
# {{{ undotree
|
||||||
|
satellite.neovim.lazy.undotree = {
|
||||||
|
package = "mbbill/undotree";
|
||||||
|
|
||||||
|
env.blacklist = [ "vscode" ];
|
||||||
|
cmd = "UndotreeToggle";
|
||||||
|
keys = {
|
||||||
|
mapping = "<leader>u";
|
||||||
|
action = "<cmd>UndoTreeToggle<cr>";
|
||||||
|
desc = "[U]ndo tree";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
# }}}
|
||||||
|
# {{{ ssr (structured search & replace)
|
||||||
|
satellite.neovim.lazy.ssr = {
|
||||||
|
package = "cshuaimin/ssr.nvim";
|
||||||
|
|
||||||
|
env.blacklist = [ "vscode" ];
|
||||||
|
keys = {
|
||||||
|
mode = "nx";
|
||||||
|
mapping = "<leader>rt";
|
||||||
|
action = nlib.thunk /* lua */ ''require("ssr").open()'';
|
||||||
|
desc = "[r]eplace [t]emplate";
|
||||||
|
};
|
||||||
|
|
||||||
|
opts.keymaps.replace_all = "<s-cr>";
|
||||||
|
};
|
||||||
|
# }}}
|
||||||
|
# {{{ edit-code-block (edit injections in separate buffers)
|
||||||
|
satellite.neovim.lazy.edit-code-block = {
|
||||||
|
package = "dawsers/edit-code-block.nvim";
|
||||||
|
dependencies.lua = [ "nvim-treesitter/nvim-treesitter" ];
|
||||||
|
main = "ecb";
|
||||||
|
|
||||||
|
env.blacklist = [ "vscode" ];
|
||||||
|
setup = true;
|
||||||
|
keys = {
|
||||||
|
mapping = "<leader>e";
|
||||||
|
action = "<cmd>EditCodeBlock<cr>";
|
||||||
|
desc = "[e]dit injection";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
# }}}
|
||||||
|
# {{{ mini.comment
|
||||||
|
satellite.neovim.lazy.mini-comment = {
|
||||||
|
package = "echasnovski/mini.comment";
|
||||||
|
name = "mini.comment";
|
||||||
|
|
||||||
|
setup = true;
|
||||||
|
keys = [
|
||||||
|
{ mapping = "gc"; mode = "nxv"; }
|
||||||
|
{ mapping = "gcc"; }
|
||||||
|
];
|
||||||
|
};
|
||||||
|
# }}}
|
||||||
# }}}
|
# }}}
|
||||||
# {{{ ide
|
# {{{ ide
|
||||||
# {{{ conform
|
# {{{ conform
|
||||||
|
@ -396,7 +503,7 @@ in
|
||||||
# {{{ haskell
|
# {{{ haskell
|
||||||
satellite.neovim.lazy.haskell-tools = {
|
satellite.neovim.lazy.haskell-tools = {
|
||||||
package = "mrcjkb/haskell-tools.nvim";
|
package = "mrcjkb/haskell-tools.nvim";
|
||||||
dependencies.lua = [ "nvim-lua/plenary.nvim" ];
|
dependencies.lua = [ lazy.plenary.package ];
|
||||||
version = "^2";
|
version = "^2";
|
||||||
|
|
||||||
env.blacklist = [ "vscode" ];
|
env.blacklist = [ "vscode" ];
|
||||||
|
@ -439,7 +546,7 @@ in
|
||||||
# {{{ crates
|
# {{{ crates
|
||||||
satellite.neovim.lazy.crates = {
|
satellite.neovim.lazy.crates = {
|
||||||
package = "saecki/crates.nvim";
|
package = "saecki/crates.nvim";
|
||||||
dependencies.lua = [ "nvim-lua/plenary.nvim" ];
|
dependencies.lua = [ lazy.plenary.package ];
|
||||||
|
|
||||||
env.blacklist = [ "vscode" ];
|
env.blacklist = [ "vscode" ];
|
||||||
event = "BufReadPost Cargo.toml";
|
event = "BufReadPost Cargo.toml";
|
||||||
|
@ -483,7 +590,7 @@ in
|
||||||
# {{{ Keymap helpers
|
# {{{ Keymap helpers
|
||||||
keymap = mapping: action: desc: {
|
keymap = mapping: action: desc: {
|
||||||
inherit mapping desc;
|
inherit mapping desc;
|
||||||
action = nlib.lua ''require("crates").${action}'';
|
action = nlib.lua /* lua */ ''require("crates").${action}'';
|
||||||
};
|
};
|
||||||
|
|
||||||
keyroot = "<leader>lc";
|
keyroot = "<leader>lc";
|
||||||
|
@ -512,5 +619,47 @@ in
|
||||||
# }}}
|
# }}}
|
||||||
# }}}
|
# }}}
|
||||||
# }}}
|
# }}}
|
||||||
|
# {{{ external
|
||||||
|
# These plugins integrate neovim with external services
|
||||||
|
# {{{ wakatime
|
||||||
|
satellite.neovim.lazy.wakatime = {
|
||||||
|
package = "wakatime/vim-wakatime";
|
||||||
|
env.blacklist = [ "vscode" "firenvim" ];
|
||||||
|
event = "VeryLazy";
|
||||||
|
};
|
||||||
|
# }}}
|
||||||
|
# {{{ discord rich presence
|
||||||
|
satellite.neovim.lazy.discord-rich-presence = {
|
||||||
|
package = "andweeb/presence.nvim";
|
||||||
|
main = "presence";
|
||||||
|
|
||||||
|
env.blacklist = [ "vscode" "firenvim" ];
|
||||||
|
event = "VeryLazy";
|
||||||
|
setup = true;
|
||||||
|
};
|
||||||
|
# }}}
|
||||||
|
# {{{ gitlinker
|
||||||
|
# generate permalinks for code
|
||||||
|
satellite.neovim.lazy.gitlinker =
|
||||||
|
let mapping = "<leader>yg";
|
||||||
|
in
|
||||||
|
{
|
||||||
|
package = "ruifm/gitlinker.nvim";
|
||||||
|
dependencies.lua = [ lazy.plenary.package ];
|
||||||
|
|
||||||
|
env.blacklist = [ "vscode" "firenvim" ];
|
||||||
|
opts.mappings = mapping;
|
||||||
|
keys = mapping;
|
||||||
|
};
|
||||||
|
# }}}
|
||||||
|
# {{{ paperplanes
|
||||||
|
# export to pastebin like services
|
||||||
|
satellite.neovim.lazy.paperlanes = {
|
||||||
|
package = "rktjmp/paperplanes.nvim";
|
||||||
|
cmd = "PP";
|
||||||
|
opts.provider = "paste.rs";
|
||||||
|
};
|
||||||
|
# }}}
|
||||||
|
# }}}
|
||||||
# }}}
|
# }}}
|
||||||
}
|
}
|
||||||
|
|
|
@ -101,7 +101,6 @@
|
||||||
satellite.persistence.at.state.apps.Steam = {
|
satellite.persistence.at.state.apps.Steam = {
|
||||||
directories = [
|
directories = [
|
||||||
".factorio" # TODO: perhaps this should have it's own file?
|
".factorio" # TODO: perhaps this should have it's own file?
|
||||||
|
|
||||||
# A couple of games don't play well with bindfs
|
# A couple of games don't play well with bindfs
|
||||||
{
|
{
|
||||||
directory = "${config.xdg.dataHome}/Steam";
|
directory = "${config.xdg.dataHome}/Steam";
|
||||||
|
|
|
@ -11,7 +11,7 @@ in
|
||||||
|
|
||||||
wayland.windowManager.hyprland = {
|
wayland.windowManager.hyprland = {
|
||||||
enable = true;
|
enable = true;
|
||||||
package = inputs.hyprland.packages.${pkgs.system}.hyprland;
|
package = pkgs.hyprland;
|
||||||
settings = { };
|
settings = { };
|
||||||
extraConfig = ''
|
extraConfig = ''
|
||||||
${builtins.readFile ./hyprland.conf}
|
${builtins.readFile ./hyprland.conf}
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
{ inputs, pkgs, ... }: {
|
{ pkgs, ... }: {
|
||||||
imports = [
|
imports = [
|
||||||
./global.nix
|
./global.nix
|
||||||
|
|
||||||
|
@ -7,7 +7,6 @@
|
||||||
./features/desktop/firefox
|
./features/desktop/firefox
|
||||||
./features/desktop/discord
|
./features/desktop/discord
|
||||||
./features/cli/productivity
|
./features/cli/productivity
|
||||||
./features/cli/khal.nix
|
|
||||||
./features/cli/pass.nix
|
./features/cli/pass.nix
|
||||||
./features/neovim
|
./features/neovim
|
||||||
|
|
||||||
|
@ -19,33 +18,32 @@
|
||||||
home.packages = with pkgs; [
|
home.packages = with pkgs; [
|
||||||
# Desktop apps
|
# Desktop apps
|
||||||
# {{{ Communication
|
# {{{ Communication
|
||||||
signal-desktop # Signal client
|
# signal-desktop # Signal client
|
||||||
element-desktop # Matrix client
|
element-desktop # Matrix client
|
||||||
zoom-us # Zoom client 🤮
|
# zoom-us # Zoom client 🤮
|
||||||
inputs.matui.packages.${pkgs.system}.matui # Matrix TUi
|
# inputs.matui.packages.${pkgs.system}.matui # Matrix TUi
|
||||||
# }}}
|
# }}}
|
||||||
# {{{ Editors for different formats
|
# {{{ Editors for different formats
|
||||||
gimp # Image editing
|
# gimp # Image editing
|
||||||
lmms # Music software
|
# lmms # Music software
|
||||||
# kicad # PCB editing
|
# kicad # PCB editing
|
||||||
libreoffice # Free office suite
|
# libreoffice # Free office suite
|
||||||
# }}}
|
# }}}
|
||||||
# {{{ Gaming
|
# {{{ Gaming
|
||||||
wine # Windows compat layer or whatever
|
# wine # Windows compat layer or whatever
|
||||||
lutris # Game launcher
|
# lutris # Game launcher
|
||||||
# }}}
|
# }}}
|
||||||
# {{{ Clis
|
# {{{ Clis
|
||||||
sherlock # Search for usernames across different websites
|
# sherlock # Search for usernames across different websites
|
||||||
# }}}
|
# }}}
|
||||||
# {{{ Misc
|
# {{{ Misc
|
||||||
obsidian # Notes
|
obsidian # Notes
|
||||||
peek # GIF recorder
|
# peek # GIF recorder
|
||||||
mpv # Video player
|
# mpv # Video player
|
||||||
# plover.dev # steno engine
|
# plover.dev # steno engine
|
||||||
qbittorrent # Torrent client
|
# qbittorrent # Torrent client
|
||||||
# google-chrome # Not my primary browser, but sometimes needed in webdev
|
# google-chrome # Not my primary browser, but sometimes needed in webdev
|
||||||
# obs-studio # video recorder
|
# obs-studio # video recorder
|
||||||
|
|
||||||
# }}}
|
# }}}
|
||||||
];
|
];
|
||||||
|
|
||||||
|
@ -66,7 +64,7 @@
|
||||||
# App state I want to keep
|
# App state I want to keep
|
||||||
at.state.path = "/persist/state";
|
at.state.path = "/persist/state";
|
||||||
|
|
||||||
# App state which I should be able to delete at any point
|
# App state which I should be able to delete on a whim
|
||||||
at.cache.path = "/persist/local/cache";
|
at.cache.path = "/persist/local/cache";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
let
|
let
|
||||||
# {{{ Imports
|
# {{{ Imports
|
||||||
imports = [
|
imports = [
|
||||||
inputs.hyprland.nixosModules.default
|
# inputs.hyprland.nixosModules.default
|
||||||
inputs.disko.nixosModules.default
|
inputs.disko.nixosModules.default
|
||||||
inputs.agenix.nixosModules.default
|
inputs.agenix.nixosModules.default
|
||||||
inputs.stylix.nixosModules.stylix
|
inputs.stylix.nixosModules.stylix
|
||||||
|
|
|
@ -29,7 +29,13 @@
|
||||||
|
|
||||||
settings = {
|
settings = {
|
||||||
# Enable flakes and new 'nix' command
|
# Enable flakes and new 'nix' command
|
||||||
experimental-features = [ "nix-command" "flakes" "repl-flake" ];
|
experimental-features = [
|
||||||
|
"nix-command"
|
||||||
|
"flakes"
|
||||||
|
"repl-flake"
|
||||||
|
"auto-allocate-uids"
|
||||||
|
# "configurable-impure-env"
|
||||||
|
];
|
||||||
|
|
||||||
# Disable warning when rebuilding before commiting
|
# Disable warning when rebuilding before commiting
|
||||||
warn-dirty = false;
|
warn-dirty = false;
|
||||||
|
@ -39,7 +45,6 @@
|
||||||
|
|
||||||
# TODO: what is a trusted user?
|
# TODO: what is a trusted user?
|
||||||
trusted-users = [ "root" "@wheel" ];
|
trusted-users = [ "root" "@wheel" ];
|
||||||
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,6 +1,5 @@
|
||||||
# The main configuration is specified by home-manager
|
# The main configuration is specified by home-manager
|
||||||
{ inputs, pkgs, ... }: {
|
{ inputs, pkgs, ... }: {
|
||||||
programs.hyprland.enable = true;
|
programs.hyprland.enable = true;
|
||||||
programs.hyprland.package =
|
programs.hyprland.package = pkgs.hyprland;
|
||||||
inputs.hyprland.packages.${pkgs.system}.hyprland;
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -22,11 +22,7 @@ in
|
||||||
tethys.id = "NGHX5G4-IY3ZXL2-NQMMRQV-2GDQLC6-LIDWSNG-DAJUAQH-KBAP64V-55K2LQ6";
|
tethys.id = "NGHX5G4-IY3ZXL2-NQMMRQV-2GDQLC6-LIDWSNG-DAJUAQH-KBAP64V-55K2LQ6";
|
||||||
};
|
};
|
||||||
|
|
||||||
extraOptions = {
|
extraOptions.options.crashReportingEnabled = false;
|
||||||
options = {
|
|
||||||
crashReportingEnabled = false;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
xdg.portal = {
|
xdg.portal = {
|
||||||
enable = true;
|
enable = true;
|
||||||
xdgOpenUsePortal = true;
|
xdgOpenUsePortal = true;
|
||||||
extraPortals = [ pkgs.xdg-desktop-portal-gtk ];
|
configPackages = [ pkgs.xdg-desktop-portal-gtk ];
|
||||||
};
|
};
|
||||||
|
|
||||||
environment.systemPackages = [ pkgs.xdg-utils ];
|
environment.systemPackages = [ pkgs.xdg-utils ];
|
||||||
|
|
|
@ -12,7 +12,7 @@
|
||||||
../common/optional/xdg-portal.nix
|
../common/optional/xdg-portal.nix
|
||||||
../common/optional/hyprland.nix
|
../common/optional/hyprland.nix
|
||||||
../common/optional/quietboot.nix
|
../common/optional/quietboot.nix
|
||||||
../common/optional/gitea.nix
|
# ../common/optional/gitea.nix
|
||||||
|
|
||||||
./hardware
|
./hardware
|
||||||
./services/syncthing.nix
|
./services/syncthing.nix
|
||||||
|
|
|
@ -46,6 +46,7 @@ let
|
||||||
};
|
};
|
||||||
|
|
||||||
options.action = lib.mkOption {
|
options.action = lib.mkOption {
|
||||||
|
default = null;
|
||||||
type = types.nullOr (types.oneOf [
|
type = types.nullOr (types.oneOf [
|
||||||
types.str
|
types.str
|
||||||
myTypes.luaLiteral
|
myTypes.luaLiteral
|
||||||
|
|
Loading…
Reference in a new issue