add nixvim config
This commit is contained in:
parent
1da91f0176
commit
83dfbf9260
6 changed files with 421 additions and 12 deletions
144
flake.lock
generated
144
flake.lock
generated
|
|
@ -56,6 +56,45 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-parts": {
|
||||
"inputs": {
|
||||
"nixpkgs-lib": [
|
||||
"nixvim",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1762440070,
|
||||
"narHash": "sha256-xxdepIcb39UJ94+YydGP221rjnpkDZUlykKuF54PsqI=",
|
||||
"owner": "hercules-ci",
|
||||
"repo": "flake-parts",
|
||||
"rev": "26d05891e14c88eb4a5d5bee659c0db5afb609d8",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hercules-ci",
|
||||
"repo": "flake-parts",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-utils": {
|
||||
"inputs": {
|
||||
"systems": "systems"
|
||||
},
|
||||
"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"
|
||||
}
|
||||
},
|
||||
"home-manager": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
|
|
@ -76,6 +115,34 @@
|
|||
"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"
|
||||
}
|
||||
},
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1762111121,
|
||||
|
|
@ -92,6 +159,52 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixvim": {
|
||||
"inputs": {
|
||||
"flake-parts": "flake-parts",
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
],
|
||||
"nuschtosSearch": "nuschtosSearch",
|
||||
"systems": "systems_2"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1762523528,
|
||||
"narHash": "sha256-VH4+fAB85irWuzxfWPfEEwDOE+eQsB/pljNApM0onuU=",
|
||||
"owner": "nix-community",
|
||||
"repo": "nixvim",
|
||||
"rev": "3031d4ab616323f6d41704dfb46f2b801f29973d",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-community",
|
||||
"repo": "nixvim",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nuschtosSearch": {
|
||||
"inputs": {
|
||||
"flake-utils": "flake-utils",
|
||||
"ixx": "ixx",
|
||||
"nixpkgs": [
|
||||
"nixvim",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1761730856,
|
||||
"narHash": "sha256-t1i5p/vSWwueZSC0Z2BImxx3BjoUDNKyC2mk24krcMY=",
|
||||
"owner": "NuschtOS",
|
||||
"repo": "search",
|
||||
"rev": "e29de6db0cb3182e9aee75a3b1fd1919d995d85b",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NuschtOS",
|
||||
"repo": "search",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"plasma-manager": {
|
||||
"inputs": {
|
||||
"home-manager": [
|
||||
|
|
@ -121,8 +234,39 @@
|
|||
"catppuccin": "catppuccin",
|
||||
"home-manager": "home-manager",
|
||||
"nixpkgs": "nixpkgs",
|
||||
"nixvim": "nixvim",
|
||||
"plasma-manager": "plasma-manager"
|
||||
}
|
||||
},
|
||||
"systems": {
|
||||
"locked": {
|
||||
"lastModified": 1681028828,
|
||||
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"systems_2": {
|
||||
"locked": {
|
||||
"lastModified": 1681028828,
|
||||
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"type": "github"
|
||||
}
|
||||
}
|
||||
},
|
||||
"root": "root",
|
||||
|
|
|
|||
12
flake.nix
12
flake.nix
|
|
@ -20,6 +20,11 @@
|
|||
inputs.home-manager.follows = "home-manager";
|
||||
};
|
||||
|
||||
nixvim = {
|
||||
url = "github:nix-community/nixvim";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
|
||||
apple-silicon = {
|
||||
url = "github:nix-community/nixos-apple-silicon";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
|
|
@ -32,6 +37,7 @@
|
|||
catppuccin,
|
||||
home-manager,
|
||||
plasma-manager,
|
||||
nixvim,
|
||||
apple-silicon,
|
||||
...
|
||||
}:
|
||||
|
|
@ -52,7 +58,10 @@
|
|||
catppuccin.nixosModules.catppuccin
|
||||
home-manager.nixosModules.home-manager
|
||||
{
|
||||
home-manager.sharedModules = [ plasma-manager.homeModules.plasma-manager ];
|
||||
home-manager.sharedModules = [
|
||||
plasma-manager.homeModules.plasma-manager
|
||||
nixvim.homeModules.nixvim
|
||||
];
|
||||
}
|
||||
]
|
||||
++ extraModules;
|
||||
|
|
@ -74,6 +83,7 @@
|
|||
catppuccin.homeModules.catppuccin
|
||||
home-manager.homeModules.home-manager
|
||||
plasma-manager.homeModules.plasma-manager
|
||||
nixvim.homeModules.nixvim
|
||||
];
|
||||
};
|
||||
in
|
||||
|
|
|
|||
|
|
@ -8,7 +8,6 @@
|
|||
|
||||
programs.plasma = {
|
||||
workspace = {
|
||||
# lookAndFeel = "Catppuccin-Mocha-Blue";
|
||||
colorScheme = "CatppuccinMochaBlue";
|
||||
cursor.theme = "catppuccin-mocha-blue-cursors";
|
||||
splashScreen.theme = "Catpppuccin-Mocha-Blue";
|
||||
|
|
|
|||
197
home/all.nix
197
home/all.nix
|
|
@ -3,18 +3,16 @@
|
|||
{
|
||||
home.packages = with pkgs; [
|
||||
vesktop
|
||||
fish
|
||||
gh
|
||||
adwsteamgtk
|
||||
prismlauncher
|
||||
tmux
|
||||
fastfetch
|
||||
btop
|
||||
neovim
|
||||
# neovim
|
||||
killall
|
||||
wget
|
||||
ripgrep
|
||||
kitty
|
||||
ncdu
|
||||
fzf
|
||||
wl-clipboard
|
||||
|
|
@ -48,6 +46,172 @@
|
|||
};
|
||||
};
|
||||
|
||||
programs.kitty = {
|
||||
enable = true;
|
||||
enableGitIntegration = true;
|
||||
themeFile = "Catppuccin-Mocha";
|
||||
font = {
|
||||
name = "Noto Sans Mono";
|
||||
size = 10;
|
||||
};
|
||||
shellIntegration.enableFishIntegration = true;
|
||||
extraConfig = "\nwheel_scroll_multiplier 5.0";
|
||||
};
|
||||
|
||||
programs.fish = {
|
||||
enable = true;
|
||||
interactiveShellInit = ''
|
||||
set fish_greeting # Disable greeting
|
||||
'';
|
||||
};
|
||||
|
||||
programs.nixvim = {
|
||||
enable = true;
|
||||
defaultEditor = true;
|
||||
waylandSupport = true;
|
||||
viAlias = true;
|
||||
vimAlias = true;
|
||||
clipboard = {
|
||||
register = "unnamedplus";
|
||||
providers.wl-copy.enable = true;
|
||||
};
|
||||
opts = {
|
||||
tabstop = 2;
|
||||
softtabstop = 2;
|
||||
shiftwidth = 2;
|
||||
expandtab = true;
|
||||
number = true;
|
||||
};
|
||||
colorschemes.catppuccin = {
|
||||
enable = true;
|
||||
settings = {
|
||||
flavour = "mocha";
|
||||
};
|
||||
};
|
||||
keymaps = [
|
||||
# --- Normal mode mappings ---
|
||||
{
|
||||
mode = "n";
|
||||
key = "<C-c>";
|
||||
action = "\"+y";
|
||||
options = {
|
||||
noremap = true;
|
||||
silent = true;
|
||||
};
|
||||
}
|
||||
{
|
||||
mode = "n";
|
||||
key = "<C-p>";
|
||||
action = "\"+p";
|
||||
options = {
|
||||
noremap = true;
|
||||
silent = true;
|
||||
};
|
||||
}
|
||||
|
||||
# --- Visual mode mappings ---
|
||||
{
|
||||
mode = "v";
|
||||
key = "<C-c>";
|
||||
action = "\"+y";
|
||||
options = {
|
||||
noremap = true;
|
||||
silent = true;
|
||||
};
|
||||
}
|
||||
{
|
||||
mode = "v";
|
||||
key = "<C-p>";
|
||||
action = "\"+p";
|
||||
options = {
|
||||
noremap = true;
|
||||
silent = true;
|
||||
};
|
||||
}
|
||||
];
|
||||
plugins = {
|
||||
nvim-autopairs = {
|
||||
enable = true;
|
||||
# autoLoad = true;
|
||||
};
|
||||
cmp = {
|
||||
autoEnableSources = true;
|
||||
enable = true;
|
||||
# autoLoad = true;
|
||||
};
|
||||
copilot-lua = {
|
||||
enable = true;
|
||||
# autoLoad = true;
|
||||
};
|
||||
conform-nvim = {
|
||||
enable = true;
|
||||
# autoLoad = true;
|
||||
settings = {
|
||||
formatters_by_ft = {
|
||||
lua = [ "stylua" ];
|
||||
python = [
|
||||
"isort"
|
||||
"black"
|
||||
];
|
||||
nix = [ "nixfmt" ];
|
||||
javascript = [
|
||||
"deno fmt"
|
||||
"prettier"
|
||||
];
|
||||
css = [
|
||||
"deno fmt"
|
||||
"prettier"
|
||||
];
|
||||
json = [
|
||||
"deno fmt"
|
||||
"prettier"
|
||||
];
|
||||
jsonc = [
|
||||
"deno fmt"
|
||||
"prettier"
|
||||
];
|
||||
};
|
||||
|
||||
# Default formatting options
|
||||
default_format_opts = {
|
||||
lsp_format = "fallback";
|
||||
};
|
||||
|
||||
# Format-on-save behavior
|
||||
format_on_save = {
|
||||
timeout_ms = 500;
|
||||
};
|
||||
|
||||
# Custom formatter settings
|
||||
formatters = {
|
||||
shfmt = {
|
||||
append_args = [
|
||||
"-i"
|
||||
"2"
|
||||
];
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
fzf-lua = {
|
||||
enable = true;
|
||||
# autoLoad = true;
|
||||
};
|
||||
kitty-scrollback = {
|
||||
enable = true;
|
||||
# autoLoad = true;
|
||||
};
|
||||
lsp = {
|
||||
enable = true;
|
||||
# autoLoad = true;
|
||||
};
|
||||
lualine = {
|
||||
enable = true;
|
||||
# autoLoad = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
programs.plasma = {
|
||||
enable = true;
|
||||
overrideConfig = true;
|
||||
|
|
@ -65,6 +229,22 @@
|
|||
cursor.size = 24;
|
||||
};
|
||||
|
||||
kwin = {
|
||||
titlebarButtons = {
|
||||
left = [
|
||||
"application-menu"
|
||||
"on-all-desktops"
|
||||
"keep-below-windows"
|
||||
"keep-above-windows"
|
||||
];
|
||||
right = [
|
||||
"minimize"
|
||||
"maximize"
|
||||
"close"
|
||||
];
|
||||
};
|
||||
};
|
||||
|
||||
configFile = {
|
||||
kwinrc.Desktops.Number = 3;
|
||||
# kdeglobals.KDE.AutomaticLookAndFeel = true;
|
||||
|
|
@ -109,7 +289,8 @@
|
|||
launchers = [
|
||||
"applications:firefox.desktop"
|
||||
"applications:org.kde.dolphin.desktop"
|
||||
"applications:org.kde.konsole.desktop"
|
||||
"applications:vesktop.desktop"
|
||||
"applications:kitty.desktop"
|
||||
];
|
||||
};
|
||||
}
|
||||
|
|
@ -131,12 +312,14 @@
|
|||
shown = [
|
||||
"org.kde.plasma.battery"
|
||||
"org.kde.plasma.bluetooth"
|
||||
];
|
||||
# And explicitly hide networkmanagement and volume
|
||||
hidden = [
|
||||
"org.kde.plasma.networkmanagement"
|
||||
"org.kde.plasma.volume"
|
||||
];
|
||||
# And explicitly hide networkmanagement and volume
|
||||
# hidden = [
|
||||
# "org.kde.plasma.networkmanagement"
|
||||
# "org.kde.plasma.volume"
|
||||
# ];
|
||||
};
|
||||
}
|
||||
{
|
||||
|
|
|
|||
|
|
@ -7,8 +7,21 @@
|
|||
};
|
||||
|
||||
programs.plasma = {
|
||||
|
||||
input.touchpads = [
|
||||
{
|
||||
name = "Apple MTP multi-touch";
|
||||
vendorId = "05ac";
|
||||
productId = "0352";
|
||||
disableWhileTyping = false;
|
||||
enable = true;
|
||||
tapToClick = false;
|
||||
naturalScroll = true;
|
||||
accelerationProfile = "default";
|
||||
}
|
||||
];
|
||||
|
||||
workspace = {
|
||||
# lookAndFeel = "Catppuccin-Mocha-Peach";
|
||||
colorScheme = "CatppuccinMochaPeach";
|
||||
cursor.theme = "catppuccin-mocha-peach-cursors";
|
||||
splashScreen.theme = "Catpppuccin-Mocha-Peach";
|
||||
|
|
|
|||
|
|
@ -115,6 +115,68 @@
|
|||
|
||||
security.sudo.wheelNeedsPassword = false;
|
||||
|
||||
programs.firefox = {
|
||||
enable = true;
|
||||
preferences = {
|
||||
"widget.use-xdg-desktop-portal.file-picker" = 1;
|
||||
"widget.gtk.global-menu.enabled" = true;
|
||||
"widget.gtk.global-menu.wayland.enabled" = true;
|
||||
"browser.tabs.inTitlebar" = 0;
|
||||
"extensions.pocket.enabled" = false;
|
||||
"extensions.screenshots.disabled" = true;
|
||||
"browser.topsites.contile.enabled" = false;
|
||||
"browser.formfill.enable" = false;
|
||||
"browser.search.suggest.enabled" = false;
|
||||
"browser.search.suggest.enabled.private" = false;
|
||||
"browser.urlbar.suggest.searches" = false;
|
||||
"browser.urlbar.showSearchSuggestionsFirst" = false;
|
||||
"browser.newtabpage.activity-stream.feeds.section.topstories" = false;
|
||||
"browser.newtabpage.activity-stream.feeds.snippets" = false;
|
||||
"browser.newtabpage.activity-stream.section.highlights.includePocket" = false;
|
||||
"browser.newtabpage.activity-stream.section.highlights.includeBookmarks" = false;
|
||||
"browser.newtabpage.activity-stream.section.highlights.includeDownloads" = false;
|
||||
"browser.newtabpage.activity-stream.section.highlights.includeVisited" = false;
|
||||
"browser.newtabpage.activity-stream.showSponsored" = false;
|
||||
"browser.newtabpage.activity-stream.system.showSponsored" = false;
|
||||
"browser.newtabpage.activity-stream.showSponsoredTopSites" = false;
|
||||
};
|
||||
policies = {
|
||||
DisableTelemetry = true;
|
||||
DisableFirefoxStudies = true;
|
||||
EnableTrackingProtection = {
|
||||
Value = true;
|
||||
Locked = true;
|
||||
Cryptomining = true;
|
||||
Fingerprinting = true;
|
||||
};
|
||||
DisablePocket = true;
|
||||
DisableFirefoxScreenshots = true;
|
||||
OverrideFirstRunPage = "";
|
||||
OverridePostUpdatePage = "";
|
||||
DontCheckDefaultBrowser = true;
|
||||
DisplayBookmarksToolbar = "newtab"; # alternatives: "always" or "newtab"
|
||||
DisplayMenuBar = "default-off"; # alternatives: "always", "never" or "default-on"
|
||||
SearchBar = "unified"; # alternative: "separate"
|
||||
|
||||
# ---- EXTENSIONS ----
|
||||
# Check about:support for extension/add-on ID strings.
|
||||
# Valid strings for installation_mode are "allowed", "blocked",
|
||||
# "force_installed" and "normal_installed".
|
||||
# ExtensionSettings = {
|
||||
# # blocks all addons except the ones specified below
|
||||
# "*".installation_mode = "blocked";
|
||||
# "uBlock0@raymondhill.net" = {
|
||||
# install_url = "https://addons.mozilla.org/firefox/downloads/latest/ublock-origin/latest.xpi";
|
||||
# installation_mode = "force_installed";
|
||||
# };
|
||||
# "plasma-browser-integration@kde.org" = {
|
||||
# install_url = "https://addons.mozilla.org/firefox/downloads/latest/plasma-integration/latest.xpi";
|
||||
# installation_mode = "force_installed";
|
||||
# };
|
||||
# };
|
||||
};
|
||||
};
|
||||
|
||||
programs.bash = {
|
||||
interactiveShellInit = ''
|
||||
if [[ $(${pkgs.procps}/bin/ps --no-header --pid=$PPID --format=comm) != "fish" && -z ''${BASH_EXECUTION_STRING} ]]
|
||||
|
|
@ -125,8 +187,6 @@
|
|||
'';
|
||||
};
|
||||
|
||||
programs.firefox.enable = true;
|
||||
|
||||
nixpkgs.config.allowUnfree = true;
|
||||
|
||||
environment = {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue