nvim stuff
This commit is contained in:
20
flake.lock
generated
20
flake.lock
generated
@@ -321,12 +321,26 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"nixpkgs_4": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1754340878,
|
||||||
|
"narHash": "sha256-lgmUyVQL9tSnvvIvBp7x1euhkkCho7n3TMzgjdvgPoU=",
|
||||||
|
"owner": "NixOS",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "cab778239e705082fe97bb4990e0d24c50924c04",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "NixOS",
|
||||||
|
"ref": "nixpkgs-unstable",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"nixvim": {
|
"nixvim": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-parts": "flake-parts",
|
"flake-parts": "flake-parts",
|
||||||
"nixpkgs": [
|
"nixpkgs": "nixpkgs_4",
|
||||||
"nixpkgs"
|
|
||||||
],
|
|
||||||
"nuschtosSearch": "nuschtosSearch",
|
"nuschtosSearch": "nuschtosSearch",
|
||||||
"systems": "systems_3"
|
"systems": "systems_3"
|
||||||
},
|
},
|
||||||
|
|||||||
19
flake.nix
19
flake.nix
@@ -29,7 +29,6 @@
|
|||||||
};
|
};
|
||||||
nixvim = {
|
nixvim = {
|
||||||
url = "github:nix-community/nixvim";
|
url = "github:nix-community/nixvim";
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
|
||||||
};
|
};
|
||||||
secrets = {
|
secrets = {
|
||||||
url = "git+ssh://git@github.com/cschmatzler/nixos-config-secrets.git";
|
url = "git+ssh://git@github.com/cschmatzler/nixos-config-secrets.git";
|
||||||
@@ -38,18 +37,18 @@
|
|||||||
};
|
};
|
||||||
outputs =
|
outputs =
|
||||||
{
|
{
|
||||||
self,
|
|
||||||
darwin,
|
|
||||||
nix-homebrew,
|
|
||||||
homebrew-bundle,
|
|
||||||
homebrew-core,
|
|
||||||
homebrew-cask,
|
|
||||||
home-manager,
|
|
||||||
nixpkgs,
|
|
||||||
disko,
|
|
||||||
agenix,
|
agenix,
|
||||||
|
darwin,
|
||||||
|
disko,
|
||||||
|
home-manager,
|
||||||
|
homebrew-bundle,
|
||||||
|
homebrew-cask,
|
||||||
|
homebrew-core,
|
||||||
|
nix-homebrew,
|
||||||
|
nixpkgs,
|
||||||
nixvim,
|
nixvim,
|
||||||
secrets,
|
secrets,
|
||||||
|
self,
|
||||||
}@inputs:
|
}@inputs:
|
||||||
let
|
let
|
||||||
systemLib = import ./lib/systems.nix inputs;
|
systemLib = import ./lib/systems.nix inputs;
|
||||||
|
|||||||
@@ -16,8 +16,4 @@
|
|||||||
home-manager.users.${user} = {
|
home-manager.users.${user} = {
|
||||||
programs.git.userEmail = "christoph@schmatzler.com";
|
programs.git.userEmail = "christoph@schmatzler.com";
|
||||||
};
|
};
|
||||||
|
|
||||||
environment.systemPackages = with pkgs; [
|
|
||||||
slack
|
|
||||||
];
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -35,7 +35,6 @@ in
|
|||||||
"sd_mod"
|
"sd_mod"
|
||||||
];
|
];
|
||||||
kernelPackages = pkgs.linuxPackages_latest;
|
kernelPackages = pkgs.linuxPackages_latest;
|
||||||
kernelModules = [ "uinput" ];
|
|
||||||
};
|
};
|
||||||
|
|
||||||
time.timeZone = "UTC";
|
time.timeZone = "UTC";
|
||||||
@@ -50,33 +49,17 @@ in
|
|||||||
|
|
||||||
programs = {
|
programs = {
|
||||||
gnupg.agent.enable = true;
|
gnupg.agent.enable = true;
|
||||||
dconf.enable = true;
|
|
||||||
fish.enable = true;
|
fish.enable = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
services = {
|
services = {
|
||||||
displayManager.defaultSession = "none+bspwm";
|
openssh = {
|
||||||
xserver = {
|
|
||||||
enable = true;
|
enable = true;
|
||||||
|
settings = {
|
||||||
displayManager.lightdm = {
|
PermitRootLogin = "yes";
|
||||||
enable = true;
|
PasswordAuthentication = false;
|
||||||
greeters.slick.enable = true;
|
|
||||||
background = ../../profiles/nixos/config/login-wallpaper.png;
|
|
||||||
};
|
|
||||||
|
|
||||||
windowManager.bspwm = {
|
|
||||||
enable = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
xkb = {
|
|
||||||
layout = "us";
|
|
||||||
options = "ctrl:nocaps";
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
libinput.enable = true;
|
|
||||||
openssh.enable = true;
|
|
||||||
syncthing = {
|
syncthing = {
|
||||||
enable = true;
|
enable = true;
|
||||||
openDefaultPorts = true;
|
openDefaultPorts = true;
|
||||||
@@ -94,138 +77,14 @@ in
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
# Picom, my window compositor with fancy effects
|
|
||||||
#
|
|
||||||
# Notes on writing exclude rules:
|
|
||||||
#
|
|
||||||
# class_g looks up index 1 in WM_CLASS value for an application
|
|
||||||
# class_i looks up index 0
|
|
||||||
#
|
|
||||||
# To find the value for a specific application, use `xprop` at the
|
|
||||||
# terminal and then click on a window of the application in question
|
|
||||||
#
|
|
||||||
picom = {
|
|
||||||
enable = true;
|
|
||||||
settings = {
|
|
||||||
animations = true;
|
|
||||||
animation-stiffness = 300.0;
|
|
||||||
animation-dampening = 35.0;
|
|
||||||
animation-clamping = false;
|
|
||||||
animation-mass = 1;
|
|
||||||
animation-for-workspace-switch-in = "auto";
|
|
||||||
animation-for-workspace-switch-out = "auto";
|
|
||||||
animation-for-open-window = "slide-down";
|
|
||||||
animation-for-menu-window = "none";
|
|
||||||
animation-for-transient-window = "slide-down";
|
|
||||||
corner-radius = 12;
|
|
||||||
rounded-corners-exclude = [
|
|
||||||
"class_i = 'polybar'"
|
|
||||||
"class_g = 'i3lock'"
|
|
||||||
];
|
|
||||||
round-borders = 3;
|
|
||||||
round-borders-exclude = [ ];
|
|
||||||
round-borders-rule = [ ];
|
|
||||||
shadow = true;
|
|
||||||
shadow-radius = 8;
|
|
||||||
shadow-opacity = 0.4;
|
|
||||||
shadow-offset-x = -8;
|
|
||||||
shadow-offset-y = -8;
|
|
||||||
fading = false;
|
|
||||||
inactive-opacity = 0.8;
|
|
||||||
frame-opacity = 0.7;
|
|
||||||
inactive-opacity-override = false;
|
|
||||||
active-opacity = 1.0;
|
|
||||||
focus-exclude = [
|
|
||||||
];
|
|
||||||
|
|
||||||
opacity-rule = [
|
|
||||||
"100:class_g = 'i3lock'"
|
|
||||||
"60:class_g = 'Dunst'"
|
|
||||||
"100:class_g = 'Alacritty' && focused"
|
|
||||||
"90:class_g = 'Alacritty' && !focused"
|
|
||||||
];
|
|
||||||
|
|
||||||
blur-kern = "3x3box";
|
|
||||||
blur = {
|
|
||||||
method = "kernel";
|
|
||||||
strength = 8;
|
|
||||||
background = false;
|
|
||||||
background-frame = false;
|
|
||||||
background-fixed = false;
|
|
||||||
kern = "3x3box";
|
|
||||||
};
|
|
||||||
|
|
||||||
shadow-exclude = [
|
|
||||||
"class_g = 'Dunst'"
|
|
||||||
];
|
|
||||||
|
|
||||||
blur-background-exclude = [
|
|
||||||
"class_g = 'Dunst'"
|
|
||||||
];
|
|
||||||
|
|
||||||
backend = "glx";
|
|
||||||
vsync = false;
|
|
||||||
mark-wmwin-focused = true;
|
|
||||||
mark-ovredir-focused = true;
|
|
||||||
detect-rounded-corners = true;
|
|
||||||
detect-client-opacity = false;
|
|
||||||
detect-transient = true;
|
|
||||||
detect-client-leader = true;
|
|
||||||
use-damage = true;
|
|
||||||
log-level = "info";
|
|
||||||
|
|
||||||
wintypes = {
|
|
||||||
normal = {
|
|
||||||
fade = true;
|
|
||||||
shadow = false;
|
|
||||||
};
|
|
||||||
tooltip = {
|
|
||||||
fade = true;
|
|
||||||
shadow = false;
|
|
||||||
opacity = 0.75;
|
|
||||||
focus = true;
|
|
||||||
full-shadow = false;
|
|
||||||
};
|
|
||||||
dock = {
|
|
||||||
shadow = false;
|
|
||||||
};
|
|
||||||
dnd = {
|
|
||||||
shadow = false;
|
|
||||||
};
|
|
||||||
popup_menu = {
|
|
||||||
opacity = 1.0;
|
|
||||||
};
|
|
||||||
dropdown_menu = {
|
|
||||||
opacity = 1.0;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
gvfs.enable = true; # Mount, trash, and other functionalities
|
|
||||||
tumbler.enable = true; # Thumbnail support for images
|
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
# Enable CUPS to print documents
|
# Enable CUPS to print documents
|
||||||
# services.printing.enable = true;
|
# services.printing.enable = true;
|
||||||
# services.printing.drivers = [ pkgs.brlaser ]; # Brother printer driver
|
# services.printing.drivers = [ pkgs.brlaser ]; # Brother printer driver
|
||||||
|
|
||||||
# Enable sound
|
|
||||||
# sound.enable = true;
|
|
||||||
# hardware.pulseaudio.enable = true;
|
|
||||||
|
|
||||||
# Video support
|
|
||||||
hardware = {
|
|
||||||
graphics.enable = true;
|
|
||||||
# nvidia.modesetting.enable = true;
|
|
||||||
|
|
||||||
# Enable Xbox support
|
|
||||||
# xone.enable = true;
|
|
||||||
|
|
||||||
# Crypto wallet support
|
# Crypto wallet support
|
||||||
ledger.enable = true;
|
hardware.ledger.enable = true;
|
||||||
};
|
|
||||||
|
|
||||||
# Add docker daemon
|
# Add docker daemon
|
||||||
virtualisation.docker.enable = true;
|
virtualisation.docker.enable = true;
|
||||||
@@ -261,16 +120,6 @@ in
|
|||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
fonts.packages = with pkgs; [
|
|
||||||
dejavu_fonts
|
|
||||||
emacs-all-the-icons-fonts
|
|
||||||
feather-font # from overlay
|
|
||||||
jetbrains-mono
|
|
||||||
font-awesome
|
|
||||||
noto-fonts
|
|
||||||
noto-fonts-emoji
|
|
||||||
];
|
|
||||||
|
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
agenix.packages."${pkgs.system}".default # "x86_64-linux"
|
agenix.packages."${pkgs.system}".default # "x86_64-linux"
|
||||||
gitAndTools.gitFull
|
gitAndTools.gitFull
|
||||||
|
|||||||
@@ -7,6 +7,7 @@
|
|||||||
homebrew-core,
|
homebrew-core,
|
||||||
homebrew-cask,
|
homebrew-cask,
|
||||||
disko,
|
disko,
|
||||||
|
nixvim,
|
||||||
self,
|
self,
|
||||||
...
|
...
|
||||||
}@inputs:
|
}@inputs:
|
||||||
|
|||||||
@@ -1,16 +1,18 @@
|
|||||||
{
|
{
|
||||||
imports = [
|
imports = [
|
||||||
./home-manager/atuin.nix
|
./atuin.nix
|
||||||
./home-manager/bat.nix
|
./bat.nix
|
||||||
./home-manager/eza.nix
|
./eza.nix
|
||||||
./home-manager/fish.nix
|
./fish.nix
|
||||||
./home-manager/git.nix
|
./git.nix
|
||||||
./home-manager/jujutsu.nix
|
./jujutsu.nix
|
||||||
./home-manager/neovim
|
./neovim
|
||||||
./home-manager/ssh.nix
|
./ssh.nix
|
||||||
./home-manager/starship.nix
|
./starship.nix
|
||||||
./home-manager/zellij.nix
|
./zellij.nix
|
||||||
./home-manager/zoxide.nix
|
./zoxide.nix
|
||||||
./home-manager/zsh.nix
|
./zsh.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
|
programs.home-manager.enable = true;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,10 +1,8 @@
|
|||||||
{ nixvim, ... }:
|
|
||||||
|
|
||||||
{
|
{
|
||||||
imports = [
|
imports = [
|
||||||
nixvim.homeManagerModules.nixvim
|
|
||||||
./options.nix
|
./options.nix
|
||||||
./plugins
|
./plugins/oil.nix
|
||||||
|
./plugins/which-key.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
home.shellAliases.v = "nvim";
|
home.shellAliases.v = "nvim";
|
||||||
@@ -12,12 +10,15 @@
|
|||||||
programs.nixvim = {
|
programs.nixvim = {
|
||||||
enable = true;
|
enable = true;
|
||||||
defaultEditor = true;
|
defaultEditor = true;
|
||||||
|
|
||||||
nixpkgs.useGlobalPackages = true;
|
|
||||||
|
|
||||||
viAlias = true;
|
|
||||||
vimAlias = true;
|
|
||||||
|
|
||||||
luaLoader.enable = true;
|
luaLoader.enable = true;
|
||||||
|
|
||||||
|
colorschemes.catppuccin = {
|
||||||
|
enable = true;
|
||||||
|
settings = {
|
||||||
|
flavour = "latte";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
clipboard.register = "unnamedplus";
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,5 +1 @@
|
|||||||
{
|
{ }
|
||||||
programs.nixvim = {
|
|
||||||
colorschemes.catppuccin.enable = true;
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|||||||
@@ -1,5 +0,0 @@
|
|||||||
{
|
|
||||||
imports = [
|
|
||||||
./oil.nix
|
|
||||||
];
|
|
||||||
}
|
|
||||||
5
profiles/base/home-manager/neovim/plugins/which-key.nix
Normal file
5
profiles/base/home-manager/neovim/plugins/which-key.nix
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
{
|
||||||
|
programs.nixvim.plugins.which-key = {
|
||||||
|
enable = true;
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -1,3 +1,4 @@
|
|||||||
|
{ pkgs, ... }:
|
||||||
{
|
{
|
||||||
programs.zellij = {
|
programs.zellij = {
|
||||||
enable = true;
|
enable = true;
|
||||||
@@ -5,6 +6,7 @@
|
|||||||
settings = {
|
settings = {
|
||||||
theme = "catppuccin-latte";
|
theme = "catppuccin-latte";
|
||||||
default_layout = "compact";
|
default_layout = "compact";
|
||||||
|
default_shell = "${pkgs.fish}/bin/fish";
|
||||||
show_startup_tips = false;
|
show_startup_tips = false;
|
||||||
show_release_notes = false;
|
show_release_notes = false;
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -13,7 +13,6 @@ with pkgs;
|
|||||||
jq
|
jq
|
||||||
killall
|
killall
|
||||||
libfido2
|
libfido2
|
||||||
neovim
|
|
||||||
nerd-fonts.iosevka
|
nerd-fonts.iosevka
|
||||||
nixfmt
|
nixfmt
|
||||||
nodejs_24
|
nodejs_24
|
||||||
|
|||||||
@@ -33,15 +33,16 @@
|
|||||||
...
|
...
|
||||||
}:
|
}:
|
||||||
{
|
{
|
||||||
_module.args = { inherit user nixvim; };
|
_module.args = { inherit user; };
|
||||||
imports = [
|
imports = [
|
||||||
|
nixvim.homeModules.nixvim
|
||||||
../base/home-manager
|
../base/home-manager
|
||||||
./home-manager/ghostty.nix
|
./home-manager/ghostty.nix
|
||||||
];
|
];
|
||||||
fonts.fontconfig.enable = true;
|
fonts.fontconfig.enable = true;
|
||||||
home = {
|
home = {
|
||||||
packages = pkgs.callPackage ./packages.nix { } ++ pkgs.callPackage ../base/packages.nix { };
|
packages = pkgs.callPackage ./packages.nix { } ++ pkgs.callPackage ../base/packages.nix { };
|
||||||
stateVersion = "23.11";
|
stateVersion = "24.05";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -3,6 +3,7 @@
|
|||||||
pkgs,
|
pkgs,
|
||||||
lib,
|
lib,
|
||||||
home-manager,
|
home-manager,
|
||||||
|
nixvim,
|
||||||
user,
|
user,
|
||||||
...
|
...
|
||||||
}:
|
}:
|
||||||
@@ -24,8 +25,6 @@ in
|
|||||||
extraGroups = [
|
extraGroups = [
|
||||||
"wheel"
|
"wheel"
|
||||||
"sudo"
|
"sudo"
|
||||||
"audio"
|
|
||||||
"video"
|
|
||||||
"network"
|
"network"
|
||||||
"systemd-journal"
|
"systemd-journal"
|
||||||
];
|
];
|
||||||
@@ -44,7 +43,8 @@ in
|
|||||||
{
|
{
|
||||||
_module.args = { inherit user; };
|
_module.args = { inherit user; };
|
||||||
imports = [
|
imports = [
|
||||||
../base/home-manager.nix
|
nixvim.homeModules.nixvim
|
||||||
|
../base/home-manager
|
||||||
];
|
];
|
||||||
home = {
|
home = {
|
||||||
packages = pkgs.callPackage ./packages.nix { };
|
packages = pkgs.callPackage ./packages.nix { };
|
||||||
|
|||||||
Reference in New Issue
Block a user