Compare commits

...

8 commits

Author SHA1 Message Date
willifan
267b0e1f28 added Lillie host 2024-11-02 13:29:38 +01:00
willifan
d8df4f3de1 removed nixpkgs-stable 2024-11-02 13:27:53 +01:00
willifan
3ef26e3276 added autopairs 2024-10-27 20:20:20 +01:00
willifan
01a127a380 added cmp 2024-10-27 20:18:30 +01:00
willifan
98aec6feb6 removed ToggleTerm 2024-10-27 19:19:56 +01:00
willifan
95710759c9 added a lot of nvim settings 2024-10-27 19:16:47 +01:00
willifan
bde74761f1 change movefocus hyprland shortcuts 2024-10-27 19:06:41 +01:00
willifan
b13906a891 added tmux 2024-10-27 17:58:03 +01:00
15 changed files with 277 additions and 52 deletions

17
flake.lock generated
View file

@ -396,22 +396,6 @@
"type": "github"
}
},
"nixpkgs-stable": {
"locked": {
"lastModified": 1728909085,
"narHash": "sha256-WLxED18lodtQiayIPDE5zwAfkPJSjHJ35UhZ8h3cJUg=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "c0b1da36f7c34a7146501f684e9ebdf15d2bebf8",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-24.05",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_2": {
"locked": {
"lastModified": 1725194671,
@ -484,7 +468,6 @@
"home-manager": "home-manager",
"nixos-hardware": "nixos-hardware",
"nixpkgs": "nixpkgs",
"nixpkgs-stable": "nixpkgs-stable",
"nixvim": "nixvim",
"stylix": "stylix",
"zen": "zen"

View file

@ -4,7 +4,6 @@
inputs = {
# NixOS official package source, using the nixos-23.11 branch here
nixpkgs-stable.url = "github:NixOS/nixpkgs/nixos-24.05";
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
nixos-hardware.url = "github:nixos/nixos-hardware";
@ -40,11 +39,9 @@
};
outputs = { nixpkgs, nixpkgs-stable, ... }@attrs:
outputs = { nixpkgs, ... }@attrs:
let
lib = nixpkgs.lib;
pkgs = import nixpkgs { system = "x86_64-linux"; config = { allowUnfree = true; }; };
pkgs-stable = import nixpkgs-stable { system = "x86_64-linux"; config = { allowUnfree = true; }; };
in
{
nixosConfigurations = {
@ -57,9 +54,7 @@
specialArgs = {
hostname = "Lenni";
type = "desktop";
inherit pkgs;
inherit pkgs-stable;
inherit attrs;
inherit attrs;
inherit system;
};
@ -87,9 +82,7 @@
specialArgs = {
hostname = "Puenktchen";
type = "desktop";
inherit pkgs;
inherit pkgs-stable;
inherit attrs;
inherit attrs;
inherit system;
};
@ -120,9 +113,7 @@
specialArgs = {
hostname = "Anton";
type = "server";
inherit pkgs;
inherit pkgs-stable;
inherit attrs;
inherit attrs;
inherit system;
};
@ -144,6 +135,33 @@
};
Lillie = let
system = "x86_64-linux";
in
lib.nixosSystem {
specialArgs = {
hostname = "Lillie";
type = "desktop";
inherit attrs;
inherit system;
};
modules = [
attrs.home-manager.nixosModules.home-manager
{
home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true;
}
attrs.disko.nixosModules.disko
attrs.stylix.nixosModules.stylix
attrs.nixvim.nixosModules.nixvim
./hosts
./users/willifan
];
};
};
};
}

7
hosts/Lillie/default.nix Normal file
View file

@ -0,0 +1,7 @@
{ ... }:
{
imports = [
./hardware-configuration.nix
./disko.nix
];
}

56
hosts/Lillie/disko.nix Normal file
View file

@ -0,0 +1,56 @@
{
disko.devices = {
disk = {
nvme0n1 = {
type = "disk";
device = "/dev/disk/by-id/nvme-CT1000P310SSD2-24314A4587C7";
content = {
type = "gpt";
partitions = {
ESP = {
priority = 1;
name = "ESP";
size = "512M";
type = "EF00";
content = {
type = "filesystem";
format = "vfat";
mountpoint = "/boot";
};
};
root = {
size = "100%";
content = {
type = "btrfs";
extraArgs = [ "-f" ]; # Override existing partition
# Subvolumes must set a mountpoint in order to be mounted,
# unless their parent is mounted
subvolumes = {
# Subvolume name is different from mountpoint
"/rootfs" = {
mountOptions = [ "compress=zstd" "noatime" ];
mountpoint = "/";
};
# Subvolume name is the same as the mountpoint
"/home" = {
mountOptions = [ "compress=zstd" "noatime" ];
mountpoint = "/home";
};
# Parent is not mounted so the mountpoint must be set
"/nix" = {
mountOptions = [ "compress=zstd" "noatime" ];
mountpoint = "/nix";
};
"/mnt/data" = {
mountOptions = [ "compress=zstd" "noatime" ];
mountpoint = "/mnt/data";
};
};
};
};
};
};
};
};
};
}

View file

@ -14,5 +14,6 @@
};
console.keyMap = "de";
nix.settings.experimental-features = [ "nix-command" "flakes" ];
nixpkgs.config.allowUnfree = true;
system.stateVersion = "23.11";
}

