Add files via upload
This commit is contained in:
parent
9a901cb6b7
commit
d167bc68a5
8 changed files with 263 additions and 123 deletions
39
modules/apps.nix
Normal file
39
modules/apps.nix
Normal file
|
|
@ -0,0 +1,39 @@
|
|||
{ config, lib, pkgs, ... }:
|
||||
|
||||
{
|
||||
|
||||
environment.systemPackages = with pkgs; [
|
||||
appeditor
|
||||
git
|
||||
vlc
|
||||
spotify
|
||||
heroic
|
||||
jellyfin
|
||||
jellyfin-web
|
||||
jellyfin-ffmpeg
|
||||
qbittorrent
|
||||
google-chrome
|
||||
wayland-utils # Wayland utilities
|
||||
wl-clipboard # Command-line copy/paste utilities for Wayland
|
||||
appimage-run
|
||||
kdePackages.kcalc # Calculator
|
||||
kdePackages.kate #text editor
|
||||
kdePackages.dolphin
|
||||
font-awesome
|
||||
gpu-screen-recorder
|
||||
gpu-screen-recorder-gtk
|
||||
discord
|
||||
asciiquarium
|
||||
cargo
|
||||
ventoy-full-gtk
|
||||
popsicle
|
||||
];
|
||||
|
||||
nixpkgs.config.permittedInsecurePackages = [
|
||||
"ventoy-gtk3-1.1.05"
|
||||
];
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
51
modules/base.nix
Normal file
51
modules/base.nix
Normal file
|
|
@ -0,0 +1,51 @@
|
|||
{ config, lib, pkgs, ... }:
|
||||
|
||||
let
|
||||
username = "fred";
|
||||
in
|
||||
|
||||
{
|
||||
|
||||
# Base setup
|
||||
nixpkgs.config.allowUnfree = true; #required for Steam
|
||||
networking.networkmanager.enable = true;
|
||||
networking.wireless.enable = false;
|
||||
|
||||
# Locale
|
||||
i18n.defaultLocale = "en_GB.UTF-8";
|
||||
time.timeZone = "Europe/London";
|
||||
services.xserver = {
|
||||
xkb.layout = "no";
|
||||
};
|
||||
|
||||
# Install home manager
|
||||
#environment.systemPackages = with pkgs; [
|
||||
# home-manager
|
||||
#];
|
||||
|
||||
# Home Manager configuration
|
||||
#home-manager = {
|
||||
#useGlobalPkgs = true; # Use system-wide packages
|
||||
#useUserPackages = true; # Install packages to user profile
|
||||
#users.fred = import ./home.nix; # Your personal config
|
||||
#};
|
||||
|
||||
# Base user setup
|
||||
users.users.fred = { isNormalUser = true; initialPassword = "123"; extraGroups = [ "wheel" "networkmanager" "audio" ];};
|
||||
|
||||
# Give perms for nixos folder so git can run without sudo
|
||||
#system.activationScripts.fix-nixos-perms = ''
|
||||
# chown -R ${username}:users /etc/nixos/.git
|
||||
# chmod -R g+rw /etc/nixos/.git
|
||||
# '';
|
||||
|
||||
#environment.etc."gitconfig".text = ''
|
||||
# [safe]
|
||||
# directory = /etc/nixos
|
||||
#'';
|
||||
|
||||
#Fonts?
|
||||
fonts.packages = with pkgs; [ font-awesome ];
|
||||
|
||||
|
||||
}
|
||||
20
modules/discord-capture-limiter.nix
Normal file
20
modules/discord-capture-limiter.nix
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
{ pkgs ? import <nixpkgs> {} }:
|
||||
|
||||
pkgs.stdenv.mkDerivation {
|
||||
pname = "discord-capture-limiter";
|
||||
version = "0.1.0";
|
||||
|
||||
src = pkgs.fetchFromGitHub {
|
||||
owner = "ediblerope";
|
||||
repo = "Discord-Capture-Limiter";
|
||||
rev = "v0.1.0"; # or commit hash
|
||||
sha256 = "sha256-hash-goes-here";
|
||||
};
|
||||
|
||||
buildInputs = [ pkgs.makeWrapper ];
|
||||
installPhase = ''
|
||||
mkdir -p $out/bin
|
||||
cp path/to/your/script $out/bin/discord-capture-limiter
|
||||
chmod +x $out/bin/discord-capture-limiter
|
||||
'';
|
||||
}
|
||||
20
modules/hyprland.nix
Normal file
20
modules/hyprland.nix
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
{ config, lib, pkgs, ... }:
|
||||
|
||||
{
|
||||
programs.hyprland= {
|
||||
enable = true; # enable Hyprland
|
||||
xwayland.enable = true;
|
||||
};
|
||||
|
||||
|
||||
environment.systemPackages = with pkgs; [
|
||||
wofi
|
||||
hyprpaper
|
||||
waybar
|
||||
hyprlock
|
||||
kitty
|
||||
libnotify
|
||||
swaynotificationcenter
|
||||
nerd-fonts.zed-mono
|
||||
];
|
||||
}
|
||||
30
modules/kde.nix
Normal file
30
modules/kde.nix
Normal file
|
|
@ -0,0 +1,30 @@
|
|||
{ config, lib, pkgs, ... }:
|
||||
|
||||
{
|
||||
# Enable SDDM with Wayland support
|
||||
services.displayManager = {
|
||||
sddm = {
|
||||
enable = true;
|
||||
wayland.enable = true; # Force Wayland mode
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
# Enable Plasma with Wayland
|
||||
services.desktopManager.plasma6.enable = true;
|
||||
|
||||
environment.systemPackages = with pkgs; [
|
||||
kdePackages.kcalc # Calculator
|
||||
kdePackages.kcharselect # Tool to select and copy special characters from all installed fonts
|
||||
kdePackages.kcolorchooser # A small utility to select a color
|
||||
kdePackages.kolourpaint # Easy-to-use paint program
|
||||
kdePackages.ksystemlog # KDE SystemLog Application
|
||||
kdePackages.sddm-kcm # Configuration module for SDDM
|
||||
kdePackages.kate #text editor
|
||||
kdePackages.krunner
|
||||
libnotify
|
||||
xsettingsd
|
||||
xorg.xrdb
|
||||
];
|
||||
|
||||
}
|
||||
29
modules/krisp-patcher.nix
Normal file
29
modules/krisp-patcher.nix
Normal file
|
|
@ -0,0 +1,29 @@
|
|||
{ pkgs, ... }:
|
||||
let
|
||||
krisp-patcher =
|
||||
pkgs.writers.writePython3Bin "krisp-patcher"
|
||||
{
|
||||
libraries = with pkgs.python3Packages; [
|
||||
capstone
|
||||
pyelftools
|
||||
];
|
||||
flakeIgnore = [
|
||||
"E501" # line too long (82 > 79 characters)
|
||||
"F403" # 'from module import *' used; unable to detect undefined names
|
||||
"F405" # name may be undefined, or defined from star imports: module
|
||||
];
|
||||
}
|
||||
(
|
||||
builtins.readFile (
|
||||
pkgs.fetchurl {
|
||||
url = "https://raw.githubusercontent.com/sersorrel/sys/afc85e6b249e5cd86a7bcf001b544019091b928c/hm/discord/krisp-patcher.py";
|
||||
sha256 = "sha256-h8Jjd9ZQBjtO3xbnYuxUsDctGEMFUB5hzR/QOQ71j/E=";
|
||||
}
|
||||
)
|
||||
);
|
||||
in
|
||||
{
|
||||
environment.systemPackages = [
|
||||
krisp-patcher
|
||||
];
|
||||
}
|
||||
65
modules/nixos-gaming.nix
Normal file
65
modules/nixos-gaming.nix
Normal file
|
|
@ -0,0 +1,65 @@
|
|||
{ config, lib, pkgs, ... }:
|
||||
|
||||
{
|
||||
|
||||
imports =
|
||||
[ # Include the results of the hardware scan.
|
||||
./apps.nix
|
||||
];
|
||||
|
||||
# Bootloader needed for gaming PC
|
||||
boot.loader = {
|
||||
systemd-boot.enable = true;
|
||||
efi = {
|
||||
canTouchEfiVariables = true;
|
||||
#efiSysMountPoint = "/boot/efi";
|
||||
};
|
||||
};
|
||||
|
||||
# Prevent mount point failures from stopping boot
|
||||
systemd.services.check-mountpoints.enable = false;
|
||||
|
||||
# Steam
|
||||
programs.steam = {
|
||||
enable = true;
|
||||
remotePlay.openFirewall = true;
|
||||
package = pkgs.steam.override {
|
||||
extraPkgs =
|
||||
pkgs: with pkgs; [
|
||||
kdePackages.breeze
|
||||
];
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
programs.gamescope.enable = true;
|
||||
programs.gamemode.enable = true;
|
||||
|
||||
# Jellyfin service
|
||||
services.jellyfin = {
|
||||
enable = true;
|
||||
openFirewall = true;
|
||||
};
|
||||
|
||||
# Noisetorch
|
||||
programs.noisetorch.enable = true;
|
||||
|
||||
#maybe kernel video
|
||||
boot.kernelParams = [ "video=DP-2:1920x1080@144"];
|
||||
|
||||
# Mount torrent drive
|
||||
fileSystems."/mnt/windows" = {
|
||||
device = "/dev/disk/by-uuid/64AE6FC8AE6F90FA";
|
||||
fsType = "ntfs";
|
||||
options = [
|
||||
"rw"
|
||||
"uid=1000"
|
||||
"gid=100"
|
||||
"nofail"
|
||||
"windows_names"
|
||||
];
|
||||
};
|
||||
############
|
||||
|
||||
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue