updated command structure and nixvim
This commit is contained in:
@@ -2,7 +2,7 @@
|
||||
# your system. Help is available in the configuration.nix(5) man page
|
||||
# and in the NixOS manual (accessible by running ‘nixos-help’).
|
||||
|
||||
{ config, pkgs, inputs, ... }:
|
||||
{ config, pkgs, pkgs-unstable, inputs, ... }:
|
||||
|
||||
{
|
||||
imports =
|
||||
@@ -190,7 +190,6 @@
|
||||
environment.systemPackages = with pkgs; [
|
||||
#apps
|
||||
#cider-2
|
||||
amneziawg-go
|
||||
fprintd
|
||||
guacamole-client
|
||||
sddm-astronaut
|
||||
@@ -231,7 +230,12 @@
|
||||
];
|
||||
|
||||
home-manager = {
|
||||
extraSpecialArgs = { inherit inputs; };
|
||||
extraSpecialArgs = {
|
||||
inherit
|
||||
inputs
|
||||
pkgs-unstable
|
||||
;
|
||||
};
|
||||
users = {
|
||||
"rogueking" = import ./../home-manager/home.nix;
|
||||
};
|
||||
|
||||
276
eva-01/configuration.nix.save
Normal file
276
eva-01/configuration.nix.save
Normal file
@@ -0,0 +1,276 @@
|
||||
# Edit this configuration file to define what should be installed on
|
||||
# your system. Help is available in the configuration.nix(5) man page
|
||||
# and in the NixOS manual (accessible by running ‘nixos-help’).
|
||||
|
||||
{ config, pkgs, inputs, ... }:
|
||||
|
||||
{
|
||||
imports =
|
||||
[ # Include the results of the hardware scan.
|
||||
./hardware-configuration.nix
|
||||
inputs.home-manager.nixosModules.default
|
||||
];
|
||||
|
||||
# Bootloader.
|
||||
boot.loader.systemd-boot.enable = true;
|
||||
boot.loader.efi.canTouchEfiVariables = true;
|
||||
|
||||
nix.settings.experimental-features = ["nix-command" "flakes"];
|
||||
|
||||
# Nix optimizations
|
||||
nix.optimise.automatic = true;
|
||||
nix.settings.auto-optimise-store = true;
|
||||
nix.gc = {
|
||||
automatic = true;
|
||||
dates = "weekly";
|
||||
persistent = true;
|
||||
options = "--delete-older-than 30d";
|
||||
};
|
||||
|
||||
# Dynamic power managment
|
||||
# powerManagement = {
|
||||
# enable = true;
|
||||
# cpuFreqGovernor = "powersave";
|
||||
# powertop.enable = true;
|
||||
# };
|
||||
|
||||
services.thermald.enable = true;
|
||||
services.power-profiles-daemon.enable = false;
|
||||
services.auto-cpufreq.enable = true;
|
||||
services.auto-cpufreq.settings = {
|
||||
battery = {
|
||||
governor = "balanced";
|
||||
turbo = "auto";
|
||||
};
|
||||
charger = {
|
||||
governor = "performance";
|
||||
turbo = "auto";
|
||||
};
|
||||
};
|
||||
services.system76-scheduler = {
|
||||
enable = true;
|
||||
useStockConfig = true;
|
||||
};
|
||||
|
||||
networking.hostName = "EVA-01"; # Define your hostname.
|
||||
# networking.wireless.enable = true; # Enables wireless support via wpa_supplicant.
|
||||
|
||||
# Configure network proxy if necessary
|
||||
# networking.proxy.default = "http://user:password@proxy:port/";
|
||||
# networking.proxy.noProxy = "127.0.0.1,localhost,internal.domain";
|
||||
|
||||
# Enable networking
|
||||
networking.networkmanager.enable = true;
|
||||
|
||||
virtualisation.docker.enable = true;
|
||||
|
||||
# Set your time zone.
|
||||
time.timeZone = "America/Los_Angeles";
|
||||
|
||||
# Select internationalisation properties.
|
||||
i18n.defaultLocale = "en_US.UTF-8";
|
||||
|
||||
i18n.extraLocaleSettings = {
|
||||
LC_ADDRESS = "en_US.UTF-8";
|
||||
LC_IDENTIFICATION = "en_US.UTF-8";
|
||||
LC_MEASUREMENT = "en_US.UTF-8";
|
||||
LC_MONETARY = "en_US.UTF-8";
|
||||
LC_NAME = "en_US.UTF-8";
|
||||
LC_NUMERIC = "en_US.UTF-8";
|
||||
LC_PAPER = "en_US.UTF-8";
|
||||
LC_TELEPHONE = "en_US.UTF-8";
|
||||
LC_TIME = "en_US.UTF-8";
|
||||
n };
|
||||
|
||||
# Enable the X11 windowing system.
|
||||
# You can disable this if you're only using the Wayland session.
|
||||
services.xserver.enable = false;
|
||||
|
||||
# Enable the KDE Plasma Desktop Environment.
|
||||
services.displayManager.sddm.enable = true;
|
||||
services.displayManager.sddm.wayland.enable = true;
|
||||
services.desktopManager.plasma6.enable = true;
|
||||
services.displayManager.sddm.theme = "sddm-astronaut-theme";
|
||||
|
||||
services.tailscale.enable = true;
|
||||
|
||||
#Enable Ollama daemon
|
||||
services.ollama.enable = true;
|
||||
|
||||
services.fprintd.enable = true;
|
||||
services.fprintd.tod.enable = true;
|
||||
services.fprintd.tod.driver = pkgs.libfprint-2-tod1-goodix;
|
||||
|
||||
# Configure keymap in X11
|
||||
services.xserver.xkb = {
|
||||
layout = "us";
|
||||
variant = "";
|
||||
};
|
||||
|
||||
# Enable CUPS to print documents.
|
||||
services.printing.enable = false;
|
||||
|
||||
# Enable sound with pipewire.
|
||||
hardware.pulseaudio.enable = false;
|
||||
#hardware.pulseaudio = {
|
||||
# enable = true;
|
||||
# package = pkgs.pulseaudioFull;
|
||||
#};
|
||||
hardware.bluetooth.enable = true;
|
||||
security.rtkit.enable = true;
|
||||
services.pipewire = {
|
||||
enable = true;
|
||||
alsa.enable = true;
|
||||
alsa.support32Bit = true;
|
||||
pulse.enable = true;
|
||||
# If you want to use JACK applications, uncomment this
|
||||
#jack.enable = true;
|
||||
|
||||
# use the example session manager (no others are packaged yet so this is enabled by default,
|
||||
# no need to redefine it in your config for now)
|
||||
#media-session.enable = true;
|
||||
};
|
||||
|
||||
# Enable touchpad support (enabled default in most desktopManager).
|
||||
# services.xserver.libinput.enable = true;
|
||||
|
||||
# Define a user account. Don't forget to set a password with ‘passwd’.
|
||||
programs.zsh.enable = true;
|
||||
users.users.rogueking = {
|
||||
isNormalUser = true;
|
||||
description = "rogueking";
|
||||
extraGroups = [ "networkmanager" "wheel" "docker" ];
|
||||
shell = pkgs.zsh;
|
||||
#packages = [ inputs.home-manager.packages.${pkgs.system}.default ];
|
||||
packages = with pkgs; [
|
||||
#apps
|
||||
#cli
|
||||
# thunderbird
|
||||
];
|
||||
};
|
||||
|
||||
# Install firefox.
|
||||
programs.firefox.enable = true;
|
||||
|
||||
# Allow unfree packages
|
||||
nixpkgs.config.allowUnfree = true;
|
||||
|
||||
security.polkit.enable = true;
|
||||
programs._1password.enable = true;
|
||||
programs._1password-gui = {
|
||||
enable = true;
|
||||
# Certain features, including CLI integration and system authentication support,
|
||||
# require enabling PolKit integration on some desktop environments (e.g. Plasma).
|
||||
polkitPolicyOwners = [ "rogueking" ];
|
||||
};
|
||||
|
||||
#steam
|
||||
programs.steam.enable = true;
|
||||
|
||||
# Enable OpenSSH daemon
|
||||
services.openssh = {
|
||||
enable = true;
|
||||
ports = [ 22 ];
|
||||
settings = {
|
||||
PasswordAuthentication = false;
|
||||
AllowUsers = [ "rogueking" ];
|
||||
UseDns = true;
|
||||
X11Forwarding = false;
|
||||
PermitRootLogin = "no";
|
||||
};
|
||||
};
|
||||
|
||||
users.users."rogueking".openssh.authorizedKeys.keys = [
|
||||
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAINXqriPZVIuduc/J7GS1mD171LL0gIbgEjlImsxedWVX"
|
||||
];
|
||||
|
||||
# List packages installed in system profile. To search, run:
|
||||
# $ nix search wget
|
||||
environment.systemPackages = with pkgs; [
|
||||
#apps
|
||||
#cider-2
|
||||
amneziawg-go
|
||||
fprintd
|
||||
guacamole-client
|
||||
sddm-astronaut
|
||||
|
||||
#cli tools
|
||||
aircrack-ng
|
||||
android-tools
|
||||
btop
|
||||
curl
|
||||
docker
|
||||
dust
|
||||
file
|
||||
findutils
|
||||
git
|
||||
hcxdumptool
|
||||
hcxtools
|
||||
kopia
|
||||
lazydocker
|
||||
metasploit
|
||||
nettools
|
||||
nix-prefetch-github
|
||||
nmap
|
||||
openssh
|
||||
openssl
|
||||
plocate
|
||||
ptunnel
|
||||
tailscale
|
||||
tlp
|
||||
unzip
|
||||
vim
|
||||
wirelesstools
|
||||
wifite2
|
||||
|
||||
];
|
||||
|
||||
fonts.packages = with pkgs; [
|
||||
nerdfonts
|
||||
];
|
||||
|
||||
home-manager = {
|
||||
extraSpecialArgs = { inherit inputs; };
|
||||
users = {
|
||||
"rogueking" = import ./../home-manager/home.nix;
|
||||
};
|
||||
backupFileExtension = "backup";
|
||||
};
|
||||
|
||||
#home-manager = {
|
||||
# extraSpecialArgs = { inherit inputs; };
|
||||
# users = {
|
||||
# "rogueking" = import ../home-manager/home.nix;
|
||||
# };
|
||||
# backupFileExtension = "backup";
|
||||
#};
|
||||
|
||||
|
||||
# Some programs need SUID wrappers, can be configured further or are
|
||||
# started in user sessions.
|
||||
# programs.mtr.enable = true;
|
||||
# programs.gnupg.agent = {
|
||||
# enable = true;
|
||||
# enableSSHSupport = true;
|
||||
# };
|
||||
|
||||
# List services that you want to enable:
|
||||
|
||||
# Enable the OpenSSH daemon.
|
||||
# services.openssh.enable = true;
|
||||
|
||||
# Open ports in the firewall.
|
||||
# networking.firewall.allowedTCPPorts = [ ... ];
|
||||
# networking.firewall.allowedUDPPorts = [ ... ];
|
||||
# Or disable the firewall altogether.
|
||||
# networking.firewall.enable = false;
|
||||
|
||||
# This value determines the NixOS release from which the default
|
||||
# settings for stateful data, like file locations and database versions
|
||||
# on your system were taken. It‘s perfectly fine and recommended to leave
|
||||
# this value at the release version of the first install of this system.
|
||||
# Before changing this value read the documentation for this option
|
||||
# (e.g. man configuration.nix or on https://nixos.org/nixos/options.html).
|
||||
system.stateVersion = "24.11"; # Did you read the comment?
|
||||
|
||||
}
|
||||
203
flake.lock
generated
203
flake.lock
generated
@@ -1,40 +1,5 @@
|
||||
{
|
||||
"nodes": {
|
||||
"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": {
|
||||
"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": {
|
||||
"inputs": {
|
||||
"nixpkgs-lib": [
|
||||
@@ -74,54 +39,6 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"git-hooks": {
|
||||
"inputs": {
|
||||
"flake-compat": [
|
||||
"nixvim",
|
||||
"flake-compat"
|
||||
],
|
||||
"gitignore": "gitignore",
|
||||
"nixpkgs": [
|
||||
"nixvim",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1742649964,
|
||||
"narHash": "sha256-DwOTp7nvfi8mRfuL1escHDXabVXFGT1VlPD1JHrtrco=",
|
||||
"owner": "cachix",
|
||||
"repo": "git-hooks.nix",
|
||||
"rev": "dcf5072734cb576d2b0c59b2ac44f5050b5eac82",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "cachix",
|
||||
"repo": "git-hooks.nix",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"gitignore": {
|
||||
"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": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
@@ -129,33 +46,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1744743431,
|
||||
"narHash": "sha256-iyn/WBYDc7OtjSawbegINDe/gIkok888kQxk3aVnkgg=",
|
||||
"lastModified": 1746171682,
|
||||
"narHash": "sha256-EyXUNSa+H+YvGVuQJP1nZskXAowxKYp79RNUsNdQTj4=",
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"rev": "c61bfe3ae692f42ce688b5865fac9e0de58e1387",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-community",
|
||||
"ref": "release-24.11",
|
||||
"repo": "home-manager",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"home-manager_2": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"nixvim",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1744117652,
|
||||
"narHash": "sha256-t7dFCDl4vIOOUMhEZnJF15aAzkpaup9x4ZRGToDFYWI=",
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"rev": "b4e98224ad1336751a2ac7493967a4c9f6d9cb3f",
|
||||
"rev": "50eee705bbdbac942074a8c120e8194185633675",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -179,49 +74,27 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1729958008,
|
||||
"narHash": "sha256-EiOq8jF4Z/zQe0QYVc3+qSKxRK//CFHMB84aYrYGwEs=",
|
||||
"lastModified": 1737371634,
|
||||
"narHash": "sha256-fTVAWzT1UMm1lT+YxHuVPtH+DATrhYfea3B0MxG/cGw=",
|
||||
"owner": "NuschtOS",
|
||||
"repo": "ixx",
|
||||
"rev": "9fd01aad037f345350eab2cd45e1946cc66da4eb",
|
||||
"rev": "a1176e2a10ce745ff8f63e4af124ece8fe0b1648",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NuschtOS",
|
||||
"ref": "v0.0.6",
|
||||
"ref": "v0.0.7",
|
||||
"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"
|
||||
}
|
||||
},
|
||||
"nixos-hardware": {
|
||||
"locked": {
|
||||
"lastModified": 1744633460,
|
||||
"narHash": "sha256-fbWE4Xpw6eH0Q6in+ymNuDwTkqmFmtxcQEmtRuKDTTk=",
|
||||
"lastModified": 1746427242,
|
||||
"narHash": "sha256-KvZ6G5sdBdcrglsqcOx8BT6NpHVMVHc8wssMRhv/+1g=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixos-hardware",
|
||||
"rev": "9a049b4a421076d27fee3eec664a18b2066824cb",
|
||||
"rev": "a4bb30a9000cf0444ecc8fdca8096d072f77f9e8",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -233,11 +106,11 @@
|
||||
},
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1744440957,
|
||||
"narHash": "sha256-FHlSkNqFmPxPJvy+6fNLaNeWnF1lZSgqVCl/eWaJRc4=",
|
||||
"lastModified": 1746301764,
|
||||
"narHash": "sha256-5odz+NZszRya//Zd0P8h+sIwOnV35qJi+73f4I+iv1M=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "26d499fc9f1d567283d5d56fcf367edd815dba1d",
|
||||
"rev": "537ee98218704e21ea465251de512ab6bbb9012e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -249,11 +122,11 @@
|
||||
},
|
||||
"nixpkgs-unstable": {
|
||||
"locked": {
|
||||
"lastModified": 1744932701,
|
||||
"narHash": "sha256-fusHbZCyv126cyArUwwKrLdCkgVAIaa/fQJYFlCEqiU=",
|
||||
"lastModified": 1746328495,
|
||||
"narHash": "sha256-uKCfuDs7ZM3QpCE/jnfubTg459CnKnJG/LwqEVEdEiw=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "b024ced1aac25639f8ca8fdfc2f8c4fbd66c48ef",
|
||||
"rev": "979daf34c8cacebcd917d540070b52a3c2b9b16e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -265,29 +138,22 @@
|
||||
},
|
||||
"nixvim": {
|
||||
"inputs": {
|
||||
"devshell": "devshell",
|
||||
"flake-compat": "flake-compat",
|
||||
"flake-parts": "flake-parts",
|
||||
"git-hooks": "git-hooks",
|
||||
"home-manager": "home-manager_2",
|
||||
"nix-darwin": "nix-darwin",
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
"nixpkgs-unstable"
|
||||
],
|
||||
"nuschtosSearch": "nuschtosSearch",
|
||||
"treefmt-nix": "treefmt-nix"
|
||||
"nuschtosSearch": "nuschtosSearch"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1744461753,
|
||||
"narHash": "sha256-3oO3CwYmZE5P4Hp5XR5WCZbF/rj5+kF0m5sTNTMDYss=",
|
||||
"lastModified": 1746387720,
|
||||
"narHash": "sha256-x8k0DKiQYRNaf9Hg+di+WCKxb76zJVWSjKOlPiuc22o=",
|
||||
"owner": "nix-community",
|
||||
"repo": "nixvim",
|
||||
"rev": "a22fbed4c4784e6a9761f9a896d31da98c3117b2",
|
||||
"rev": "7d18194a22325f212e17eb876d9c00afcc434113",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-community",
|
||||
"ref": "nixos-24.11",
|
||||
"repo": "nixvim",
|
||||
"type": "github"
|
||||
}
|
||||
@@ -302,11 +168,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1744375525,
|
||||
"narHash": "sha256-/Wf5Ca0DmV+y+qVBDXX8HAfAvSQI6y5oE27dv6t1jXk=",
|
||||
"lastModified": 1745046075,
|
||||
"narHash": "sha256-8v4y6k16Ra/fiecb4DxhsoOGtzLKgKlS+9/XJ9z0T2I=",
|
||||
"owner": "NuschtOS",
|
||||
"repo": "search",
|
||||
"rev": "c0e7d3bda11e2cfad692d205d82757078475957a",
|
||||
"rev": "066afe8643274470f4a294442aadd988356a478f",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -338,27 +204,6 @@
|
||||
"repo": "default",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"treefmt-nix": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"nixvim",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1743748085,
|
||||
"narHash": "sha256-uhjnlaVTWo5iD3LXics1rp9gaKgDRQj6660+gbUU3cE=",
|
||||
"owner": "numtide",
|
||||
"repo": "treefmt-nix",
|
||||
"rev": "815e4121d6a5d504c0f96e5be2dd7f871e4fd99d",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "numtide",
|
||||
"repo": "treefmt-nix",
|
||||
"type": "github"
|
||||
}
|
||||
}
|
||||
},
|
||||
"root": "root",
|
||||
|
||||
@@ -11,8 +11,8 @@
|
||||
};
|
||||
|
||||
nixvim = {
|
||||
url = "github:nix-community/nixvim/nixos-24.11";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
url = "github:nix-community/nixvim";
|
||||
inputs.nixpkgs.follows = "nixpkgs-unstable";
|
||||
};
|
||||
|
||||
nixos-hardware = {
|
||||
|
||||
75
home-manager/commands/commands.nix
Normal file
75
home-manager/commands/commands.nix
Normal file
@@ -0,0 +1,75 @@
|
||||
{
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
imports = [
|
||||
./direnv.nix
|
||||
./eza.nix
|
||||
./fastfetch/fastfetch.nix
|
||||
./git.nix
|
||||
./ghostty.nix
|
||||
./newsboat.nix
|
||||
./nixvim/default.nix
|
||||
./starship.nix
|
||||
./tmux.nix
|
||||
./zsh.nix
|
||||
];
|
||||
|
||||
home.packages = with pkgs; [
|
||||
bat
|
||||
btop
|
||||
cbonsai
|
||||
curl
|
||||
dig
|
||||
dust
|
||||
ffmpeg-full
|
||||
fzf
|
||||
fzf
|
||||
git-filter-repo
|
||||
kitty
|
||||
lazygit
|
||||
nmap
|
||||
ocamlPackages.utop
|
||||
ollama
|
||||
openconnect
|
||||
openssl
|
||||
putty
|
||||
ripgrep
|
||||
tailscale
|
||||
termusic
|
||||
thc-hydra
|
||||
timg
|
||||
tldr
|
||||
traceroute
|
||||
trivy
|
||||
wget
|
||||
yazi
|
||||
yazi
|
||||
yt-dlp
|
||||
];
|
||||
|
||||
|
||||
programs = {
|
||||
ssh = {
|
||||
enable = true;
|
||||
matchBlocks = {
|
||||
global = {
|
||||
host = "*";
|
||||
setEnv = {
|
||||
TERM = "xterm-256color";
|
||||
};
|
||||
};
|
||||
};
|
||||
extraConfig = ''
|
||||
IdentityAgent ~/.1password/agent.sock
|
||||
'';
|
||||
};
|
||||
|
||||
zoxide = {
|
||||
enable = true;
|
||||
enableZshIntegration = true;
|
||||
};
|
||||
};
|
||||
}
|
||||
12
home-manager/commands/eza.nix
Normal file
12
home-manager/commands/eza.nix
Normal file
@@ -0,0 +1,12 @@
|
||||
{
|
||||
programs = {
|
||||
eza = {
|
||||
enable = true;
|
||||
icons = "auto";
|
||||
enableZshIntegration = true;
|
||||
extraOptions = [
|
||||
"--group-directories-first"
|
||||
];
|
||||
};
|
||||
};
|
||||
}
|
||||
22
home-manager/commands/git.nix
Normal file
22
home-manager/commands/git.nix
Normal file
@@ -0,0 +1,22 @@
|
||||
{
|
||||
programs = {
|
||||
git = {
|
||||
enable = true;
|
||||
userName = "rogueking";
|
||||
userEmail = "miguel@muniz.org";
|
||||
lfs.enable = true;
|
||||
signing = {
|
||||
signByDefault = true;
|
||||
gpgPath = "/opt/1Password/op-ssh-sign";
|
||||
key = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIHI7zcxrwwg4VqpGduhPX31aslzXwkRXiM32+8K+aIMu";
|
||||
};
|
||||
extraConfig = {
|
||||
gpg = {
|
||||
format = "ssh";
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
};
|
||||
};
|
||||
}
|
||||
9
home-manager/commands/newsboat.nix
Normal file
9
home-manager/commands/newsboat.nix
Normal file
@@ -0,0 +1,9 @@
|
||||
{
|
||||
programs.newsboat = {
|
||||
enable = true;
|
||||
urls = [
|
||||
{ url = "https://dev.to/feed"; }
|
||||
{ url = "https://stackoverflow.blog/feed/"; }
|
||||
];
|
||||
};
|
||||
}
|
||||
37
home-manager/commands/nixvim/config.nix
Normal file
37
home-manager/commands/nixvim/config.nix
Normal file
@@ -0,0 +1,37 @@
|
||||
{
|
||||
programs.nixvim = {
|
||||
enable = true;
|
||||
defaultEditor = true;
|
||||
viAlias = true;
|
||||
vimAlias = true;
|
||||
|
||||
colorschemes.everforest = {
|
||||
enable = true;
|
||||
settings = {
|
||||
background = "soft"; #"hard"
|
||||
transparent_background = 1;
|
||||
};
|
||||
};
|
||||
|
||||
opts = {
|
||||
number = true;
|
||||
relativenumber = true;
|
||||
expandtab = true;
|
||||
shiftwidth = 2;
|
||||
tabstop = 2;
|
||||
};
|
||||
|
||||
diagnostics = {
|
||||
virtual_text = true;
|
||||
update_in_insert = true;
|
||||
severity_sort = true;
|
||||
};
|
||||
|
||||
globals = {
|
||||
mapleader = " ";
|
||||
maplocalleader = " ";
|
||||
};
|
||||
|
||||
clipboard.providers.wl-copy.enable = true;
|
||||
};
|
||||
}
|
||||
7
home-manager/commands/nixvim/default.nix
Normal file
7
home-manager/commands/nixvim/default.nix
Normal file
@@ -0,0 +1,7 @@
|
||||
{
|
||||
imports = [
|
||||
./config.nix
|
||||
./keymaps.nix
|
||||
./plugins/default.nix
|
||||
];
|
||||
}
|
||||
129
home-manager/commands/nixvim/keymaps.nix
Normal file
129
home-manager/commands/nixvim/keymaps.nix
Normal file
@@ -0,0 +1,129 @@
|
||||
{
|
||||
programs.nixvim = {
|
||||
keymaps = [
|
||||
{
|
||||
action = ":q<CR>";
|
||||
key = "<leader>q";
|
||||
options = {
|
||||
silent = true;
|
||||
noremap = true;
|
||||
desc = "Quit";
|
||||
};
|
||||
}
|
||||
{
|
||||
action = ":w<CR>";
|
||||
key = "<leader>w";
|
||||
options = {
|
||||
silent = true;
|
||||
noremap = true;
|
||||
desc = "Save";
|
||||
};
|
||||
}
|
||||
{
|
||||
action = ":wq<CR>";
|
||||
key = "<leader>wq";
|
||||
options = {
|
||||
silent = true;
|
||||
noremap = true;
|
||||
desc = "Save and quit";
|
||||
};
|
||||
}
|
||||
{
|
||||
action = "<C-\\><C-n>:ToggleTerm direction=float<CR>";
|
||||
key = "<leader>t";
|
||||
mode = [
|
||||
"n"
|
||||
"v"
|
||||
"t"
|
||||
];
|
||||
options = {
|
||||
silent = true;
|
||||
noremap = true;
|
||||
desc = "Toggle floating terminal";
|
||||
};
|
||||
}
|
||||
{
|
||||
action = ":Telescope live_grep<CR>";
|
||||
key = "<leader>lg";
|
||||
options = {
|
||||
silent = true;
|
||||
noremap = true;
|
||||
desc = "Live grep";
|
||||
};
|
||||
}
|
||||
{
|
||||
action = ":Telescope find_files<CR>";
|
||||
key = "<leader>ff";
|
||||
options = {
|
||||
silent = true;
|
||||
noremap = true;
|
||||
desc = "Find file";
|
||||
};
|
||||
}
|
||||
{
|
||||
action = ":Telescope oldfiles<CR>";
|
||||
key = "<leader>of";
|
||||
options = {
|
||||
silent = true;
|
||||
noremap = true;
|
||||
desc = "Browse recent files";
|
||||
};
|
||||
}
|
||||
{
|
||||
action = ":Telescope file_browser<CR>";
|
||||
key = "<leader>fb";
|
||||
options = {
|
||||
silent = true;
|
||||
noremap = true;
|
||||
desc = "Directory-based file browser";
|
||||
};
|
||||
}
|
||||
{
|
||||
action = ":Neotree toggle reveal<CR>";
|
||||
key = "<leader>nt";
|
||||
options = {
|
||||
silent = true;
|
||||
noremap = true;
|
||||
desc = "Toggle file tree";
|
||||
};
|
||||
}
|
||||
{
|
||||
action = ":Neotree focus<CR>";
|
||||
key = "<leader>nf";
|
||||
options = {
|
||||
silent = true;
|
||||
noremap = true;
|
||||
desc = "Toggle file tree focus";
|
||||
};
|
||||
}
|
||||
{
|
||||
action = ":Glance definitions<CR>";
|
||||
key = "<leader>gd";
|
||||
options = {
|
||||
silent = true;
|
||||
noremap = true;
|
||||
desc = "Glance definitions";
|
||||
};
|
||||
}
|
||||
{
|
||||
action = ":Glance references<CR>";
|
||||
key = "<leader>gr";
|
||||
options = {
|
||||
silent = true;
|
||||
noremap = true;
|
||||
desc = "Glance references";
|
||||
};
|
||||
}
|
||||
{
|
||||
action = "\"+y<CR>";
|
||||
key = "<leader>y";
|
||||
mode = [ "v" ];
|
||||
options = {
|
||||
silent = true;
|
||||
noremap = true;
|
||||
desc = "Glance references";
|
||||
};
|
||||
}
|
||||
];
|
||||
};
|
||||
}
|
||||
@@ -1,365 +0,0 @@
|
||||
{
|
||||
programs = {
|
||||
nixvim = {
|
||||
enable = true;
|
||||
defaultEditor = true;
|
||||
viAlias = true;
|
||||
vimAlias = true;
|
||||
|
||||
#colorschemes.onedark.enable = true;
|
||||
|
||||
colorschemes.everforest = {
|
||||
enable = true;
|
||||
settings = {
|
||||
background = "hard";
|
||||
transparent_background = 1;
|
||||
};
|
||||
};
|
||||
|
||||
opts = {
|
||||
number = true;
|
||||
relativenumber = true;
|
||||
expandtab = true;
|
||||
shiftwidth = 2;
|
||||
tabstop = 2;
|
||||
};
|
||||
|
||||
diagnostics = {
|
||||
virtual_text = true;
|
||||
update_in_insert = true;
|
||||
severity_sort = true;
|
||||
};
|
||||
|
||||
globals = {
|
||||
mapleader = " ";
|
||||
maplocalleader = " ";
|
||||
};
|
||||
|
||||
keymaps = [
|
||||
{
|
||||
action = ":q<CR>";
|
||||
key = "<leader>q";
|
||||
options = {
|
||||
silent = true;
|
||||
noremap = true;
|
||||
desc = "Quit";
|
||||
};
|
||||
}
|
||||
{
|
||||
action = ":w<CR>";
|
||||
key = "<leader>w";
|
||||
options = {
|
||||
silent = true;
|
||||
noremap = true;
|
||||
desc = "Save";
|
||||
};
|
||||
}
|
||||
{
|
||||
action = ":wq<CR>";
|
||||
key = "<leader>wq";
|
||||
options = {
|
||||
silent = true;
|
||||
noremap = true;
|
||||
desc = "Save and quit";
|
||||
};
|
||||
}
|
||||
{
|
||||
action = "<C-\\><C-n>:ToggleTerm direction=float<CR>";
|
||||
key = "<leader>t";
|
||||
mode = [ "n" "v" "t" ];
|
||||
options = {
|
||||
silent = true;
|
||||
noremap = true;
|
||||
desc = "Toggle floating terminal";
|
||||
};
|
||||
}
|
||||
{
|
||||
action = ":Telescope live_grep<CR>";
|
||||
key = "<leader>lg";
|
||||
options = {
|
||||
silent = true;
|
||||
noremap = true;
|
||||
desc = "Live grep";
|
||||
};
|
||||
}
|
||||
{
|
||||
action = ":Telescope find_files<CR>";
|
||||
key = "<leader>ff";
|
||||
options = {
|
||||
silent = true;
|
||||
noremap = true;
|
||||
desc = "Find file";
|
||||
};
|
||||
}
|
||||
{
|
||||
action = ":Telescope oldfiles<CR>";
|
||||
key = "<leader>of";
|
||||
options = {
|
||||
silent = true;
|
||||
noremap = true;
|
||||
desc = "Browse recent files";
|
||||
};
|
||||
}
|
||||
{
|
||||
action = ":Telescope file_browser<CR>";
|
||||
key = "<leader>fb";
|
||||
options = {
|
||||
silent = true;
|
||||
noremap = true;
|
||||
desc = "Directory-based file browser";
|
||||
};
|
||||
}
|
||||
{
|
||||
action = ":Neotree toggle reveal<CR>";
|
||||
key = "<leader>nt";
|
||||
options = {
|
||||
silent = true;
|
||||
noremap = true;
|
||||
desc = "Toggle file tree";
|
||||
};
|
||||
}
|
||||
];
|
||||
|
||||
plugins = {
|
||||
comment.enable = true;
|
||||
direnv.enable = true;
|
||||
gitsigns.enable = true;
|
||||
intellitab.enable = true;
|
||||
lastplace.enable = true;
|
||||
lsp-format.enable = true;
|
||||
lspsaga.enable = true;
|
||||
lualine.enable = true;
|
||||
luasnip.enable = true;
|
||||
multicursors.enable = true;
|
||||
neo-tree.enable = true;
|
||||
neoscroll.enable = true;
|
||||
nix.enable = true;
|
||||
nvim-autopairs.enable = true;
|
||||
nvim-colorizer.enable = true;
|
||||
refactoring.enable = true;
|
||||
toggleterm.enable = true;
|
||||
treesitter.enable = true;
|
||||
web-devicons.enable = true;
|
||||
|
||||
telescope = {
|
||||
enable = true;
|
||||
extensions.file-browser.enable = true;
|
||||
};
|
||||
|
||||
transparent = {
|
||||
enable = true;
|
||||
settings = {
|
||||
groups = [
|
||||
"Normal"
|
||||
"NormalNC"
|
||||
"Comment"
|
||||
"Constant"
|
||||
"Special"
|
||||
"Identifier"
|
||||
"Statement"
|
||||
"PreProc"
|
||||
"Type"
|
||||
"Underlined"
|
||||
"Todo"
|
||||
"String"
|
||||
"Function"
|
||||
"Conditional"
|
||||
"Repeat"
|
||||
"Operator"
|
||||
"Structure"
|
||||
"LineNr"
|
||||
"NonText"
|
||||
"SignColumn"
|
||||
"CursorLine"
|
||||
"CursorLineNr"
|
||||
"StatusLine"
|
||||
"StatusLineNC"
|
||||
"EndOfBuffer"
|
||||
];
|
||||
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
lint = {
|
||||
enable = true;
|
||||
autoCmd = {
|
||||
event = [ "InsertLeave" "TextChanged" ];
|
||||
};
|
||||
};
|
||||
|
||||
illuminate = {
|
||||
enable = true;
|
||||
delay = 100;
|
||||
minCountToHighlight = 1;
|
||||
modesAllowlist = ["n" "i" "v"];
|
||||
};
|
||||
|
||||
ollama = {
|
||||
enable = true;
|
||||
#url = ;
|
||||
};
|
||||
|
||||
which-key = {
|
||||
enable = true;
|
||||
settings = {
|
||||
preset = "modern";
|
||||
delay = 500;
|
||||
expand = 1;
|
||||
notify = false;
|
||||
win = {
|
||||
border = "single";
|
||||
padding = [1 1];
|
||||
wo.winblend = 10;
|
||||
};
|
||||
replace = {
|
||||
desc = [
|
||||
[
|
||||
"<space>"
|
||||
"SPACE"
|
||||
]
|
||||
[
|
||||
"<leader>"
|
||||
"SPACE"
|
||||
]
|
||||
[
|
||||
"<[cC][rR]>"
|
||||
"RETURN"
|
||||
]
|
||||
[
|
||||
"<[tT][aA][bB]>"
|
||||
"TAB"
|
||||
]
|
||||
[
|
||||
"<[bB][sS]>"
|
||||
"BACKSPACE"
|
||||
]
|
||||
];
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
scrollview = {
|
||||
enable = true;
|
||||
settings = {
|
||||
signs_on_startup = [
|
||||
"all"
|
||||
];
|
||||
};
|
||||
};
|
||||
|
||||
startup = {
|
||||
enable = true;
|
||||
parts = [ "header" "body" ];
|
||||
sections = {
|
||||
header = {
|
||||
align = "center";
|
||||
content = {
|
||||
__raw = "require('startup.headers').hydra_header";
|
||||
};
|
||||
defaultColor = "";
|
||||
foldSection = false;
|
||||
highlight = "Statement";
|
||||
margin = 5;
|
||||
oldfilesAmount = 0;
|
||||
title = "Header";
|
||||
type = "text";
|
||||
};
|
||||
body = {
|
||||
align = "center";
|
||||
content = [
|
||||
[
|
||||
" Find File"
|
||||
"Telescope find_files"
|
||||
"<leader>ff"
|
||||
]
|
||||
[
|
||||
" Find Word"
|
||||
"Telescope live_grep"
|
||||
"<leader>lg"
|
||||
]
|
||||
[
|
||||
" Recent Files"
|
||||
"Telescope oldfiles"
|
||||
"<leader>of"
|
||||
]
|
||||
[
|
||||
" File Browser"
|
||||
"Telescope file_browser"
|
||||
"<leader>fb"
|
||||
]
|
||||
[
|
||||
" New File"
|
||||
"lua require'startup'.new_file()"
|
||||
"<leader>nf"
|
||||
]
|
||||
];
|
||||
defaultColor = "";
|
||||
foldSection = false;
|
||||
highlight = "String";
|
||||
margin = 5;
|
||||
oldfilesAmount = 0;
|
||||
title = "Basic Commands";
|
||||
type = "mapping";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
indent-blankline = {
|
||||
enable = true;
|
||||
settings = {
|
||||
scope = {
|
||||
show_end = true;
|
||||
show_exact_scope = true;
|
||||
show_start = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
cmp = {
|
||||
enable = true;
|
||||
autoEnableSources = true;
|
||||
|
||||
settings = {
|
||||
sources = [
|
||||
{name = "nvim_lsp";}
|
||||
{name = "path";}
|
||||
{name = "buffer";}
|
||||
{name = "luasnip";}
|
||||
];
|
||||
mapping = {
|
||||
"<C-Space>" = "cmp.mapping.complete()";
|
||||
"<C-d>" = "cmp.mapping.scroll_docs(-4)";
|
||||
"<C-e>" = "cmp.mapping.close()";
|
||||
"<C-f>" = "cmp.mapping.scroll_docs(4)";
|
||||
"<CR>" = "cmp.mapping.confirm({ select = true })";
|
||||
"<S-Tab>" = "cmp.mapping(cmp.mapping.select_prev_item(), {'i', 's'})";
|
||||
"<Tab>" = "cmp.mapping(cmp.mapping.select_next_item(), {'i', 's'})";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
lsp = {
|
||||
enable = true;
|
||||
|
||||
servers = {
|
||||
nixd = {
|
||||
enable = true;
|
||||
extraOptions = {
|
||||
offset_encoding = "utf-8";
|
||||
};
|
||||
};
|
||||
ts_ls.enable = true;
|
||||
gopls.enable = true;
|
||||
golangci_lint_ls.enable = true;
|
||||
rust_analyzer = {
|
||||
enable = true;
|
||||
installCargo = true;
|
||||
installRustc = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
68
home-manager/commands/nixvim/plugins/blink-cmp.nix
Normal file
68
home-manager/commands/nixvim/plugins/blink-cmp.nix
Normal file
@@ -0,0 +1,68 @@
|
||||
{
|
||||
programs.nixvim.plugins = {
|
||||
blink-cmp = {
|
||||
enable = true;
|
||||
settings = {
|
||||
completion = {
|
||||
accept = {
|
||||
auto_brackets = {
|
||||
enabled = true;
|
||||
semantic_token_resolution = {
|
||||
enabled = false;
|
||||
};
|
||||
};
|
||||
};
|
||||
documentation = {
|
||||
auto_show = true;
|
||||
};
|
||||
};
|
||||
keymap = {
|
||||
"<C-e>" = [
|
||||
"hide"
|
||||
];
|
||||
"<C-d>" = [
|
||||
"scroll_documentation_up"
|
||||
"fallback"
|
||||
];
|
||||
"<C-f>" = [
|
||||
"scroll_documentation_down"
|
||||
"fallback"
|
||||
];
|
||||
"<Tab>" = [
|
||||
"select_next"
|
||||
"fallback"
|
||||
];
|
||||
"<S-Tab>" = [
|
||||
"select_prev"
|
||||
"fallback"
|
||||
];
|
||||
"<C-space>" = [
|
||||
"show"
|
||||
"show_documentation"
|
||||
"hide_documentation"
|
||||
];
|
||||
"<CR>" = [
|
||||
"select_and_accept"
|
||||
"fallback"
|
||||
];
|
||||
"<Down>" = [
|
||||
"select_next"
|
||||
"fallback"
|
||||
];
|
||||
"<Up>" = [
|
||||
"select_prev"
|
||||
"fallback"
|
||||
];
|
||||
"<S-s>" = [
|
||||
"snippet_backward"
|
||||
"fallback"
|
||||
];
|
||||
"<s>" = [
|
||||
"snippet_forward"
|
||||
"fallback"
|
||||
];
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
47
home-manager/commands/nixvim/plugins/codecompanion.nix
Normal file
47
home-manager/commands/nixvim/plugins/codecompanion.nix
Normal file
@@ -0,0 +1,47 @@
|
||||
{
|
||||
programs.nixvim.plugins = {
|
||||
codecompanion = {
|
||||
enable = true;
|
||||
settings = {
|
||||
adapters = {
|
||||
ollama = {
|
||||
__raw = ''
|
||||
function()
|
||||
return require('codecompanion.adapters').extend('ollama', {
|
||||
env = {
|
||||
url = "http://ena:11434",
|
||||
},
|
||||
schema = {
|
||||
model = {
|
||||
default = 'qwen2.5-coder:7b',
|
||||
},
|
||||
num_ctx = {
|
||||
default = 32768,
|
||||
},
|
||||
},
|
||||
})
|
||||
end
|
||||
'';
|
||||
};
|
||||
};
|
||||
opts = {
|
||||
log_level = "TRACE";
|
||||
send_code = true;
|
||||
use_default_actions = true;
|
||||
use_default_prompts = true;
|
||||
};
|
||||
strategies = {
|
||||
agent = {
|
||||
adapter = "ollama";
|
||||
};
|
||||
chat = {
|
||||
adapter = "ollama";
|
||||
};
|
||||
inline = {
|
||||
adapter = "ollama";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
44
home-manager/commands/nixvim/plugins/default.nix
Normal file
44
home-manager/commands/nixvim/plugins/default.nix
Normal file
@@ -0,0 +1,44 @@
|
||||
{
|
||||
imports = [
|
||||
./blink-cmp.nix
|
||||
./codecompanion.nix
|
||||
./glance.nix
|
||||
./illuminate.nix
|
||||
./indent-blankline.nix
|
||||
./lint.nix
|
||||
./lsp.nix
|
||||
./scrollview.nix
|
||||
./startup.nix
|
||||
./telescope.nix
|
||||
./which-key.nix
|
||||
];
|
||||
|
||||
programs.nixvim.plugins = {
|
||||
cmp-nvim-lsp.enable = true;
|
||||
cmp.enable = true;
|
||||
cmp_luasnip.enable = true;
|
||||
colorizer.enable = true;
|
||||
comment.enable = true;
|
||||
diffview.enable = true;
|
||||
direnv.enable = true;
|
||||
gitblame.enable = true;
|
||||
gitsigns.enable = true;
|
||||
intellitab.enable = true;
|
||||
lastplace.enable = true;
|
||||
lsp-format.enable = true;
|
||||
lsp-lines.enable = true;
|
||||
lsp-signature.enable = true;
|
||||
lualine.enable = true;
|
||||
luasnip.enable = true;
|
||||
markview.enable = true;
|
||||
multicursors.enable = true;
|
||||
neo-tree.enable = true;
|
||||
neoscroll.enable = true;
|
||||
nvim-autopairs.enable = true;
|
||||
refactoring.enable = true;
|
||||
toggleterm.enable = true;
|
||||
treesitter.enable = true;
|
||||
web-devicons.enable = true;
|
||||
zig.enable = true;
|
||||
};
|
||||
}
|
||||
11
home-manager/commands/nixvim/plugins/glance.nix
Normal file
11
home-manager/commands/nixvim/plugins/glance.nix
Normal file
@@ -0,0 +1,11 @@
|
||||
{
|
||||
programs.nixvim.plugins = {
|
||||
glance = {
|
||||
enable = true;
|
||||
settings = {
|
||||
border.enable = true;
|
||||
theme.mode = "darken";
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
14
home-manager/commands/nixvim/plugins/illuminate.nix
Normal file
14
home-manager/commands/nixvim/plugins/illuminate.nix
Normal file
@@ -0,0 +1,14 @@
|
||||
{
|
||||
programs.nixvim.plugins = {
|
||||
illuminate = {
|
||||
enable = true;
|
||||
delay = 100;
|
||||
minCountToHighlight = 1;
|
||||
modesAllowlist = [
|
||||
"n"
|
||||
"i"
|
||||
"v"
|
||||
];
|
||||
};
|
||||
};
|
||||
}
|
||||
14
home-manager/commands/nixvim/plugins/indent-blankline.nix
Normal file
14
home-manager/commands/nixvim/plugins/indent-blankline.nix
Normal file
@@ -0,0 +1,14 @@
|
||||
{
|
||||
programs.nixvim.plugins = {
|
||||
indent-blankline = {
|
||||
enable = true;
|
||||
settings = {
|
||||
scope = {
|
||||
show_end = true;
|
||||
show_exact_scope = true;
|
||||
show_start = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
13
home-manager/commands/nixvim/plugins/lint.nix
Normal file
13
home-manager/commands/nixvim/plugins/lint.nix
Normal file
@@ -0,0 +1,13 @@
|
||||
{
|
||||
programs.nixvim.plugins = {
|
||||
lint = {
|
||||
enable = true;
|
||||
autoCmd = {
|
||||
event = [
|
||||
"InsertLeave"
|
||||
"TextChanged"
|
||||
];
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
35
home-manager/commands/nixvim/plugins/lsp.nix
Normal file
35
home-manager/commands/nixvim/plugins/lsp.nix
Normal file
@@ -0,0 +1,35 @@
|
||||
{ pkgs, ... }:
|
||||
{
|
||||
programs.nixvim.plugins = {
|
||||
lsp = {
|
||||
enable = true;
|
||||
servers = {
|
||||
nil_ls.enable = true;
|
||||
nixd = {
|
||||
enable = true;
|
||||
extraOptions = {
|
||||
offset_encoding = "utf-8";
|
||||
};
|
||||
};
|
||||
html.enable = true;
|
||||
ts_ls.enable = true;
|
||||
tailwindcss.enable = true;
|
||||
gopls.enable = true;
|
||||
golangci_lint_ls.enable = true;
|
||||
templ.enable = true;
|
||||
pylsp.enable = true;
|
||||
sqls.enable = true;
|
||||
ocamllsp = {
|
||||
enable = true;
|
||||
package = pkgs.ocamlPackages.ocaml-lsp;
|
||||
};
|
||||
rust_analyzer = {
|
||||
enable = true;
|
||||
installCargo = true;
|
||||
installRustc = true;
|
||||
};
|
||||
zls.enable = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
12
home-manager/commands/nixvim/plugins/scrollview.nix
Normal file
12
home-manager/commands/nixvim/plugins/scrollview.nix
Normal file
@@ -0,0 +1,12 @@
|
||||
{
|
||||
programs.nixvim.plugins = {
|
||||
scrollview = {
|
||||
enable = true;
|
||||
settings = {
|
||||
signs_on_startup = [
|
||||
"all"
|
||||
];
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
63
home-manager/commands/nixvim/plugins/startup.nix
Normal file
63
home-manager/commands/nixvim/plugins/startup.nix
Normal file
@@ -0,0 +1,63 @@
|
||||
{
|
||||
programs.nixvim.plugins = {
|
||||
startup = {
|
||||
enable = true;
|
||||
parts = [
|
||||
"header"
|
||||
"body"
|
||||
];
|
||||
sections = {
|
||||
header = {
|
||||
align = "center";
|
||||
content = {
|
||||
__raw = "require('startup.headers').hydra_header";
|
||||
};
|
||||
defaultColor = "";
|
||||
foldSection = false;
|
||||
highlight = "Statement";
|
||||
margin = 5;
|
||||
oldfilesAmount = 0;
|
||||
title = "Header";
|
||||
type = "text";
|
||||
};
|
||||
body = {
|
||||
align = "center";
|
||||
content = [
|
||||
[
|
||||
" Find File"
|
||||
"Telescope find_files"
|
||||
"<leader>ff"
|
||||
]
|
||||
[
|
||||
" Find Word"
|
||||
"Telescope live_grep"
|
||||
"<leader>lg"
|
||||
]
|
||||
[
|
||||
" Recent Files"
|
||||
"Telescope oldfiles"
|
||||
"<leader>of"
|
||||
]
|
||||
[
|
||||
" File Browser"
|
||||
"Telescope file_browser"
|
||||
"<leader>fb"
|
||||
]
|
||||
[
|
||||
" New File"
|
||||
"lua require'startup'.new_file()"
|
||||
"<leader>nf"
|
||||
]
|
||||
];
|
||||
defaultColor = "";
|
||||
foldSection = false;
|
||||
highlight = "String";
|
||||
margin = 5;
|
||||
oldfilesAmount = 0;
|
||||
title = "Basic Commands";
|
||||
type = "mapping";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
16
home-manager/commands/nixvim/plugins/telescope.nix
Normal file
16
home-manager/commands/nixvim/plugins/telescope.nix
Normal file
@@ -0,0 +1,16 @@
|
||||
{
|
||||
programs.nixvim.plugins = {
|
||||
telescope = {
|
||||
enable = true;
|
||||
extensions.file-browser = {
|
||||
enable = true;
|
||||
settings = {
|
||||
hidden = {
|
||||
file_browser = true;
|
||||
folder_browser = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
45
home-manager/commands/nixvim/plugins/which-key.nix
Normal file
45
home-manager/commands/nixvim/plugins/which-key.nix
Normal file
@@ -0,0 +1,45 @@
|
||||
{
|
||||
programs.nixvim.plugins = {
|
||||
which-key = {
|
||||
enable = true;
|
||||
settings = {
|
||||
preset = "modern";
|
||||
delay = 500;
|
||||
expand = 1;
|
||||
notify = false;
|
||||
win = {
|
||||
border = "single";
|
||||
padding = [
|
||||
1
|
||||
1
|
||||
];
|
||||
wo.winblend = 10;
|
||||
};
|
||||
replace = {
|
||||
desc = [
|
||||
[
|
||||
"<space>"
|
||||
"SPACE"
|
||||
]
|
||||
[
|
||||
"<leader>"
|
||||
"SPACE"
|
||||
]
|
||||
[
|
||||
"<[cC][rR]>"
|
||||
"RETURN"
|
||||
]
|
||||
[
|
||||
"<[tT][aA][bB]>"
|
||||
"TAB"
|
||||
]
|
||||
[
|
||||
"<[bB][sS]>"
|
||||
"BACKSPACE"
|
||||
]
|
||||
];
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
@@ -3,6 +3,7 @@
|
||||
{
|
||||
programs = {
|
||||
starship = {
|
||||
enable = true;
|
||||
settings = {
|
||||
add_newline = true;
|
||||
format = lib.concatStrings [
|
||||
|
||||
25
home-manager/commands/tmux.nix
Normal file
25
home-manager/commands/tmux.nix
Normal file
@@ -0,0 +1,25 @@
|
||||
{ pkgs, ... }:
|
||||
|
||||
{
|
||||
programs = {
|
||||
tmux = {
|
||||
enable = true;
|
||||
mouse = true;
|
||||
baseIndex = 1;
|
||||
keyMode = "vi";
|
||||
historyLimit = 5000;
|
||||
prefix = "C-a";
|
||||
terminal = "xterm-ghostty";
|
||||
disableConfirmationPrompt = true;
|
||||
plugins = with pkgs; [
|
||||
tmuxPlugins.vim-tmux-navigator
|
||||
tmuxPlugins.tilish
|
||||
tmuxPlugins.resurrect
|
||||
tmuxPlugins.gruvbox
|
||||
tmuxPlugins.continuum
|
||||
tmuxPlugins.prefix-highlight
|
||||
];
|
||||
extraConfig = "bind C-l send-keys 'C-l'";
|
||||
};
|
||||
};
|
||||
}
|
||||
52
home-manager/commands/zsh.nix
Normal file
52
home-manager/commands/zsh.nix
Normal file
@@ -0,0 +1,52 @@
|
||||
{ config, configPath, ... }:
|
||||
{
|
||||
programs = {
|
||||
zsh = {
|
||||
enable = true;
|
||||
enableCompletion = true;
|
||||
autosuggestion.enable = true;
|
||||
syntaxHighlighting.enable = true;
|
||||
historySubstringSearch.enable = true;
|
||||
|
||||
shellAliases = {
|
||||
cd = "z";
|
||||
cat = "bat";
|
||||
catp = "bat -p";
|
||||
fk = "thefuck";
|
||||
fu = "thefuck";
|
||||
fuck = "thefuck";
|
||||
grep = "grep --color=auto";
|
||||
lg = "lazygit";
|
||||
ll = "eza -la";
|
||||
ls = "eza --color=auto";
|
||||
lt = "eza --tree";
|
||||
open = "xdg-open";
|
||||
locate = "sudo plocate";
|
||||
tulpn = "sudo netstat -tulpn";
|
||||
rebuild = "sudo nixos-rebuild switch --flake /etc/nixos#$(uname -n)";
|
||||
};
|
||||
|
||||
envExtra = ''
|
||||
#eval $(thefuck --alias)
|
||||
'';
|
||||
|
||||
profileExtra = ''
|
||||
export SSH_AUTH_SOCK=~/.1password/agent.sock
|
||||
'';
|
||||
|
||||
initExtra = ''
|
||||
fastfetch
|
||||
'';
|
||||
|
||||
history = {
|
||||
size = 10000;
|
||||
path = "${config.xdg.dataHome}/zsh/history";
|
||||
};
|
||||
|
||||
oh-my-zsh = {
|
||||
enable = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
@@ -2,12 +2,7 @@
|
||||
|
||||
{
|
||||
imports = [
|
||||
./commands/cli-tools.nix
|
||||
./commands/direnv.nix
|
||||
./commands/fastfetch/fastfetch.nix
|
||||
./commands/ghostty.nix
|
||||
./commands/nixvim/nixvim.nix
|
||||
./commands/starship.nix
|
||||
./commands/commands.nix
|
||||
./programs/programs.nix
|
||||
inputs.nixvim.homeManagerModules.nixvim
|
||||
];
|
||||
|
||||
36
home-manager/programs/ghostty.nix
Normal file
36
home-manager/programs/ghostty.nix
Normal file
@@ -0,0 +1,36 @@
|
||||
{
|
||||
programs.ghostty = {
|
||||
enable = true;
|
||||
enableZshIntegration = true;
|
||||
settings = {
|
||||
theme = "Adwaita Dark";
|
||||
|
||||
#custom-shader = "./shaders/tft.glsl";
|
||||
|
||||
font-family = "JetBrainsMono Nerd Font";
|
||||
font-family-italic = "Maple Mono";
|
||||
font-family-bold-italic = "Maple Mono";
|
||||
font-size = 12;
|
||||
bold-is-bright = true;
|
||||
|
||||
window-decoration = false;
|
||||
background-opacity = 0.8;
|
||||
#background-blur-radius = 120;
|
||||
window-save-state = "always";
|
||||
|
||||
mouse-hide-while-typing = true;
|
||||
cursor-invert-fg-bg = true;
|
||||
|
||||
keybind = [
|
||||
"super+shift+k=new_split:down"
|
||||
"super+shift+l=new_split:right"
|
||||
"super+shift+x=close_window"
|
||||
];
|
||||
};
|
||||
};
|
||||
#home.file.".config/ghostty/shaders" = {
|
||||
# enable = true;
|
||||
# source = ./shaders;
|
||||
# recursive = true;
|
||||
#};
|
||||
}
|
||||
@@ -2,8 +2,8 @@
|
||||
|
||||
{
|
||||
imports = [
|
||||
|
||||
];
|
||||
./ghostty.nix
|
||||
];
|
||||
|
||||
home.packages = with pkgs; [
|
||||
# # Adds the 'hello' command to your environment. It prints a friendly
|
||||
@@ -19,6 +19,7 @@
|
||||
kdePackages.oxygen-sounds
|
||||
kdePackages.partitionmanager
|
||||
libreoffice-still
|
||||
librewolf
|
||||
localsend
|
||||
lutris-unwrapped
|
||||
meld
|
||||
|
||||
Reference in New Issue
Block a user