swapped nvf for nixvim, syncthing is only in home-manager now

This commit is contained in:
beanigen 2025-02-24 20:51:44 +08:00
parent 4794efc276
commit d11bfc67ec
No known key found for this signature in database
15 changed files with 334 additions and 3027 deletions

View file

@ -137,7 +137,7 @@
users.users.maya = { users.users.maya = {
isNormalUser = true; isNormalUser = true;
description = "Maya"; description = "Maya";
extraGroups = [ "networkmanager" "wheel" "libvirtd" "camera" ]; extraGroups = [ "networkmanager" "wheel" "libvirtd" "camera" "input"];
packages = with pkgs; [ packages = with pkgs; [
# thunderbird # thunderbird
]; ];

View file

@ -3,8 +3,9 @@
./configuration.nix ./configuration.nix
../overrides.nix ../overrides.nix
../ssh.nix ../ssh.nix
../syncthing.nix ../firewall.nix
../substituters.nix ../substituters.nix
../fonts.nix ../fonts.nix
../udev.nix
]; ];
} }

5
base/firewall.nix Normal file
View file

@ -0,0 +1,5 @@
{
networking.firewall.allowedTCPPorts = [ 22000 ];
networking.firewall.allowedUDPPorts = [ 22000 21027 ];
#for syncthing
}

View file

@ -1,45 +0,0 @@
{
networking.firewall.allowedTCPPorts = [ 22000 ];
networking.firewall.allowedUDPPorts = [ 22000 21027 ];
services.syncthing = {
enable = true;
user = "maya";
dataDir = "/home/maya/sync/";
configDir = "/home/maya/.config/syncthing";
overrideDevices = true;
overrideFolders = true;
settings = {
devices = {
"hypermac" = { id = "XVY5YLM-QETCA4H-KT4XBEH-IR4U47O-CJCJ5YM-DPVWQQX-VHEK4MS-GJCMIQ2"; };
"adventurer" = { id = "LLKP3BJ-5RBN5KR-63NXUCW-JC4FMAX-QOXTJBK-65OHI7V-OKZQPTD-5FJIIAB"; };
"callisto" = { id = "NPXGWEK-JP4C2NM-QZZPBYI-ISAXIZK-ORCNVGO-C4GFRHJ-SWWFQGC-F5JAMQC"; };
"traveler" = { id = "JVNNE3V-IMVW2YL-JKEWUJZ-N5PU4NE-3YQDEU7-77ZHIP3-ADW3LAA-NODOVA3"; };
};
folders = {
"General" = {
path = "/home/maya/sync/general";
devices = [ "callisto" "hypermac" "adventurer" "traveler" ];
};
"Music" = {
path = "/home/maya/Music";
devices = [ "callisto" "hypermac" "adventurer" "traveler" ];
};
"College" = {
path = "/home/maya/sync/college";
devices = [ "callisto" "hypermac" "adventurer" "traveler" ];
versioning = {
type = "staggered";
params = {
cleanInterval = "3600";
maxAge = "15768000";
};
};
};
"PrusaSlicer" = {
path = "/home/maya/.config/PrusaSlicer";
devices = [ "callisto" "hypermac" "adventurer" "traveler" ];
};
};
};
};
}

11
base/template/default.nix Normal file
View file

@ -0,0 +1,11 @@
{config, pkgs, ...}:{
imports = [
./configuration.nix
../overrides.nix
../ssh.nix
../firewall.nix
../substituters.nix
../fonts.nix
../udev.nix
];
}

38
base/udev.nix Normal file
View file

@ -0,0 +1,38 @@
{
services.udev.extraRules = ''
# Sony PlayStation Strikepack; USB
KERNEL=="hidraw*", ATTRS{idVendor}=="054c", ATTRS{idProduct}=="05c5", MODE="0660", TAG+="uaccess"
# Sony PlayStation DualShock 3; Bluetooth; USB
KERNEL=="hidraw*", KERNELS=="*054C:0268*", MODE="0660", TAG+="uaccess"
KERNEL=="hidraw*", ATTRS{idVendor}=="054c", ATTRS{idProduct}=="0268", MODE="0660", TAG+="uaccess"
## Motion Sensors
SUBSYSTEM=="input", KERNEL=="event*|input*", KERNELS=="*054C:0268*", TAG+="uaccess"
# Sony PlayStation DualShock 4; Bluetooth; USB
KERNEL=="hidraw*", KERNELS=="*054C:05C4*", MODE="0660", TAG+="uaccess"
KERNEL=="hidraw*", ATTRS{idVendor}=="054c", ATTRS{idProduct}=="05c4", MODE="0660", TAG+="uaccess"
# Sony PlayStation DualShock 4 Slim; Bluetooth; USB
KERNEL=="hidraw*", KERNELS=="*054C:09CC*", MODE="0660", TAG+="uaccess"
KERNEL=="hidraw*", ATTRS{idVendor}=="054c", ATTRS{idProduct}=="09cc", MODE="0660", TAG+="uaccess"
# Sony PlayStation DualShock 4 Wireless Adapter; USB
KERNEL=="hidraw*", ATTRS{idVendor}=="054c", ATTRS{idProduct}=="0ba0", MODE="0660", TAG+="uaccess"
# Sony DualSense Wireless-Controller; Bluetooth; USB
KERNEL=="hidraw*", KERNELS=="*054C:0CE6*", MODE="0660", TAG+="uaccess"
KERNEL=="hidraw*", ATTRS{idVendor}=="054c", ATTRS{idProduct}=="0ce6", MODE="0660", TAG+="uaccess"
# Sony DualSense Edge Wireless-Controller; Bluetooth; USB
KERNEL=="hidraw*", KERNELS=="*054C:0DF2*", MODE="0660", TAG+="uaccess"
KERNEL=="hidraw*", ATTRS{idVendor}=="054c", ATTRS{idProduct}=="0df2", MODE="0660", TAG+="uaccess"
'';
services.udev.extraHwdb = ''
id-input:modalias:input:b0003v054Cp0268*
id-input:modalias:input:b0005v054Cp0268*
ID_INPUT_ACCELEROMETER=1
ID_INPUT_JOYSTICK=1
'';
}

3130
flake.lock generated

File diff suppressed because it is too large Load diff

View file

@ -7,7 +7,7 @@
home-manager.url = "github:nix-community/home-manager"; home-manager.url = "github:nix-community/home-manager";
home-manager.inputs.nixpkgs.follows = "nixpkgs"; home-manager.inputs.nixpkgs.follows = "nixpkgs";
catppuccin.url = "github:catppuccin/nix"; catppuccin.url = "github:catppuccin/nix";
nvf.url = "github:notashelf/nvf"; nixvim.url = "github:nix-community/nixvim";
nix-index-database.url = "github:nix-community/nix-index-database"; nix-index-database.url = "github:nix-community/nix-index-database";
nix-index-database.inputs.nixpkgs.follows = "nixpkgs"; nix-index-database.inputs.nixpkgs.follows = "nixpkgs";
}; };
@ -17,6 +17,7 @@
system = "x86_64-linux"; system = "x86_64-linux";
modules = [ modules = [
./base/apollo ./base/apollo
home-manager.nixosModules.home-manager { home-manager.nixosModules.home-manager {
#imports = [ inputs.nix-index-database.hmModules.nix-index ]; #imports = [ inputs.nix-index-database.hmModules.nix-index ];
home-manager.extraSpecialArgs = { home-manager.extraSpecialArgs = {
@ -25,11 +26,12 @@
isNixOS = true; isNixOS = true;
class = "desktop"; class = "desktop";
user = "maya"; #cursed way of setting username user = "maya"; #cursed way of setting username
useSyncthing = true; #if this is false, comment out the syncthing ports in ./base/firewall.nix
}; };
}; };
home-manager.useGlobalPkgs = true; home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true; home-manager.useUserPackages = true;
home-manager.users.maya = ./home; home-manager.users.maya = ./home; #change username here too
} }
]; ];
}; };
@ -43,6 +45,7 @@
isNixOS = false; isNixOS = false;
class = "laptop"; class = "laptop";
user = "maya"; user = "maya";
useSyncthing = true;
}; };
}; };
}; };

View file

@ -2,9 +2,10 @@
imports = [ imports = [
#home-manager modules #home-manager modules
inputs.nix-index-database.hmModules.nix-index inputs.nix-index-database.hmModules.nix-index
inputs.nvf.homeManagerModules.default inputs.nixvim.homeManagerModules.nixvim
inputs.catppuccin.homeManagerModules.catppuccin inputs.catppuccin.homeManagerModules.catppuccin
#aux files to make finding specific things easier #aux files to make finding specific things easier
./nixvim
./sway.nix ./sway.nix
./theming.nix ./theming.nix
./packages.nix #general user packages not managed by home-manager but i want to install via hm anyways ./packages.nix #general user packages not managed by home-manager but i want to install via hm anyways
@ -42,6 +43,8 @@
} }
''; '';
}; };
services.syncthing.enable = (vars.useSyncthing);
services.mpd-mpris = { services.mpd-mpris = {
enable = true; enable = true;
}; };
@ -72,24 +75,4 @@
obs-pipewire-audio-capture obs-pipewire-audio-capture
]; ];
}; };
programs.nvf = {
enable = true;
settings.vim = {
statusline.lualine = {
enable = true;
theme = "dracula";
};
autocomplete.nvim-cmp.enable = true;
languages = {
enableFormat = true;
enableLSP = true;
#enableTreesitter = true; disabled until it fixes itself
nix.enable = true;
clang.enable = true;
html.enable = true;
css.enable = true;
python.enable = true;
};
};
};
} }