View file

@ -0,0 +1,4 @@
{ ... }:
{
}

View file

@ -4,6 +4,7 @@
./nixvim
./shell
./theme
./tmux
./utils
./envvar.nix

View file

@ -1,13 +1,7 @@
# Settings
add line numbers
change default tab width
KEYBINDS
# Plugins
add cmp
try out nvimtree
add lualine
make ToggleTerm not terrible
add autopairs
indent blankline??
todo comments

View file

@ -0,0 +1,9 @@
{ ... }:
{
programs.nixvim.plugins.nvim-autopairs = {
enable = true;
settings = {
disable_filetype = ["TelescopePrompt" "vim"];
};
};
}

View file

@ -0,0 +1,50 @@
{ ... }:
{
programs.nixvim.plugins = {
cmp = {
enable = true;
settings = {
autoEnableSources = true;
experimental = {ghost_text = false;};
performance = {
debounce = 60;
fetchingTimeout = 200;
maxViewEntries = 30;
};
snippet = {expand = "luasnip";};
formatting = {fields = ["kind" "abbr" "menu"];};
sources = [
{name = "git";}
{name = "nvim_lsp";}
{name = "emoji";}
{
name = "buffer"; # text within current buffer
option.get_bufnrs.__raw = "vim.api.nvim_list_bufs";
keywordLength = 3;
}
{name = "copilot";}
{
name = "path"; # file system paths
keywordLength = 3;
}
{
name = "luasnip"; # snippets
keywordLength = 3;
}
];
window = {
completion = {border = "solid";};
documentation = {border = "solid";};
};
};
};
cmp-nvim-lsp = {enable = true;}; # lsp
cmp-buffer = {enable = true;};
cmp-path = {enable = true;}; # file system paths
cmp_luasnip = {enable = true;}; # snippets
cmp-cmdline = {enable = false;}; # autocomplete for cmdline
};
}

View file

@ -7,13 +7,15 @@
};
imports = [
./autopairs.nix
./cmp.nix
./filetype.nix
./gitsigns.nix
./illuminate.nix
./lsp.nix
./navic.nix
./neotree.nix
./toggleterm.nix
./settings.nix
./treesitter.nix
./whichkey.nix
./yazi.nix

View file

@ -0,0 +1,101 @@
{ ... }:
{
programs.nixvim = {
config = {
extraConfigLuaPre =
# lua
''
vim.fn.sign_define("diagnosticsignerror", { text = " ", texthl = "diagnosticerror", linehl = "", numhl = "" })
vim.fn.sign_define("diagnosticsignwarn", { text = " ", texthl = "diagnosticwarn", linehl = "", numhl = "" })
vim.fn.sign_define("diagnosticsignhint", { text = "󰌵", texthl = "diagnostichint", linehl = "", numhl = "" })
vim.fn.sign_define("diagnosticsigninfo", { text = " ", texthl = "diagnosticinfo", linehl = "", numhl = "" })
'';
clipboard = {
providers.wl-copy.enable = true;
};
opts = {
# Show line numbers
number = true;
# Show relative line numbers
relativenumber = true;
# Use the system clipboard
clipboard = "unnamedplus";
# Number of spaces that represent a <TAB>
tabstop = 2;
softtabstop = 2;
# Show tabline always
showtabline = 2;
# Use spaces instead of tabs
expandtab = true;
# Enable smart indentation
smartindent = true;
# Number of spaces to use for each step of (auto)indent
shiftwidth = 2;
# Enable break indent
breakindent = true;
# Highlight the screen line of the cursor
cursorline = true;
# Minimum number of screen lines to keep above and below the cursor
scrolloff = 8;
# Enable mouse support
mouse = "a";
# Set folding method to manual
foldmethod = "manual";
# Disable folding by default
foldenable = false;
# Wrap long lines at a character in 'breakat'
linebreak = true;
# Disable spell checking
spell = false;
# Disable swap file creation
swapfile = false;
# Time in milliseconds to wait for a mapped sequence to complete
timeoutlen = 300;
# Enable 24-bit RGB color in the TUI
termguicolors = true;
# Don't show mode in the command line
showmode = false;
# Open new split below the current window
splitbelow = true;
# Keep the screen when splitting
splitkeep = "screen";
# Open new split to the right of the current window
splitright = true;
# Hide command line unless needed
cmdheight = 0;
# Remove EOB
fillchars = {
eob = " ";
};
};
};
};
}

View file

@ -1,11 +0,0 @@
{ ... }:
{
programs.nixvim.plugins = {
toggleterm = {
enable = true;
settings = {
size = 10;
};
};
};
}

View file

@ -0,0 +1,10 @@
{ ... }:
{
home-manager.users.willifan = {
programs.tmux = {
enable = true;
};
};
}

View file

@ -163,10 +163,10 @@
''$mainMod, F, fullscreen''
# Move focus with mainMod + arrow keys
''$mainMod, left, movefocus, l''
''$mainMod, right, movefocus, r''
''$mainMod, up, movefocus, u''
''$mainMod, down, movefocus, d''
''$mainMod, h, movefocus, l''
''$mainMod, l, movefocus, r''
''$mainMod, k, movefocus, u''
''$mainMod, j, movefocus, d''
'', XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle''
'', XF86AudioPrev, exec, playerctl previous''