mirror of
https://github.com/Nickiel12/nicks-nix-config.git
synced 2024-11-24 05:35:29 -08:00
Compare commits
8 commits
315dd99ba9
...
8f04684b00
Author | SHA1 | Date | |
---|---|---|---|
8f04684b00 | |||
ed5eec2321 | |||
1acf609dad | |||
b5fe8d4923 | |||
12eb601676 | |||
d8793e7bd9 | |||
37be951d8f | |||
f375dfea65 |
9 changed files with 148 additions and 94 deletions
61
flake.lock
61
flake.lock
|
@ -62,11 +62,11 @@
|
|||
"systems": "systems_2"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1692799911,
|
||||
"narHash": "sha256-3eihraek4qL744EvQXsK1Ha6C3CR7nnT8X2qWap4RNk=",
|
||||
"lastModified": 1694529238,
|
||||
"narHash": "sha256-zsNZZGTGnMOf9YpHKJqMSsa0dXbfmxeoJ7xHlrt+xmY=",
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"rev": "f9e7cf818399d17d347f847525c5a5a8032e4e44",
|
||||
"rev": "ff7b65b44d01cf9ba6a71320833626af21126384",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -122,11 +122,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1694642908,
|
||||
"narHash": "sha256-0Opzs/56VW03COlVdoBrHJZGxQ7gzLDEWADnccC8ras=",
|
||||
"lastModified": 1695224363,
|
||||
"narHash": "sha256-+hfjJLUMck5G92RVFDZA7LWkR3kOxs5zQ7RPW9t3eM8=",
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"rev": "b62f549653e97d78392c1e282b8ca76546a86585",
|
||||
"rev": "408ba13188ff9ce309fa2bdd2f81287d79773b00",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -141,11 +141,11 @@
|
|||
},
|
||||
"locked": {
|
||||
"dir": "nix",
|
||||
"lastModified": 1691843304,
|
||||
"narHash": "sha256-aLAMpvbQPLkpjJDUWYTYRmEclAQTo+IVzqPQYOfmxfw=",
|
||||
"lastModified": 1695227806,
|
||||
"narHash": "sha256-EcChzeEOh2oAZNgvR+kWCBpWomMopK2Zs+0+dvDUJh0=",
|
||||
"owner": "kmonad",
|
||||
"repo": "kmonad",
|
||||
"rev": "a05e93c62ca2c25cc81d76d9cf36880fe0bf183a",
|
||||
"rev": "22da3354e6f629f9294c830d8558875d77b5cffc",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -191,6 +191,22 @@
|
|||
}
|
||||
},
|
||||
"nixpkgs-stable": {
|
||||
"locked": {
|
||||
"lastModified": 1695283060,
|
||||
"narHash": "sha256-CJz71xhCLlRkdFUSQEL0pIAAfcnWFXMzd9vXhPrnrEg=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "31ed632c692e6a36cfc18083b88ece892f863ed4",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "release-23.05",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs-stable_2": {
|
||||
"locked": {
|
||||
"lastModified": 1685801374,
|
||||
"narHash": "sha256-otaSUoFEMM+LjBI1XL/xGB5ao6IwnZOXc47qhIgJe8U=",
|
||||
|
@ -240,11 +256,11 @@
|
|||
},
|
||||
"nixpkgs_4": {
|
||||
"locked": {
|
||||
"lastModified": 1694422566,
|
||||
"narHash": "sha256-lHJ+A9esOz9vln/3CJG23FV6Wd2OoOFbDeEs4cMGMqc=",
|
||||
"lastModified": 1695145219,
|
||||
"narHash": "sha256-Eoe9IHbvmo5wEDeJXKFOpKUwxYJIOxKUesounVccNYk=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "3a2786eea085f040a66ecde1bc3ddc7099f6dbeb",
|
||||
"rev": "5ba549eafcf3e33405e5f66decd1a72356632b96",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -256,11 +272,11 @@
|
|||
},
|
||||
"nixpkgs_5": {
|
||||
"locked": {
|
||||
"lastModified": 1694183432,
|
||||
"narHash": "sha256-YyPGNapgZNNj51ylQMw9lAgvxtM2ai1HZVUu3GS8Fng=",
|
||||
"lastModified": 1694767346,
|
||||
"narHash": "sha256-5uH27SiVFUwsTsqC5rs3kS7pBoNhtoy9QfTP9BmknGk=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "db9208ab987cdeeedf78ad9b4cf3c55f5ebd269b",
|
||||
"rev": "ace5093e36ab1e95cb9463863491bee90d5a4183",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -278,11 +294,11 @@
|
|||
"pre-commit-hooks": "pre-commit-hooks"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1694341786,
|
||||
"narHash": "sha256-7xp0lZ0Ihx1f9WLYxOWP73PlM0HOa0Wrp3/iF7D++zc=",
|
||||
"lastModified": 1695300485,
|
||||
"narHash": "sha256-lPxXM584q9AVdUZxbEJgIPVeg39X6GWIENuENRxyHqo=",
|
||||
"owner": "nix-community",
|
||||
"repo": "nixvim",
|
||||
"rev": "9e6892e8391a5bcc3727802b6a9fb2b9b52537df",
|
||||
"rev": "32a64af2318beac3c89d4d1fa0b73ce237c5cf1e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -327,14 +343,14 @@
|
|||
"nixvim",
|
||||
"nixpkgs"
|
||||
],
|
||||
"nixpkgs-stable": "nixpkgs-stable"
|
||||
"nixpkgs-stable": "nixpkgs-stable_2"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1692274144,
|
||||
"narHash": "sha256-BxTQuRUANQ81u8DJznQyPmRsg63t4Yc+0kcyq6OLz8s=",
|
||||
"lastModified": 1694364351,
|
||||
"narHash": "sha256-oadhSCqopYXxURwIA6/Anpe5IAG11q2LhvTJNP5zE6o=",
|
||||
"owner": "cachix",
|
||||
"repo": "pre-commit-hooks.nix",
|
||||
"rev": "7e3517c03d46159fdbf8c0e5c97f82d5d4b0c8fa",
|
||||
"rev": "4f883a76282bc28eb952570afc3d8a1bf6f481d7",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -349,6 +365,7 @@
|
|||
"kmonad": "kmonad",
|
||||
"nicks_nextcloud_integrations": "nicks_nextcloud_integrations",
|
||||
"nixpkgs": "nixpkgs_4",
|
||||
"nixpkgs-stable": "nixpkgs-stable",
|
||||
"nixvim": "nixvim"
|
||||
}
|
||||
},
|
||||
|
|
41
flake.nix
41
flake.nix
|
@ -4,10 +4,10 @@
|
|||
inputs = {
|
||||
nixvim.url = "github:nix-community/nixvim";
|
||||
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
|
||||
nixpkgs-stable.url = "github:NixOS/nixpkgs/release-23.05";
|
||||
kmonad.url = "github:kmonad/kmonad?dir=nix";
|
||||
nicks_nextcloud_integrations.url = "git+https://git.nickiel.net/Nickiel/nicks_nextcloud_integrations.git";
|
||||
|
||||
# dead code?
|
||||
home-manager = {
|
||||
url = github:nix-community/home-manager;
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
|
@ -16,24 +16,29 @@
|
|||
|
||||
};
|
||||
|
||||
outputs = inputs@{ self, nixpkgs, home-manager, kmonad, ... }:
|
||||
outputs = inputs@{ self, nixpkgs, nixpkgs-stable, home-manager, kmonad, ... }:
|
||||
let
|
||||
user = "nixolas";
|
||||
system = "x86_64-linux";
|
||||
|
||||
pkgs = import nixpkgs {
|
||||
inherit system;
|
||||
config.allowUnfree = true;
|
||||
};
|
||||
|
||||
lib = nixpkgs.lib;
|
||||
in {
|
||||
nixosConfigurations = {
|
||||
inherit (nixpkgs) lib;
|
||||
inherit inputs nixpkgs home-manager user kmonad;
|
||||
inherit inputs home-manager user kmonad;
|
||||
|
||||
# Home server
|
||||
Alaska = lib.nixosSystem {
|
||||
inherit system;
|
||||
specialArgs = { inherit user; };
|
||||
specialArgs = {
|
||||
inherit user;
|
||||
pkgs-stable = inputs.nixpkgs-stable;
|
||||
};
|
||||
|
||||
modules = [
|
||||
inputs.nicks_nextcloud_integrations.nixosModules.default
|
||||
|
@ -46,7 +51,13 @@
|
|||
home-manager = {
|
||||
useGlobalPkgs = true;
|
||||
useUserPackages = true;
|
||||
extraSpecialArgs = { inherit user; };
|
||||
extraSpecialArgs = {
|
||||
inherit user;
|
||||
pkgs-stable = import inputs.nixpkgs {
|
||||
inherit system;
|
||||
config.allowUnfree = true;
|
||||
};
|
||||
};
|
||||
users.${user} = {
|
||||
imports = [
|
||||
(import ./users/${user}.nix)
|
||||
|
@ -61,7 +72,9 @@
|
|||
|
||||
NicksNixLaptop = lib.nixosSystem {
|
||||
inherit system;
|
||||
specialArgs = { inherit user; };
|
||||
specialArgs = {
|
||||
inherit user;
|
||||
};
|
||||
|
||||
modules = [
|
||||
{
|
||||
|
@ -75,7 +88,13 @@
|
|||
home-manager = {
|
||||
useGlobalPkgs = true;
|
||||
useUserPackages = true;
|
||||
extraSpecialArgs = { inherit user; };
|
||||
extraSpecialArgs = {
|
||||
inherit user;
|
||||
pkgs-stable = import inputs.nixpkgs {
|
||||
inherit system;
|
||||
config.allowUnfree = true;
|
||||
};
|
||||
};
|
||||
users.${user} = {
|
||||
imports = [
|
||||
(import ./users/${user}.nix)
|
||||
|
@ -105,7 +124,13 @@
|
|||
home-manager = {
|
||||
useGlobalPkgs = true;
|
||||
useUserPackages = true;
|
||||
extraSpecialArgs = { inherit user; };
|
||||
extraSpecialArgs = {
|
||||
inherit user;
|
||||
pkgs-stable = import inputs.nixpkgs {
|
||||
inherit system;
|
||||
config.allowUnfree = true;
|
||||
};
|
||||
};
|
||||
users.${user} = {
|
||||
imports = [
|
||||
(import ./users/${user}.nix)
|
||||
|
|
|
@ -13,6 +13,15 @@
|
|||
enableKwallet = true;
|
||||
};
|
||||
|
||||
# Some programs look for session variables to store config files at
|
||||
# (Looking at you home-manager yazi)
|
||||
environment.sessionVariables = rec {
|
||||
XDG_CACHE_HOME = "$HOME/.cache";
|
||||
XDG_CONFIG_HOME = "$HOME/.config";
|
||||
XDG_DATA_HOME = "$HOME/.local/share";
|
||||
XDG_STATE_HOME = "$HOME/.local/state";
|
||||
};
|
||||
|
||||
services.xserver = {
|
||||
enable = true;
|
||||
layout = "us";
|
||||
|
@ -83,7 +92,6 @@
|
|||
opentabletdriver.enable = true;
|
||||
steam-hardware.enable = true;
|
||||
};
|
||||
|
||||
|
||||
sound = {
|
||||
enable = false;
|
||||
|
@ -99,7 +107,6 @@
|
|||
#jack.enable = true;
|
||||
};
|
||||
|
||||
|
||||
# Enable CUPS to print documents.
|
||||
services.printing.enable = true;
|
||||
|
||||
|
|
|
@ -37,18 +37,6 @@ in {
|
|||
../modules/zsh.nix
|
||||
];
|
||||
};
|
||||
users.nicholix = {
|
||||
imports = [
|
||||
../users/nicholix.nix
|
||||
../modules/emacs.nix
|
||||
../modules/git.nix
|
||||
../modules/fusuma.nix
|
||||
../modules/vim.nix
|
||||
../modules/wezterm.nix
|
||||
../modules/xdg.nix
|
||||
../modules/zsh.nix
|
||||
]
|
||||
}
|
||||
};
|
||||
}
|
||||
];
|
||||
|
|
|
@ -1,44 +1,40 @@
|
|||
{ config, ... }:
|
||||
|
||||
{
|
||||
imports = [
|
||||
{ imports = [
|
||||
./hardware-configuration.nix
|
||||
];
|
||||
|
||||
hardware.bluetooth.enable = true;
|
||||
|
||||
networking.hosts = {
|
||||
"10.0.0.183" = [ "headscale.nickiel.net" ];
|
||||
"100.64.0.1" = ["files.nickiel.net" "git.nickiel.net" "nickiel.net" "jellyfin.nickiel.net" ];
|
||||
networking.hosts = {
|
||||
#"10.0.0.183" = [ "headscale.nickiel.net" ];
|
||||
"100.64.0.1" = ["files.nickiel.net" "git.nickiel.net" "nickiel.net"
|
||||
"jellyfin.nickiel.net" ];
|
||||
};
|
||||
# tailscale set --exit-node <SEVERNAME> to route through an exit node
|
||||
services.tailscale.enable = true;
|
||||
networking.firewall = {
|
||||
checkReversePath = "loose";
|
||||
trustedInterfaces = [ "tailscale0" ];
|
||||
services.tailscale.enable = true; networking.firewall = {
|
||||
checkReversePath = "loose"; trustedInterfaces = [ "tailscale0" ];
|
||||
allowedUDPPorts = [ config.services.tailscale.port ];
|
||||
};
|
||||
time.hardwareClockInLocalTime = true;
|
||||
|
||||
|
||||
boot.loader = {
|
||||
efi = {
|
||||
canTouchEfiVariables = true;
|
||||
efiSysMountPoint = "/boot";
|
||||
boot.loader = { efi = {
|
||||
canTouchEfiVariables = true; efiSysMountPoint = "/boot";
|
||||
};
|
||||
grub = {
|
||||
devices = [ "nodev" ];
|
||||
efiSupport = true;
|
||||
enable = true;
|
||||
useOSProber = false;
|
||||
extraEntries = ''
|
||||
menuentry 'Windows Boot Manager (on /dev/nvme0n1p1)' --class windows --class os $menuentry_id_option 'osprober-efi-364F-BE7A' {
|
||||
insmod part_gpt
|
||||
insmod fat
|
||||
search --no-floppy --fs-uuid --set=root 364F-BE7A
|
||||
chainloader /efi/Microsoft/Boot/bootmgfw.efi
|
||||
}
|
||||
'';
|
||||
enable = true;
|
||||
useOSProber = true;
|
||||
# extraEntries = ''
|
||||
# menuentry 'Windows Boot Manager (on /dev/nvme0n1p1)' --class windows
|
||||
# --class os $menuentry_id_option 'osprober-efi-364F-BE7A' {
|
||||
# insmod part_gpt insmod fat search --no-floppy --fs-uuid
|
||||
# --set=root 364F-BE7A chainloader
|
||||
# /efi/Microsoft/Boot/bootmgfw.efi
|
||||
# }
|
||||
# '';
|
||||
};
|
||||
};
|
||||
|
||||
|
|
|
@ -6,6 +6,8 @@ in
|
|||
home.packages = with pkgs; [
|
||||
# Required clipboard provider
|
||||
xclip
|
||||
# Required for find in file
|
||||
ripgrep
|
||||
];
|
||||
|
||||
programs.nixvim = {
|
||||
|
|
20
modules/yazi.nix
Normal file
20
modules/yazi.nix
Normal file
|
@ -0,0 +1,20 @@
|
|||
{ config, lib, pkgs, home-manager, ... }:
|
||||
|
||||
{
|
||||
|
||||
programs.yazi = {
|
||||
enable = true;
|
||||
enableZshIntegration = true;
|
||||
settings = {
|
||||
manager = {
|
||||
sort_by = "natural";
|
||||
sort_sensitive = false;
|
||||
sort_dir_first = true;
|
||||
show_hidden = true;
|
||||
show_symlink = true;
|
||||
sort_reverse = false;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
}
|
|
@ -40,6 +40,7 @@ in
|
|||
ls = "eza";
|
||||
gust = "/home/nixolas/Documents/Gust/target/debug/gust";
|
||||
rm = "rmtrash";
|
||||
open-config = "cd ~/Documents/nicks-nix-config; nvim";
|
||||
};
|
||||
};
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
{ inputs, config, pkgs, user, ... }:
|
||||
{ inputs, config, pkgs, pkgs-stable, user, ... }:
|
||||
|
||||
let
|
||||
moz_overlay = import (builtins.fetchTarball https://github.com/mozilla/nixpkgs-mozilla/archive/master.tar.gz);
|
||||
|
@ -21,12 +21,12 @@ in
|
|||
imports = [
|
||||
../modules/discord.nix
|
||||
#../modules/emacs.nix
|
||||
../modules/fusuma.nix
|
||||
../modules/git.nix
|
||||
../modules/neovim.nix
|
||||
../modules/rofi.nix
|
||||
../modules/wezterm.nix
|
||||
../modules/xdg.nix
|
||||
../modules/yazi.nix
|
||||
../modules/zsh.nix
|
||||
];
|
||||
|
||||
|
@ -78,48 +78,45 @@ in
|
|||
bottom # system monitor
|
||||
du-dust # directory disk-space analyzer
|
||||
ffmpeg-full # ffmpeg for video/audio rendering
|
||||
frei0r # kdenlive video plugins
|
||||
flameshot # screenshot utility
|
||||
fontpreview # utility to preview fonts
|
||||
pkgs-stable.frei0r # kdenlive video plugins
|
||||
pkgs-stable.flameshot # screenshot utility
|
||||
pkgs-stable.fontpreview # utility to preview fonts
|
||||
gitui # command line git tui
|
||||
helvum # audio sink gui control
|
||||
pandoc # utility for converting between document types
|
||||
qmk # QMK utility for compiling qmk firmware
|
||||
pkgs-stable.helvum # audio sink gui control
|
||||
pkgs-stable.pandoc # utility for converting between document types
|
||||
pkgs-stable.qmk # QMK utility for compiling qmk firmware
|
||||
nextcloud-client # Nextcloud private syncing
|
||||
hddtemp
|
||||
|
||||
texlive.combined.scheme-medium
|
||||
pkgs-stable.texlive.combined.scheme-medium
|
||||
|
||||
# commandline utils
|
||||
eza
|
||||
fd
|
||||
fortune
|
||||
neofetch
|
||||
pandoc
|
||||
pfetch
|
||||
ripgrep
|
||||
rmtrash
|
||||
testdisk # file recovery https://itsfoss.com/recover-deleted-files-linux/
|
||||
xdotool
|
||||
yazi
|
||||
vhs
|
||||
pkgs-stable.vhs
|
||||
|
||||
nodejs # required for coc-nvim
|
||||
pkgs-stable.nodejs # required for coc-nvim
|
||||
|
||||
# Gui application
|
||||
darktable # RAW processing
|
||||
dbeaver # SQL management tool
|
||||
pkgs-stable.darktable # RAW processing
|
||||
pkgs-stable.dbeaver # SQL management tool
|
||||
firefox # Internet access
|
||||
handbrake # dvd ripping
|
||||
inkscape # Vector drawing
|
||||
kicad # PCB design
|
||||
pkgs-stable.handbrake # dvd ripping
|
||||
pkgs-stable.inkscape # Vector drawing
|
||||
pkgs-stable.kicad # PCB design
|
||||
krita # Raster drawing
|
||||
libreoffice-fresh # Office editing
|
||||
makemkv # blue-ray + dvd -> mkv
|
||||
obsidian # Markdown and notes
|
||||
pkgs-stable.libreoffice-fresh # Office editing
|
||||
pkgs-stable.makemkv # blue-ray + dvd -> mkv
|
||||
pkgs-stable.obsidian # Markdown and notes
|
||||
qalculate-gtk # unit-friendly calculator
|
||||
vscodium # when vim and emacs (somehow) isn't enough
|
||||
dragon # simple audio player
|
||||
pkgs-stable.vscodium # when vim and emacs (somehow) isn't enough
|
||||
pkgs-stable.dragon # simple audio player
|
||||
obs-studio # for video recording and virtual camera
|
||||
|
||||
libsForQt5.kate # kate/kwrite
|
||||
|
@ -129,9 +126,9 @@ in
|
|||
libsForQt5.soundkonverter # audio cd ripping
|
||||
|
||||
# Kdenlive and deps
|
||||
libsForQt5.kdenlive
|
||||
mediainfo
|
||||
mlt
|
||||
pkgs-stable.libsForQt5.kdenlive
|
||||
pkgs-stable.mediainfo
|
||||
pkgs-stable.mlt
|
||||
|
||||
# Drawing tablet driver
|
||||
opentabletdriver
|
||||
|
@ -139,6 +136,7 @@ in
|
|||
|
||||
sessionVariables = {
|
||||
NIX_SHELL_PRESERVE_PROMPT = 1;
|
||||
EDITOR = "nvim";
|
||||
};
|
||||
};
|
||||
|
||||
|
|
Loading…
Reference in a new issue