38
home/nixvim/default.nix Normal file
View file

@ -0,0 +1,38 @@
{vars, ...}:{
programs.nixvim = {
enable = true;
colorschemes.catppuccin.enable = true;
colorschemes.catppuccin.settings.flavour = "mocha";
plugins = {
treesitter.enable = true;
fidget.enable = true;
lualine.enable = true;
lualine.settings.options.theme = "dracula";
cmp = {
enable = true;
settings = {
performance.throttle = 30;
sources = [{name = "nvim_lsp";}{name = "luasnip";}{name = "path";}{name = "buffer";}];
mapping = {
"<Tab>" = "cmp.mapping.select_next_item()";
"<S-Tab>" = "cmp.mapping.select_prev_item()";
"<C-space>" = "cmp.mapping.confirm({ select = false })";
};
};
};
lsp = {
enable = true;
servers.nixd = {
enable = true;
extraOptions.offset_encoding = "utf-8";
settings.nixpkgs.expr = "import <nixpkgs>{}";
settings.options = {
nixos.expr = "(builtins.getFlake \"/home/${vars.user}/.config/nixos\").nixosConfigurations.apollo.options";
home-manager.expr = "(builtins.getFlake \"/home/${vars.user}/.config/nixos\").homeConfigurations.generic.options";
nixvim.expr = "(builtins.getFlake \"/home/${vars.user}/.config/nixos\").homeConfigurations.generic.options.programs.nixvim.type.getSubOptions []";
};
};
};
};
};
}

View file

@ -66,6 +66,8 @@
"XF86Launch1" = "exec nmcli device wifi rescan"; "XF86Launch1" = "exec nmcli device wifi rescan";
"Shift_L+Control_L+B" = "exec playerctl position 10-"; "Shift_L+Control_L+B" = "exec playerctl position 10-";
"Shift_L+Control_L+F" = "exec playerctl position 10+"; "Shift_L+Control_L+F" = "exec playerctl position 10+";
"Mod4+w" = null;
"Mod4+s" = null;
}; };
floating.criteria = [ floating.criteria = [
{ app_id = "^fzf-launcher-foot$";} { app_id = "^fzf-launcher-foot$";}

View file

@ -1,6 +1,5 @@
{ {
services.syncthing = { services.syncthing = {
enable = true;
overrideDevices = true; overrideDevices = true;
overrideFolders = true; overrideFolders = true;
settings = { settings = {

View file

@ -1,26 +0,0 @@
@define-color rosewater #f5e0dc;
@define-color flamingo #f2cdcd;
@define-color pink #f5c2e7;
@define-color mauve #cba6f7;
@define-color red #f38ba8;
@define-color maroon #eba0ac;
@define-color peach #fab387;
@define-color yellow #f9e2af;
@define-color green #a6e3a1;
@define-color teal #94e2d5;
@define-color sky #89dceb;
@define-color sapphire #74c7ec;
@define-color blue #89b4fa;
@define-color lavender #b4befe;
@define-color text #cdd6f4;
@define-color subtext1 #bac2de;
@define-color subtext0 #a6adc8;
@define-color overlay2 #9399b2;
@define-color overlay1 #7f849c;
@define-color overlay0 #6c7086;
@define-color surface2 #585b70;
@define-color surface1 #45475a;
@define-color surface0 #313244;
@define-color base #1e1e2e;
@define-color mantle #181825;
@define-color crust #11111b;

View file

@ -1,4 +1,30 @@
@import "/home/maya/.config/nixos/home/waybar/mocha.css"; @define-color rosewater #f5e0dc;
@define-color flamingo #f2cdcd;
@define-color pink #f5c2e7;
@define-color mauve #cba6f7;
@define-color red #f38ba8;
@define-color maroon #eba0ac;
@define-color peach #fab387;
@define-color yellow #f9e2af;
@define-color green #a6e3a1;
@define-color teal #94e2d5;
@define-color sky #89dceb;
@define-color sapphire #74c7ec;
@define-color blue #89b4fa;
@define-color lavender #b4befe;
@define-color text #cdd6f4;
@define-color subtext1 #bac2de;
@define-color subtext0 #a6adc8;
@define-color overlay2 #9399b2;
@define-color overlay1 #7f849c;
@define-color overlay0 #6c7086;
@define-color surface2 #585b70;
@define-color surface1 #45475a;
@define-color surface0 #313244;
@define-color base #1e1e2e;
@define-color mantle #181825;
@define-color crust #11111b;
/* forgive me, above is the contents of catppuccin mocha's waybar css file */
* { * {
font-family: Iosevka NF; font-family: Iosevka NF;
} }