Compare commits

..

1 Commits

Author SHA1 Message Date
jay
a529685493 More sops secret setup. 2025-07-12 09:20:03 -04:00
82 changed files with 126 additions and 822 deletions

View File

@@ -17,10 +17,9 @@ To-Do List
[ ] Finish porting features from nixy's previous setup and get them working on lappy: impermanence.
[ ] Set up declarative Discord setup with nixcord and plugins.
[ ] Figure out how to set up sops-nix with user passwords properly.
[X] Fully setup private git repository for secrets.
[X] Integrate private git repository into nixverse setup.
[X] Switch nixy over to this nixverse setup.
[ ] Switch nixy over to this nixverse setup.
[ ] Finish checking the apps I need on the arcade machine work under NixOS (attractmode, retroarch, teknoparrot, others).
[ ] Setup arcade machine on NixOS.
[ ] Setup ally machine on NixOS.

171
flake.lock generated
View File

@@ -1,25 +1,5 @@
{
"nodes": {
"auto-cpufreq-stable-nixos": {
"inputs": {
"nixpkgs": [
"nixpkgs"
]
},
"locked": {
"lastModified": 1752998173,
"narHash": "sha256-ZlYpBp2WOe03UrpjJGz5KTOL/pp7A452hJO/Vc8C4/0=",
"owner": "AdnanHodzic",
"repo": "auto-cpufreq",
"rev": "562278377ffa96f3c1af49c7b499df028ce8d8bd",
"type": "github"
},
"original": {
"owner": "AdnanHodzic",
"repo": "auto-cpufreq",
"type": "github"
}
},
"base16": {
"inputs": {
"fromYaml": "fromYaml"
@@ -117,11 +97,11 @@
]
},
"locked": {
"lastModified": 1756733629,
"narHash": "sha256-dwWGlDhcO5SMIvMSTB4mjQ5Pvo2vtxvpIknhVnSz2I8=",
"lastModified": 1752113600,
"narHash": "sha256-7LYDxKxZgBQ8LZUuolAQ8UkIB+jb4A2UmiR+kzY9CLI=",
"owner": "nix-community",
"repo": "disko",
"rev": "a5c4f2ab72e3d1ab43e3e65aa421c6f2bd2e12a1",
"rev": "79264292b7e3482e5702932949de9cbb69fedf6d",
"type": "github"
},
"original": {
@@ -147,24 +127,6 @@
}
},
"flake-parts": {
"inputs": {
"nixpkgs-lib": "nixpkgs-lib"
},
"locked": {
"lastModified": 1754487366,
"narHash": "sha256-pHYj8gUBapuUzKV/kN/tR3Zvqc7o6gdFB9XKXIp1SQ8=",
"owner": "hercules-ci",
"repo": "flake-parts",
"rev": "af66ad14b28a127c5c0f3bbb298218fc63528a18",
"type": "github"
},
"original": {
"owner": "hercules-ci",
"repo": "flake-parts",
"type": "github"
}
},
"flake-parts_2": {
"inputs": {
"nixpkgs-lib": [
"nixverse",
@@ -186,7 +148,7 @@
"type": "github"
}
},
"flake-parts_3": {
"flake-parts_2": {
"inputs": {
"nixpkgs-lib": [
"stylix-stable-nixos",
@@ -286,11 +248,11 @@
]
},
"locked": {
"lastModified": 1756679287,
"narHash": "sha256-Xd1vOeY9ccDf5VtVK12yM0FS6qqvfUop8UQlxEB+gTQ=",
"lastModified": 1752208517,
"narHash": "sha256-aRY1cYOdVdXdNjcL/Twpa27CknO7pVHxooPsBizDraE=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "07fc025fe10487dd80f2ec694f1cd790e752d0e8",
"rev": "c6a01e54af81b381695db796a43360bf6db5702f",
"type": "github"
},
"original": {
@@ -308,11 +270,11 @@
]
},
"locked": {
"lastModified": 1752603129,
"narHash": "sha256-S+wmHhwNQ5Ru689L2Gu8n1OD6s9eU9n9mD827JNR+kw=",
"lastModified": 1743604125,
"narHash": "sha256-ZD61DNbsBt1mQbinAaaEqKaJk2RFo9R/j+eYWeGMx7A=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "e8c19a3cec2814c754f031ab3ae7316b64da085b",
"rev": "180fd43eea296e62ae68e079fcf56aba268b9a1a",
"type": "github"
},
"original": {
@@ -328,11 +290,11 @@
"nixpkgs": "nixpkgs"
},
"locked": {
"lastModified": 1755569534,
"narHash": "sha256-ukXfV1cAsxoar0IVEO2/s3qnVEZpZf0wvqE3PIESobw=",
"lastModified": 1752292276,
"narHash": "sha256-cl1NEWTUsNxBmLjyvz+GDP4Hy7riaOszSGpfplHA7Y4=",
"owner": "Jas-SinghFSU",
"repo": "Hyprpanel",
"rev": "6385f2e15df908e0c13bed800f4b091300e5b981",
"rev": "59b57fca0634c98f23227ea948f87df7814e72f6",
"type": "github"
},
"original": {
@@ -393,27 +355,6 @@
"type": "github"
}
},
"nix-gaming-stable-nixos": {
"inputs": {
"flake-parts": "flake-parts",
"nixpkgs": [
"nixpkgs-stable-nixos"
]
},
"locked": {
"lastModified": 1756950352,
"narHash": "sha256-CkNlcUeNlDmxF1GJwEQg3aIBSCihnFcAqCwBjUQGqNY=",
"owner": "fufexan",
"repo": "nix-gaming",
"rev": "64ac07fae89f297beab704dce70038cdbda55c25",
"type": "github"
},
"original": {
"owner": "fufexan",
"repo": "nix-gaming",
"type": "github"
}
},
"nix-vm-test": {
"inputs": {
"nixpkgs": [
@@ -439,7 +380,7 @@
"nixos-anywhere": {
"inputs": {
"disko": "disko",
"flake-parts": "flake-parts_2",
"flake-parts": "flake-parts",
"nix-vm-test": "nix-vm-test",
"nixos-images": "nixos-images",
"nixos-stable": "nixos-stable",
@@ -463,22 +404,6 @@
"type": "github"
}
},
"nixos-hardware-stable-nixos": {
"locked": {
"lastModified": 1756925795,
"narHash": "sha256-kUb5hehaikfUvoJDEc7ngiieX88TwWX/bBRX9Ar6Tac=",
"owner": "NixOS",
"repo": "nixos-hardware",
"rev": "ba6fab29768007e9f2657014a6e134637100c57d",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "master",
"repo": "nixos-hardware",
"type": "github"
}
},
"nixos-images": {
"inputs": {
"nixos-stable": [
@@ -538,28 +463,13 @@
"type": "github"
}
},
"nixpkgs-lib": {
"locked": {
"lastModified": 1753579242,
"narHash": "sha256-zvaMGVn14/Zz8hnp4VWT9xVnhc8vuL3TStRqwk22biA=",
"owner": "nix-community",
"repo": "nixpkgs.lib",
"rev": "0f36c44e01a6129be94e3ade315a5883f0228a6e",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "nixpkgs.lib",
"type": "github"
}
},
"nixpkgs-stable-nixos": {
"locked": {
"lastModified": 1756886854,
"narHash": "sha256-6tooT142NLcFjt24Gi4B0G1pgWLvfw7y93sYEfSHlLI=",
"lastModified": 1752162966,
"narHash": "sha256-3MxxkU8ZXMHXcbFz7UE4M6qnIPTYGcE/7EMqlZNnVDE=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "0e6684e6c5755325f801bda1751a8a4038145d7d",
"rev": "10e687235226880ed5e9f33f1ffa71fe60f2638a",
"type": "github"
},
"original": {
@@ -569,29 +479,13 @@
"type": "github"
}
},
"nixpkgs-unstable": {
"locked": {
"lastModified": 1756819007,
"narHash": "sha256-12V64nKG/O/guxSYnr5/nq1EfqwJCdD2+cIGmhz3nrE=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "aaff8c16d7fc04991cac6245bee1baa31f72b1e1",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixpkgs-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_2": {
"locked": {
"lastModified": 1756819007,
"narHash": "sha256-12V64nKG/O/guxSYnr5/nq1EfqwJCdD2+cIGmhz3nrE=",
"lastModified": 1752012998,
"narHash": "sha256-Q82Ms+FQmgOBkdoSVm+FBpuFoeUAffNerR5yVV7SgT8=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "aaff8c16d7fc04991cac6245bee1baa31f72b1e1",
"rev": "2a2130494ad647f953593c4e84ea4df839fbd68c",
"type": "github"
},
"original": {
@@ -617,7 +511,6 @@
},
"original": {
"owner": "hgl",
"ref": "084a07f43829857fc760e70212c497d2f40eaa3c",
"repo": "nixverse",
"type": "github"
}
@@ -650,17 +543,13 @@
},
"root": {
"inputs": {
"auto-cpufreq-stable-nixos": "auto-cpufreq-stable-nixos",
"disko-stable-nixos": "disko-stable-nixos",
"home-manager-stable-nixos": "home-manager-stable-nixos",
"hyprpanel-stable-nixos": "hyprpanel-stable-nixos",
"impermanence-stable-nixos": "impermanence-stable-nixos",
"nix-flatpak-stable-nixos": "nix-flatpak-stable-nixos",
"nix-gaming-stable-nixos": "nix-gaming-stable-nixos",
"nixos-hardware-stable-nixos": "nixos-hardware-stable-nixos",
"nixpkgs": "nixpkgs_2",
"nixpkgs-stable-nixos": "nixpkgs-stable-nixos",
"nixpkgs-unstable": "nixpkgs-unstable",
"nixverse": "nixverse",
"sops-nix-stable-nixos": "sops-nix-stable-nixos",
"stylix-stable-nixos": "stylix-stable-nixos",
@@ -674,11 +563,11 @@
]
},
"locked": {
"lastModified": 1754988908,
"narHash": "sha256-t+voe2961vCgrzPFtZxha0/kmFSHFobzF00sT8p9h0U=",
"lastModified": 1751606940,
"narHash": "sha256-KrDPXobG7DFKTOteqdSVeL1bMVitDcy7otpVZWDE6MA=",
"owner": "Mic92",
"repo": "sops-nix",
"rev": "3223c7a92724b5d804e9988c6b447a0d09017d48",
"rev": "3633fc4acf03f43b260244d94c71e9e14a2f6e0d",
"type": "github"
},
"original": {
@@ -694,7 +583,7 @@
"base16-helix": "base16-helix",
"base16-vim": "base16-vim",
"firefox-gnome-theme": "firefox-gnome-theme",
"flake-parts": "flake-parts_3",
"flake-parts": "flake-parts_2",
"gnome-shell": "gnome-shell",
"nixpkgs": [
"nixpkgs"
@@ -708,11 +597,11 @@
"tinted-zed": "tinted-zed"
},
"locked": {
"lastModified": 1756812894,
"narHash": "sha256-wZfNe3ms+dS2cUEGe8ygqNxBHGQCRoJQuQM9xFgGad0=",
"lastModified": 1752251601,
"narHash": "sha256-QnhCeqR9DTYWu5ZN+WfVJcfDy8efeVODjUreRldj4oU=",
"owner": "danth",
"repo": "stylix",
"rev": "a9553a7486c86259b7678235cc26cfd70296251d",
"rev": "4d5e38f041f70725b1ef47b704f7a1944783001f",
"type": "github"
},
"original": {
@@ -885,11 +774,11 @@
]
},
"locked": {
"lastModified": 1756941389,
"narHash": "sha256-r7Km2PY1gxpNmq7dPbs89JiyHiJ5zRCF6cBPyb2WWGY=",
"lastModified": 1752290750,
"narHash": "sha256-jeczd1xqNM96arEztdunzTDpGaccsMqnqSJrFzqwYLc=",
"owner": "0xc000022070",
"repo": "zen-browser-flake",
"rev": "d197dd7556567a7a4174dee543286e5e65198379",
"rev": "849fe18ae4e41673f9e4de919bdcad71238c6ad2",
"type": "github"
},
"original": {

View File

@@ -2,19 +2,11 @@
inputs = {
self.submodules = true;
nixpkgs-stable-nixos.url = "github:nixos/nixpkgs/nixos-25.05";
nixpkgs-unstable.url = "github:NixOS/nixpkgs/nixpkgs-unstable";
nixverse = {
url = "github:hgl/nixverse?ref=084a07f43829857fc760e70212c497d2f40eaa3c";
url = "github:hgl/nixverse";
inputs.nixpkgs.follows = "nixpkgs-stable-nixos";
};
auto-cpufreq-stable-nixos = {
url = "github:AdnanHodzic/auto-cpufreq";
inputs.nixpkgs.follows = "nixpkgs";
};
disko-stable-nixos = {
url = "github:nix-community/disko";
inputs.nixpkgs.follows = "nixpkgs-stable-nixos";
@@ -33,23 +25,10 @@
url = "github:gmodena/nix-flatpak/?ref=latest";
};
nix-gaming-stable-nixos = {
url = "github:fufexan/nix-gaming";
inputs.nixpkgs.follows = "nixpkgs-stable-nixos";
};
impermanence-stable-nixos = {
url = "github:nix-community/impermanence";
};
#nixcord-stable-nixos = {
# url = "github:kaylorben/nixcord";
#};
nixos-hardware-stable-nixos = {
url = "github:NixOS/nixos-hardware/master";
};
sops-nix-stable-nixos = {
url = "github:Mic92/sops-nix";
inputs.nixpkgs.follows = "nixpkgs-stable-nixos";
@@ -61,7 +40,6 @@
};
zen-browser-stable-nixos = {
#url = "github:0xc000022070/zen-browser-flake?ref=ea79cbda8e685dd0f9c6e88adcfa7762a83e9067";
url = "github:0xc000022070/zen-browser-flake";
inputs.nixpkgs.follows = "nixpkgs";
};
@@ -82,6 +60,10 @@
system:
let
pkgs = nixpkgs.legacyPackages.${system};
pkgs' = nixverse.loadPkgs' self {
inherit system;
nixpkgs = nixpkgs;
};
in
{
default = pkgs.mkShellNoCC {

View File

@@ -1,12 +1,10 @@
{ inputs, ... }:
{ pkgs, inputs, config, ... }:
{
imports = [
inputs.nix-flatpak.nixosModules.nix-flatpak
inputs.stylix.nixosModules.stylix
inputs.home-manager.nixosModules.home-manager
inputs.sops-nix.nixosModules.sops
inputs.nix-gaming.nixosModules.pipewireLowLatency
./programs/appimage.nix
./programs/emulation.nix
./programs/firefox.nix
./programs/fonts.nix
@@ -17,7 +15,6 @@
./programs/hyprland.nix
./programs/kde.nix
./programs/obs-studio.nix
./programs/open-tv.nix
./programs/session-desktop.nix
./programs/steam.nix
./programs/zen-browser.nix

View File

@@ -1,27 +1,21 @@
{ pkgs, inputs, ... }:
{ config, pkgs, inputs, lib, ... }:
{
# Home Manager needs a bit of information about you and the paths it should
# manag:e.
# manage.
home.username = "jay";
home.homeDirectory = "/home/jay";
imports = [
#inputs.nixcord.homeModules.nixcord
inputs.stylix.homeModules.stylix
./programs/alacritty.nix
./programs/bash.nix
./programs/btop.nix
./programs/emacs.nix
./programs/git.nix
./programs/hyprland.nix
./programs/hyprlock.nix
./programs/hyprpanel.nix
./programs/lazygit.nix
./programs/mangohud.nix
./programs/discord.nix
./programs/oh-my-posh.nix
./programs/qutebrowser.nix
./programs/rbw.nix
./programs/rofi.nix
./programs/stylix.nix
@@ -44,9 +38,8 @@
# The home.packages option allows you to install Nix packages into your
# environment.
home.packages = [
pkgs.legcord
pkgs.libgtop
pkgs.powertop
pkgs.upower
#pkgs.mpvpaper
# pkgs.hyprlandPlugins.hyprtrails
];
@@ -58,9 +51,7 @@
".config/jellyfin-tui/config.yaml".source = ../../../../../private/dotfiles/jellyfin-tui/config.yaml;
".config/jellyfin-rpc/urls.json".source = ../../../../../private/dotfiles/jellyfin-rpc/urls.json;
".config/jellyfin-rpc/main.json".source = ../../../../../private/dotfiles/jellyfin-rpc/main.json;
".config/lvim/config.lua".source = ../../../../../private/dotfiles/lunarvim/config.lua;
".config/newsboat/config".source = ../../../../../private/dotfiles/newsboat/config;
".config/television/nix_channels.toml".source = ../../../../../private/dotfiles/television/nix_channels.toml;
"quickemu/kubuntu-24.04.conf".source = ../../../../../private/dotfiles/quickemu/kubuntu-24.04.conf;
};

View File

@@ -1,4 +1,4 @@
{ lib, ... }: {
{ lib, pkgs, ...}: {
programs.alacritty = lib.mkForce {
enable = true;
settings = {

View File

@@ -1,3 +1,3 @@
{ ... }: {
{ pkgs, ...}: {
programs.bash.enable = true;
}

View File

@@ -1,10 +0,0 @@
{ ... }: {
programs.btop = {
enable = true;
settings = {
color_theme = "stylix";
theme_background = false;
};
};
}

View File

@@ -1,9 +0,0 @@
{ pkgs, ... }: {
home.packages = [
pkgs.betterdiscordctl
pkgs.discord
pkgs.legcord
pkgs.discover-overlay
];
}

View File

@@ -1,5 +0,0 @@
{ ... }: {
programs.emacs = {
enable = true;
};
}

View File

@@ -1,4 +1,4 @@
{ ... }: {
{ pkgs, ...}: {
wayland.windowManager.hyprland = {
# Allow home-manager to configure hyprland
enable = true;
@@ -207,7 +207,7 @@
# "systemctl --user start hyprpolkitagent"
"steam --disable-gpu-compositing" # nvidia pls let me have nice things
#"vesktop"
"goofcord"
"legcord"
# "[workspace 9 silent] ELECTRON_OZONE_PLATFORM_HINT=x11 1password" # fix for promts not showing up anymore
"zen-twilight"
# "${pkgs.xorg.xhost}/bin/xhost +"
@@ -225,7 +225,7 @@
windowrulev2 = [
"workspace 1 silent, class:^(zen-twilight)$"
"workspace 2 silent, class:^(steam)$"
"workspace 3 silent, class:^(goofcord)$"
"workspace 3 silent, class:^(legcord)$"
"workspace 4 silent, class:^(com.core447.StreamController)$"
"float,class:(clipse)$"
"size 622 652,class:(clipse)$"

View File

@@ -1,3 +1,3 @@
{ ... }: {
{ pkgs, ...}: {
programs.hyprlock.enable = true;
}

View File

@@ -1,4 +1,4 @@
{ ... }: {
{ pkgs, ...}: {
programs.hyprpanel = {
enable = true;
settings = {
@@ -6,7 +6,7 @@
"0" = {
left = [ "dashboard" "separator" "microphone" "volume" "bluetooth" "hypridle" "separator" "network" "separator" "workspaces" "windowtitle" ];
middle = [ "media" "cava" ];
right = [ "cpu" "cputemp" "ram" "storage" "separator" "systray" "notifications" "battery" "separator" "weather" "clock" ];
right = [ "cpu" "cputemp" "ram" "storage" "separator" "systray" "notifications" "separator" "weather" "clock" ];
};
};

View File

@@ -1,3 +1,3 @@
{ ... }: {
{ pkgs, ...}: {
programs.lazygit.enable = true;
}

View File

@@ -1,16 +0,0 @@
{ lib, ... } : {
programs.mangohud = {
enable = true;
enableSessionWide = true;
settings = {
position = "top-right";
cpu_stats = true;
gpu_stats = true;
fps = true;
font_size = 12;
cellpadding_y = -0.070;
background_alpha = lib.mkForce 0.5;
alpha = lib.mkForce 0.75;
};
};
}

View File

@@ -1,36 +0,0 @@
{ ... }: {
programs.nixcord = {
enable = true;
discord = {
enable = true;
vencord.enable = true;
openASAR.enable = true;
};
vesktop.enable = true;
config = {
autoUpdate = true;
plugins = {
alwaysAnimate.enable = true;
alwaysTrust.enable = true;
copyFileContents.enable = true;
clearURLs.enable = true;
dearrow.enable = true;
friendsSince.enable = true;
fullSearchContext.enable = true;
gameActivityToggle.enable = true;
noF1.enable = true;
relationshipNotifier = {
enable = true;
friendRequestCancels = true;
friends = true;
groups = true;
notices = true;
offlineRemovals = true;
servers = true;
};
serverInfo.enable = true;
};
};
};
}

View File

@@ -1,4 +1,4 @@
{ ... }: {
{ pkgs, ...}: {
programs.oh-my-posh = {
enable = true;
enableBashIntegration = true;

View File

@@ -1,6 +0,0 @@
{ ... }: {
programs.qutebrowser = {
enable = true;
};
}

View File

@@ -1,3 +1,3 @@
{ ... }: {
{ pkgs, ...}: {
programs.rbw.enable = true;
}

View File

@@ -1,4 +1,4 @@
{ pkgs, ...} : {
{ pkgs, ...}: {
programs.rofi = {
enable = true;
package = pkgs.rofi-wayland;

View File

@@ -1,4 +1,4 @@
{ pkgs, ... }: {
{ pkgs, inputs, ...}: {
stylix = {
enable = true;
base16Scheme = "${pkgs.base16-schemes}/share/themes/nord.yaml";

View File

@@ -1,3 +1,3 @@
{ ... }: {
{ pkgs, ...}: {
services.arrpc.enable = true;
}

View File

@@ -1,4 +1,4 @@
{ ... }: {
{ pkgs, ...}: {
services.fluidsynth = {
enable = true;
soundService = "pipewire-pulse";

View File

@@ -1,4 +1,4 @@
{ ... }: {
{ pkgs, ...}: {
services.hypridle = {
enable = true;
settings = {

View File

@@ -1,5 +0,0 @@
{ ... }: {
programs.appimage.enable = true;
programs.appimage.binfmt = true;
}

View File

@@ -1,40 +0,0 @@
{ pkgs, ... }: let
pname = "Drop%20Desktop%20Client";
version = "0.3.0";
src = pkgs.fetchurl {
url = "https://github.com/Drop-OSS/drop-app/releases/download/v0.3.0/Drop.Desktop.Client_0.3.0_amd64.AppImage";
hash = "sha256-VVDzotrgu68CAGr4EqpWlW8ZOhf4cbt4a46WHJTnxjo=";
};
appimageContents = pkgs.appimageTools.extract {inherit pname version src;};
in
pkgs.appimageTools.wrapType2 {
inherit pname version src;
pkgs = pkgs;
extraInstallCommands = ''
install -m 444 -D ${appimageContents}/${pname}.desktop -t $out/share/applications
substituteInPlace $out/share/applications/${pname}.desktop \
--replace 'Exec=AppRun' 'Exec=${pname}'
cp -r ${appimageContents}/usr/share/icons $out/share
# unless linked, the binary is placed in $out/bin/cursor-someVersion
# ln -s $out/bin/${pname}-${version} $out/bin/${pname}
'';
extraBwrapArgs = [
"--bind-try /etc/nixos/ /etc/nixos/"
];
# vscode likes to kill the parent so that the
# gui application isn't attached to the terminal session
dieWithParent = false;
extraPkgs = pkgs: with pkgs; [
unzip
autoPatchelfHook
asar
haskellPackages.gi-ayatana-appindicator3
# override doesn't preserve splicing https://github.com/NixOS/nixpkgs/issues/132651
(buildPackages.wrapGAppsHook.override {inherit (buildPackages) makeWrapper;})
];
}

View File

@@ -1,11 +0,0 @@
{ pkgs, lib, inputs, ... }:
let
dropApp = import ./appimages/drop.nix { inherit pkgs; };
in
{
# ...
environment.systemPackages = with pkgs; [
dropApp
];
}

View File

@@ -1,4 +1,4 @@
{ pkgs, ... }: {
{ pkgs, inputs, ... }: {
# List packages installed in system profile. To search, run:
# $ nix search wget
environment.systemPackages = [
@@ -13,9 +13,5 @@
services.flatpak.packages = [
"io.github.ryubing.Ryujinx"
];
environment.shellAliases = {
ryujinx = "flatpak run io.github.ryubing.Ryujinx";
};
}

View File

@@ -1,4 +1,4 @@
{ ... }: {
{ pkgs, ... }: {
programs.firefox.enable = true;
}

View File

@@ -1,4 +1,4 @@
{ pkgs, pkgs-unstable, ... }: {
{ pkgs, ... }: {
# List packages installed in system profile. To search, run:
# $ nix search wget
environment.systemPackages = [
@@ -11,8 +11,6 @@
pkgs.protonup-qt
pkgs.wineWowPackages.stable
pkgs.winetricks
pkgs-unstable.nero-umu
pkgs-unstable.protonplus
];
}

View File

@@ -1,4 +1,4 @@
{ pkgs, pkgs', ... }: {
{ config, inputs, lib, pkgs, pkgs', ... }: {
# List packages installed in system profile. To search, run:
# $ nix search wget
@@ -17,12 +17,10 @@
pkgs.btop
pkgs.chatterino2
pkgs.clipse
#(pkgs.discord.override { withMoonlight = true; })
pkgs.dmidecode
pkgs.dysk
pkgs.elinks
pkgs.fastfetch
pkgs.gearlever
pkgs.git
pkgs.gnumake
#pkgs.gpustat
@@ -33,14 +31,11 @@
pkgs.jellyfin-tui
pkgs.lsd
pkgs.lshw
pkgs.lunarvim
pkgs.neovim
pkgs.newsboat
pkgs.nix-melt
pkgs.nix-search-tv
pkgs.nvd
pkgs.nyxt
pkgs.overlayed
pkgs.p7zip-rar
pkgs.pciutils
pkgs.pinentry-curses
@@ -50,14 +45,11 @@
pkgs.rofi-rbw-wayland
pkgs.sops
pkgs.teams-for-linux
pkgs.television
pkgs.tree
pkgs.unrar
pkgs.unzip
pkgs.usbutils
pkgs.vlc
pkgs.wf-recorder
pkgs.zip
pkgs'.nixverse
];
}

View File

@@ -1,4 +1,4 @@
{ ... }: {
{ pkgs, ... }: {
programs.git.enable = true;
}

View File

@@ -1,4 +1,4 @@
{ pkgs, ... }: {
{ config, inputs, lib, pkgs, ... }: {
# List packages installed in system profile. To search, run:
# $ nix search wget

View File

@@ -1,4 +1,4 @@
{ pkgs, ... }: {
{ pkgs, inputs, ... }: {
# Install hyprland
programs.hyprland = {
enable = true;

View File

@@ -1,4 +1,4 @@
{ pkgs, ... }: {
{ pkgs, inputs, ... }: {
# List packages installed in system profile. To search, run:
# $ nix search wget
environment.systemPackages = [

View File

@@ -1,10 +0,0 @@
{ ... }: {
services.flatpak.packages = [
"dev.fredol.open-tv"
];
environment.shellAliases = {
open-tv = "flatpak run dev.fredol.open-tv";
};
}

View File

@@ -2,10 +2,7 @@
# Install steam.
programs = {
gamemode.enable = true;
gamescope = {
enable = true;
capSysNice = true;
};
gamescope.enable = true;
steam = {
enable = true;
@@ -13,10 +10,6 @@
remotePlay.openFirewall = true; # Open ports in the firewall for Steam Remote Play
dedicatedServer.openFirewall = true; # Open ports in the firewall for Source Dedicated Server
localNetworkGameTransfers.openFirewall = true; # Open ports in the firewall for Steam Local Network Game Transfers
extraCompatPackages = [
pkgs.proton-ge-bin
pkgs.steam-play-none
];
package = pkgs.steam.override { # Fix Overwatch and other games showing wrong timezone in-game.
extraProfile = ''
unset TZ
@@ -30,7 +23,7 @@
};
environment.systemPackages = [
pkgs.samrewritten
pkgs.mangohud
];
}

View File

@@ -1,3 +1,3 @@
{ ... }: {
{ pkgs, ...}: {
services.blueman.enable = true;
}

View File

@@ -1,4 +1,4 @@
{...}: {
{ pkgs, ...}: {
services.btrfs.autoScrub = {
enable = true;
interval = "weekly";

View File

@@ -1,4 +1,4 @@
{ ... }: {
{ pkgs, ...}: {
services.flatpak = {
enable = true;
update.onActivation = true;

View File

@@ -1,22 +1,14 @@
{ pkgs, ... }: {
{ ... }: {
# Enable sound with pipewire.
services.pulseaudio = {
enable = false;
package = pkgs.pulseaudioFull;
};
services.pulseaudio.enable = false;
services.pipewire = {
enable = true;
alsa.enable = true;
alsa.support32Bit = true;
pulse.enable = true;
#wireplumber.enable = true;
# If you want to use JACK applications, uncomment this
jack.enable = true;
lowLatency.enable = false;
# 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;

View File

@@ -1,29 +1,13 @@
{ pkgs, ... }: {
{ ... }: {
hardware.bluetooth = {
enable = true; # enables support for Bluetooth
package = pkgs.bluez-experimental;
powerOnBoot = true; # powers up the default Bluetooth controller on boot
settings = {
LE = {
MinConnectionInterval = 16;
MaxConnectionInterval = 16;
ConnectionLatency = 10;
ConnectionSupervisionTimeout = 100;
};
General = {
Enable = "Source,Sink,Media,Socket";
settings.General = {
Privacy = "device";
JustWorksRepairing = "always";
Class = "0x000100";
Experimental = true;
FastConnectable = true;
};
Policy = {
AutoEnable = true;
};
};
};
}

View File

@@ -1,37 +1,10 @@
{ lib, pkgs, ... }: {
environment.systemPackages = [
pkgs.adi1090x-plymouth-themes
];
{ pkgs, config, ... }: {
boot = {
#initrd.verbose = false;
loader = {
systemd-boot.enable = true;
efi.canTouchEfiVariables = true;
};
kernelPackages = pkgs.linuxPackages_xanmod_stable;
#kernelParams = [
#"quiet"
#"splash"
#"boot.shell_on_fail"
#"udev.log_priority=3"
#"rc.systemd.show_status=auto"
#];
extraModprobeConfig = ''
options bluetooth enable_ecred=1
'';
#plymouth = {
# enable = true;
# theme = lib.mkForce "glitch";
# themePackages = [
# (pkgs.adi1090x-plymouth-themes.override { selected_themes = [ "glitch" ]; })
# ];
#};
#consoleLogLevel = 3;
loader.timeout = 3;
};
}

View File

@@ -9,6 +9,7 @@
shellAliases = {
ls = "lsd -la";
ryujinx = "flatpak run io.github.ryubing.Ryujinx";
};
# Get plasma integration with browsers to work better.

View File

@@ -1,4 +1,4 @@
{ lib, ... }: {
{ config, lib, ...}: {
networking.networkmanager.enable = true;
networking.useDHCP = lib.mkDefault true;
}

View File

@@ -12,6 +12,5 @@
# Allow unfree packages
nixpkgs.config.allowUnfree = true;
# Use some of our RAM as swap space.
zramSwap.enable = true;
}

View File

@@ -10,13 +10,10 @@
];
};
# For security reasons, we are disabling the use of regular sudo and...
sudo = {
enable = lib.mkForce false;
};
# ...switching over to sudo-rs which is a Rust rewrite of sudo.
# See https://cybersecsentinel.com/cve-2025-32463-privilege-escalation-in-sudo-triggers-urgent-linux-patching/.
sudo-rs = {
enable = true;
wheelNeedsPassword = true;

View File

@@ -1,12 +1,11 @@
{ ... }: {
# Setting up secrets, incomplete at the moment.
{ config, inputs, ... }: {
sops = {
#defaultSopsFile = ../../../../private/secrets.yaml;
#secrets = {
# jay_password_hash = {
# neededForUsers = true;
# };
#};
defaultSopsFile = "/home/jay/nixverse/private/secrets.yaml"
secrets = {
jay_password = {
neededForUsers = true;
};
};
};
}

View File

@@ -1,23 +1,17 @@
{ ... }: {
# Let's setup our user accounts here.
#sops.secrets = {
# jay_password_hash = { };
#};
{ config, inputs, ... }: {
# Define a user account. Don't forget to set a password with passwd.
sops.secrets = {
jay_password_hash = { };
};
users = {
# mutableUsers forces user passwords to stay as those defined in this file.
# With it set to false, you will not be able to change the password for users defined here.
mutableUsers = false;
users.jay = {
isNormalUser = true;
description = "jay";
#hashedPasswordFile = config.sops.secrets.jay_password_hash.path;
hashedPassword = "$y$j9T$oomgQFsMbc0odlNIUXEpq/$dhgLjElzaJuU3rF1wXGcSXFUWC/fP1g5mAPZizKUFQ4";
# Gamemode group allows gamemode to set cpu governor to performance when games launch.
# See https://nixos.wiki/wiki/Gamemode
extraGroups = [ "networkmanager" "wheel" "gamemode" ];
hashedPasswordFile = config.sops.secrets.jay_password.path;
#hashedPassword = "$6$RTOXVXRP1iLIXnQb$rVtTeqlJ7g3AcZgftmVdKFnT2ggCsnVayPlT4beLST9Oz2LHGT2fdcOC/yaQkISK3wzFLqh47fSHgQvRUWpl41";
extraGroups = [ "networkmanager" "wheel" ];
};
};
}

View File

@@ -4,8 +4,5 @@
channel = "stable";
};
lappy = {};
nixy = {
deploy.local = true;
};
nixwork = {};
nixy = {};
}

View File

@@ -2,7 +2,7 @@
# your system. Help is available in the configuration.nix(5) man page, on
# https://search.nixos.org/options and in the NixOS manual (`nixos-help`).
{ ... }:
{ config, lib, pkgs, ... }:
{
imports =

View File

@@ -1,7 +1,7 @@
# Do not modify this file! It was generated by nixos-generate-config
# and may be overwritten by future invocations. Please make changes
# to /etc/nixos/configuration.nix instead.
{ config, lib, modulesPath, ... }:
{ config, lib, pkgs, modulesPath, ... }:
{
imports =

View File

@@ -1,4 +1,4 @@
{ ... }:
{ config, pkgs, inputs, lib, ... }:
{
imports = [
./programs/hyprland.nix

View File

@@ -1,4 +1,4 @@
{ ... }: {
{ pkgs, lib, ... }: {
wayland.windowManager.hyprland = {
settings = {
"monitor" = "eDP-1, 2880x1800@120, 0x0, 1";

View File

@@ -1,4 +1,4 @@
{ lib, ... }: {
{ pkgs, lib, ... }: {
programs.hyprpanel = {
settings = {
"bar.layouts" = {

View File

@@ -1,4 +1,4 @@
{ ... }: {
{ pkgs, ...}: {
# Enable touchpad support (enabled default in most desktopManager).
services.libinput.enable = true;
}

View File

@@ -1,4 +1,4 @@
{ config, ... }: {
{ pkgs, config, ... }: {
boot = {
tmp = {
useTmpfs = true;

View File

@@ -1,4 +1,4 @@
{ ... }: {
{ config, ...}: {
networking.hostName = "lappy"; # Define your hostname.
}

View File

@@ -1,24 +0,0 @@
# Edit this configuration file to define what should be installed on
# your system. Help is available in the configuration.nix(5) man page, on
# https://search.nixos.org/options and in the NixOS manual (`nixos-help`).
{ inputs, ... }:
{
imports =
[ # Include the results of the hardware scan.
./hardware-configuration.nix
inputs.nixos-hardware.nixosModules.framework-16-7040-amd
./programs/sof-firmware.nix
# Not working yet.
./services/fprintd.nix
./services/lidswitch.nix
./services/touchpad.nix
./system/bootloader.nix
./system/filesystems.nix
./system/networking.nix
];
system.stateVersion = "25.05"; # Did you read the comment?
}

View File

@@ -1,110 +0,0 @@
{
disko.devices = {
disk = {
nvme1n1 = {
type = "disk";
device = "/dev/nvme0n1";
content = {
type = "gpt";
partitions = {
ESP = {
label = "boot";
name = "ESP";
size = "4500M";
type = "EF00";
content = {
type = "filesystem";
format = "vfat";
mountpoint = "/boot";
mountOptions = [
"umask=0077"
"defaults"
];
};
};
luks = {
size = "100%";
label = "luks";
content = {
type = "luks";
name = "cryptroot";
# disable settings.keyFile if you want to use interactive password entry
#passwordFile = "/tmp/secret.key"; # Interactive
settings = {
allowDiscards = true;
#keyFile = "/tmp/secret.key";
};
#additionalKeyFiles = [ "/tmp/additionalSecret.key" ];
content = {
type = "btrfs";
extraArgs = [ "-L" "nixos" "-f" ];
subvolumes = {
"/root" = {
mountpoint = "/";
mountOptions = [
"subvol=root"
"compress=zstd"
"noatime"
];
};
"/root-blank" = {
mountOptions = [
"subvol=root-blank"
"nodatacow"
"noatime"
];
};
"/home" = {
mountpoint = "/home";
mountOptions = [
"subvol=home"
"compress=zstd"
"noatime"
];
};
"/nix" = {
mountpoint = "/nix";
mountOptions = [
"subvol=nix"
"compress=zstd"
"noatime"
];
};
"/persist" = {
mountpoint = "/persist";
mountOptions = [
"subvol=persist"
"compress=zstd"
"noatime"
];
};
"/log" = {
mountpoint = "/var/log";
mountOptions = [
"subvol=log"
"compress=zstd"
"noatime"
];
};
"/lib" = {
mountpoint = "/var/lib";
mountOptions = [
"subvol=lib"
"compress=zstd"
"noatime"
];
};
};
};
};
};
};
};
};
};
};
fileSystems."/persist".neededForBoot = true;
fileSystems."/var/log".neededForBoot = true;
fileSystems."/var/lib".neededForBoot = true;
}

View File

@@ -1,26 +0,0 @@
# Do not modify this file! It was generated by nixos-generate-config
# and may be overwritten by future invocations. Please make changes
# to /etc/nixos/configuration.nix instead.
{ config, lib, pkgs, modulesPath, ... }:
{
imports =
[ (modulesPath + "/installer/scan/not-detected.nix")
];
boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "thunderbolt" "usb_storage" "usbhid" "sd_mod" ];
boot.initrd.kernelModules = [ ];
boot.kernelModules = [ "kvm-amd" ];
boot.extraModulePackages = [ ];
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
# (the default) this is the recommended approach. When using systemd-networkd it's
# still possible to use this option, but it's recommended to use it in conjunction
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
networking.useDHCP = lib.mkDefault true;
# networking.interfaces.enp193s0f3u1.useDHCP = lib.mkDefault true;
# networking.interfaces.wlp1s0.useDHCP = lib.mkDefault true;
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
}

View File

@@ -1,8 +0,0 @@
{ ... }:
{
imports = [
./programs/hyprland.nix
./programs/hyprpanel.nix
];
}

View File

@@ -1,7 +0,0 @@
{ ... }: {
wayland.windowManager.hyprland = {
settings = {
"monitor" = "eDP-1, 2560x1600@60, 0x0, 1";
};
};
}

View File

@@ -1,13 +0,0 @@
{ lib, ... }: {
programs.hyprpanel = {
settings = {
bar = {
customModules = {
cava = {
framerate = lib.mkForce 120;
};
};
};
};
};
}

View File

@@ -1,4 +0,0 @@
{
os = "nixos";
channel = "stable";
}

View File

@@ -1,8 +0,0 @@
{ pkgs, ... }: {
# List packages installed in system profile. To search, run:
# $ nix search wget
environment.systemPackages = [
pkgs.sof-firmware
];
}

View File

@@ -1,3 +0,0 @@
{ pkgs, ...}: {
services.fprintd.enable = true;
}

View File

@@ -1,4 +0,0 @@
{ pkgs, ...}: {
services.logind.lidSwitch = "poweroff";
services.logind.lidSwitchExternalPower = "lock";
}

View File

@@ -1,4 +0,0 @@
{ ... }: {
# Enable touchpad support (enabled default in most desktopManager).
services.libinput.enable = true;
}

View File

@@ -1,52 +0,0 @@
{ config, ... }: {
boot = {
tmp = {
useTmpfs = true;
tmpfsSize = "50%";
};
kernelModules = [ "kvm-intel" ];
extraModulePackages = with config.boot.kernelPackages; [ xpadneo ];
extraModprobeConfig = '' options bluetooth disable_ertm=1 '';
initrd = {
# OLD CONFIG
# NAME FSTYPE FSVER LABEL UUID FSAVAIL FSUSE% MOUNTPOINTS
# nvme0n1
# └─nvme0n1p1 crypto_LUKS 2 e174181f-828c-44fd-97c1-0e2fdc2322e5
# └─luks-e174181f-828c-44fd-97c1-0e2fdc2322e5 btrfs home f8ed950a-5cc9-4b87-901c-4cfece6daf6c 3.3T 9% /home
# luks.devices."luks-e174181f-828c-44fd-97c1-0e2fdc2322e5".device = "/dev/disk/by-uuid/e174181f-828c-44fd-97c1-0e2fdc2322e5";
# nvme1n1
# ├─nvme1n1p1 vfat FAT32 D19B-1967 4.3G 3% /boot
# ├─nvme1n1p2 crypto_LUKS 2 300fdb2a-d887-4e53-bc97-9fdc123856ce
# │ └─luks-300fdb2a-d887-4e53-bc97-9fdc123856ce swap 1 swap 66b9e1f6-1fc5-4c32-afc7-724880504495 [SWAP]
# luks.devices."luks-300fdb2a-d887-4e53-bc97-9fdc123856ce".device = "/dev/disk/by-uuid/300fdb2a-d887-4e53-bc97-9fdc123856ce";
# └─nvme1n1p3 crypto_LUKS 2 e69c5d63-f5a7-4cb1-a858-4e6396d8def7
# └─luks-e69c5d63-f5a7-4cb1-a858-4e6396d8def7 btrfs root f53b22d4-df74-4ee0-9f85-3fb0eb087150 /nix/store
# luks.devices."luks-e69c5d63-f5a7-4cb1-a858-4e6396d8def7".device = "/dev/disk/by-uuid/e69c5d63-f5a7-4cb1-a858-4e6396d8def7";
# NEW CONFIG
# nvme0n1
# └─nvme0n1p1 crypto_LUKS 2 1976c849-c317-46c0-af98-d2dfc455c489
# └─crypthome btrfs home c63ca365-e963-4ea4-bb71-ed1c7e1b6bc8 /mnt/home
# luks.devices."crypthome".device = "/dev/disk/by-uuid/1976c849-c317-46c0-af98-d2dfc455c489";
# nvme1n1
# ├─nvme1n1p1 vfat FAT32 CDA0-8838 4.4G 0% /mnt/boot
# └─nvme1n1p2 crypto_LUKS 2 e948662c-ae57-46aa-b7bf-cc09dbaa8cdb
# └─cryptroot btrfs nixos 77021dd1-9fa5-4e9f-9be2-ba943e6de77c 925.1G 0% /mnt/var/log
# /mnt/persist
# /mnt/nix
# /mnt
luks.devices."cryptroot" = {
device = "/dev/disk/by-partlabel/luks";
allowDiscards = true;
};
kernelModules = [ ];
availableKernelModules = [ "nvme" "xhci_pci" "thunderbolt" "usb_storage" "sd_mod" ];
};
};
}

View File

@@ -1,54 +0,0 @@
{ ... }: {
fileSystems."/" =
{ device = "/dev/mapper/cryptroot";
fsType = "btrfs";
options = [ "subvol=root" "compress=zstd" "noatime" ];
};
fileSystems."/home" =
{ device = "/dev/mapper/cryptroot";
fsType = "btrfs";
options = [ "subvol=home" "compress=zstd" "noatime" ];
};
fileSystems."/nix" =
{ device = "/dev/mapper/cryptroot";
fsType = "btrfs";
options = [ "subvol=nix" "compress=zstd" "noatime" ];
};
fileSystems."/var/log" =
{ device = "/dev/mapper/cryptroot";
fsType = "btrfs";
options = [ "subvol=log" "compress=zstd" "noatime" ];
neededForBoot = true;
};
fileSystems."/var/lib" =
{ device = "/dev/mapper/cryptroot";
fsType = "btrfs";
options = [ "subvol=lib" "compress=zstd" "noatime" ];
neededForBoot = true;
};
fileSystems."/persist" =
{ device = "/dev/mapper/cryptroot";
fsType = "btrfs";
options = [ "subvol=persist" "compress=zstd" "noatime" ];
neededForBoot = true;
};
fileSystems."/boot" =
{ device = "/dev/disk/by-partlabel/boot";
fsType = "vfat";
options = [ "fmask=0077" "dmask=0077" ];
};
swapDevices = [{
device = "/swapfile";
size = 18 * 1024;
}];
}

View File

@@ -1,4 +0,0 @@
{ ... }: {
networking.hostName = "nixwork"; # Define your hostname.
}

View File

@@ -2,7 +2,7 @@
# your system. Help is available in the configuration.nix(5) man page, on
# https://search.nixos.org/options and in the NixOS manual (`nixos-help`).
{ inputs, ... }:
{ config, lib, pkgs, inputs, ... }:
{
imports =

View File

@@ -1,7 +1,7 @@
# Do not modify this file! It was generated by nixos-generate-config
# and may be overwritten by future invocations. Please make changes
# to /etc/nixos/configuration.nix instead.
{ config, lib, modulesPath, ... }:
{ config, lib, pkgs, modulesPath, ... }:
{
imports =

View File

@@ -1,4 +1,4 @@
{ lib, ... }:
{ config, pkgs, inputs, lib, ... }:
{
programs.hyprpanel = {

View File

@@ -1,4 +1,4 @@
{lib, ... }: {
{lib, inputs, ...}: {
# Reset root subvolume on boot
boot.initrd.postResumeCommands = lib.mkAfter ''
mkdir /btrfs_tmp

View File

@@ -1,4 +1,4 @@
{ ... }: {
{ pkgs, ...}: {
# Enable the X11 windowing system.
# You can disable this if you're only using the Wayland session.
services.xserver = {

View File

@@ -1,4 +1,4 @@
{ config, ... }: {
{ pkgs, config, ... }: {
boot = {
kernelModules = [ "kvm-amd" ];
extraModulePackages = with config.boot.kernelPackages; [ xpadneo ];

View File

@@ -1,4 +1,4 @@
{ ... }: {
{ pkgs, ... }: {
environment = {
variables = {
# Required to run the correct GBM backend for nvidia GPUs on wayland

View File

@@ -1,4 +1,4 @@
{ ... }: {
{ config, ...}: {
networking.hostName = "nixy"; # Define your hostname.
}

Submodule private updated: 7d635d0d2f...2e3b2acef3