From c6813d052fc7c8eaec8d41dc6f5167689645d272 Mon Sep 17 00:00:00 2001 From: roxwize Date: Sun, 20 Jul 2025 15:49:58 -0400 Subject: [PATCH] ~ --- README.md | 47 ++++-------------- .../{pig_corp.png => pork_corp.png} | Bin nixos/home/mozilla.nix | 6 ++- nixos/home/vscode.nix | 4 +- nixos/hosts/base.nix | 1 + nixos/hosts/ioides/configuration.nix | 21 ++++---- nixos/hosts/ioides/packages.nix | 32 ++++++------ nixos/modules/system/default.nix | 2 +- 8 files changed, 49 insertions(+), 64 deletions(-) rename assets/wallpapers/{pig_corp.png => pork_corp.png} (100%) diff --git a/README.md b/README.md index b78a994..06a6f73 100644 --- a/README.md +++ b/README.md @@ -1,11 +1,5 @@ ![image](https://github.com/user-attachments/assets/2ab0e4f6-6a94-437b-9598-4396500d1f5b) -this is rae's nixOS config meow - -- **display manager**: SDDM (BUT YUO NEVER SEE IT BLEHHHH) -- **window manager**: openbox -- **status bar**: yambar - # installation theoretically: @@ -19,7 +13,15 @@ nixos-install --flake './nixos#[hostname]' from my experience the process is more involved, but it ultimately boils down to those three commands above (the first command is only for bootstrapping). youll need to make a configuration for your host which involves creating default configurations with `nixos-generate-config`, copying it to your host's folder in `nixos/hosts/[host]/`, editing it, and then adding it to `flake.nix`. after that you should clone the repo inside of `/home/rae/` on your filesystem -## raspberry PI devices +# default applications + +- **compositor** xcompmgr +- **DM** SDDM +- **launcher** rofi +- **statusbar** yambar +- **WM** openbox + + -# usage - -the system should boot into openbox and from there you'll have your statusbar and a lot of keybinds to learn x3 - -## openbox hotkeys +# openbox hotkeys ``` Menus @@ -99,29 +97,6 @@ Miscellaneous Restart ``` -or: - -**Alt+Left click** and drag over a window to move it
-**Alt+Right click** and drag over a window to resize it
-**Ctrl+Right click** on titlebar to open its window's menu
-**Alt+C** over a window to do the same thing - -**Double click titlebar** to maximize its window completely
-**Left click maximize button** to maximize completely
-**Middle click maximize button** to maximize vertically
-**Right click maximize button** to maximize horizontally - -**Right click** on desktop to open menu
-**Alt+Right click** over a window to do the same thing
-**Alt+D** to open the application launcher - -**Alt+Left arrow** to go to the previous desktop
-**Alt+Right arrow** to go to the next desktop
-**Alt+[1-6]** to go to a specific desktop
-**Alt+Shift+Left arrow** to go to the previous desktop window
-**Alt+Shift+Right arrow** to go to the next desktop window
-**Alt+Tab** to cycle windows in all desktops - # (history) here is the very first finalized version of this config that was originally tested on a qemu vm. it took 14 hours to set up. after running it on the machine itself and switching over to the configuration in its entirety i realized that it was complete and utter HORSESHIT. making things look nice again took another like four hours. diff --git a/assets/wallpapers/pig_corp.png b/assets/wallpapers/pork_corp.png similarity index 100% rename from assets/wallpapers/pig_corp.png rename to assets/wallpapers/pork_corp.png diff --git a/nixos/home/mozilla.nix b/nixos/home/mozilla.nix index bba2493..64837d2 100644 --- a/nixos/home/mozilla.nix +++ b/nixos/home/mozilla.nix @@ -27,7 +27,7 @@ isDefault = true; extensions = with pkgs.nur.repos.rycee.firefox-addons; [ canvasblocker - catppuccin-gh-file-explorer + catppuccin-web-file-icons indie-wiki-buddy privacy-badger simple-tab-groups @@ -39,6 +39,8 @@ ]; settings = { "browser.aboutConfig.showWarning" = false; + "browser.ml.chat.enabled" = false; + "browser.ml.enable" = false; "browser.newtabpage.activity-stream.default.sites" = "https://en.wikipedia.org/"; "browser.newtabpage.activity-stream.discoverystream.enabled" = false; "browser.newtabpage.activity-stream.feeds.telemetry" = false; @@ -61,6 +63,7 @@ "browser.startup.page" = 3; "browser.tabs.closeWindowWithLastTab" = false; "browser.tabs.insertAfterCurrent" = true; + "browser.urlbar.suggest.quicksuggest.sponsored" = false; "devtools.editor.tabsize" = 4; "datareporting.healthreport.uploadEnabled" = false; "extensions.pocket.enabled" = false; @@ -69,6 +72,7 @@ "font.name.monospace.x-western" = "Fira Code"; "general.autoScroll" = true; "layout.css.prefers-color-scheme.content-override" = 0; + "sidebar.visibility" = "hide-sidebar"; "svg.context-properties.content.enabled" = true; }; bookmarks = [ diff --git a/nixos/home/vscode.nix b/nixos/home/vscode.nix index d86d123..816cf0e 100644 --- a/nixos/home/vscode.nix +++ b/nixos/home/vscode.nix @@ -51,7 +51,7 @@ # "editor.fontLigatures" = true; "editor.formatOnSave" = false; "editor.indentSize" = 4; - "editor.inlayHints.enabled" = false; + "editor.inlayHints.enabled" = "off"; "editor.insertSpaces" = false; "editor.tabSize" = 4; "explorer.confirmDelete" = false; @@ -62,12 +62,14 @@ "prettier.singleAttributePerLine" = false; "prettier.useEditorConfig" = true; "prettier.useTabs" = true; + "SourcePawnLanguageServer.includeDirectories" = [ "/mnt/rae2/steamcmd/css_ds/cstrike/addons/sourcemod/scripting/include" ]; "svelte.enable-ts-plugin" = true; "telemetry.telemetryLevel" = "off"; "workbench.activityBar.iconClickBehavior" = "toggle"; "workbench.activityBar.location" = "bottom"; "workbench.colorTheme" = "Catppuccin Frappé"; "workbench.iconTheme" = "catppuccin-frappe"; + "workbench.sideBar.location" = "right"; "workbench.startupEditor" = "none"; } // builtins.listToAttrs [ (df "css" "esbenp.prettier-vscode") diff --git a/nixos/hosts/base.nix b/nixos/hosts/base.nix index 7bb0fd5..4d631c7 100644 --- a/nixos/hosts/base.nix +++ b/nixos/hosts/base.nix @@ -12,6 +12,7 @@ }; nixpkgs = { config = { + allowBroken = true; allowUnfree = true; nvidia.acceptLicense = true; }; diff --git a/nixos/hosts/ioides/configuration.nix b/nixos/hosts/ioides/configuration.nix index fe269fa..e3ef7c9 100644 --- a/nixos/hosts/ioides/configuration.nix +++ b/nixos/hosts/ioides/configuration.nix @@ -26,7 +26,7 @@ }; nvidia = { enable = true; - package = config.boot.kernelPackages.nvidiaPackages.legacy_390; + package = config.boot.kernelPackages.nvidiaPackages.stable; }; }; }; @@ -59,15 +59,15 @@ fsType = "ext4"; neededForBoot = false; }; -# # Big fucking thing -# fileSystems."/mnt/rae2" = { -# device = "/dev/disk/by-uuid/fbbcc72f-34af-425c-9151-ef8919a6ae07"; -# fsType = "ext4"; -# neededForBoot = false; -# }; + # Big fucking thing + fileSystems."/mnt/rae2" = { + device = "/dev/disk/by-uuid/fbbcc72f-34af-425c-9151-ef8919a6ae07"; + fsType = "ext4"; + neededForBoot = false; + }; networking = { - firewall.allowedTCPPorts = [ 80 443 5900 8080 19132 25565 ]; + firewall.allowedTCPPorts = [ 80 443 5900 8080 19132 25565 27015 ]; hosts = { "10.0.0.2" = [ "near" "near.local" ]; }; @@ -148,7 +148,10 @@ flatpak.enable = true; }; - security.polkit.enable = true; + security = { + polkit.enable = true; + sudo.package = pkgs.sudo.override { withInsults = true; }; + }; xdg = { mime = { diff --git a/nixos/hosts/ioides/packages.nix b/nixos/hosts/ioides/packages.nix index 757c5aa..295584d 100644 --- a/nixos/hosts/ioides/packages.nix +++ b/nixos/hosts/ioides/packages.nix @@ -15,7 +15,7 @@ jdk23 # Open-source Java Development Kit just # Handy way to save and run project-specific commands meson # Open source, fast and friendly build system made in Python - nodejs_23 # Event-driven I/O framework for the V8 JavaScript engine + nodejs_24 # Event-driven I/O framework for the V8 JavaScript engine nurl # Command-line tool to generate Nix fetcher calls from repository URLs pnpm # Fast, disk space efficient package manager for JavaScript python313 # High-level dynamically-typed programming language @@ -34,8 +34,8 @@ gzdoom # Modder-friendly OpenGL and Vulkan source port based on the DOOM engine unstable.luanti # An open source voxel game engine (formerly Minetest) prismlauncher # Free, open source launcher for Minecraft - (retroarch.override { # Multi-platform emulator frontend for libretro cores - cores = with libretro; [ + (retroarch.withCores ( # Multi-platform emulator frontend for libretro cores + cores: with cores; [ blastem # Sega Genesis dosbox # MS-DOS easyrpg # RPG Maker 2000/2003 @@ -47,8 +47,8 @@ ppsspp # PlayStation Portable snes9x # Super Nintendo Entertainment System yabause # Sega Saturn - ]; - }) + ] + )) steam-run # Run commands in the same FHS environment that is used for Steam the-powder-toy # Free 2D physics sandbox game uxn # Assembler and emulator for the Uxn stack machine @@ -69,11 +69,12 @@ cachix # Command-line client for Nix binary cache hosting ngrok # Allows you to expose a web server running on your local machine to the internet nicotine-plus # Graphical client for the SoulSeek peer-to-peer system - playit-agent # The playit program + # doesn't work at the moment (and port forwarding works now anyways) +# playit-agent # The playit program qbittorrent # Featureful free software BitTorrent client slack # Desktop client for Slack tiny # Console IRC client - unstable.vesktop # Alternate client for Discord with Vencord built-in + vesktop # Alternate client for Discord with Vencord built-in yt-dlp # Command-line tool to download videos from YouTube.com and other sites (youtube-dl fork) # system tools android-tools # Android SDK platform tools @@ -95,13 +96,12 @@ xclip # Tool to access the X clipboard from a console application zellij # Terminal workspace with batteries included # text editors - # TODO: remove unstable when you upgrade to 25.05 - unstable.neovim # Vim text editor fork focused on extensibility and agility + neovim # Vim text editor fork focused on extensibility and agility vscodium # Open source source code editor developed by Microsoft for Windows, Linux and macOS (VS Code without MS branding/telemetry/licensing) # audio alsa-utils # ALSA, the Advanced Linux Sound Architecture utils audacity # Sound editor with graphical UI - unstable.bespokesynth # Software modular synth with controllers support, scripting and VST + bespokesynth # Software modular synth with controllers support, scripting and VST # TODO: consider getting rid of this (no mpd support makes me sad......) fooyin # Customisable music player mpc # Minimalist command line interface to MPD @@ -123,7 +123,7 @@ yambar # Modular status panel for X11 and Wayland # misc anki # Spaced repetition flashcard program - unstable.kdePackages.kdenlive # Free and open source video editor, based on MLT Framework and KDE Frameworks + kdePackages.kdenlive # Free and open source video editor, based on MLT Framework and KDE Frameworks kicad-small # Open Source Electronics Design Automation suite, without 3D models mlt #! Open source multimedia framework, designed for television broadcasting (This is fucking stupid) nmap # Free and open source utility for network discovery and security auditing @@ -133,16 +133,16 @@ temurin-jre-bin-8 # Eclipse Temurin, prebuilt OpenJDK binary vlc # Cross-platform media player and streaming server # programs to consider the retention of - catppuccin-sddm # Soothing pastel theme for SDDM +# catppuccin-sddm # Soothing pastel theme for SDDM cemu-ti # Third-party TI-84 Plus CE / TI-83 Premium CE emulator, focused on developer features - flips # Patcher for IPS and BPS files - ghidra # Software reverse engineering (SRE) suite of tools +# flips # Patcher for IPS and BPS files +# ghidra # Software reverse engineering (SRE) suite of tools libreoffice # Comprehensive, professional-quality productivity suite, a variant of openoffice.org plugdata # Plugin wrapper around Pure Data to allow patching in a wide selection of DAWs soteria # Polkit authentication agent written in GTK designed to be used with any desktop environment sunvox # Small, fast and powerful modular synthesizer with pattern-based sequencer - tilem # Emulator and debugger for Texas Instruments Z80-based graphing calculators - timeshift # System restore tool for Linux +# tilem # Emulator and debugger for Texas Instruments Z80-based graphing calculators +# timeshift # System restore tool for Linux ]; services.flatpak.packages = [ diff --git a/nixos/modules/system/default.nix b/nixos/modules/system/default.nix index 7cb96da..25287f5 100644 --- a/nixos/modules/system/default.nix +++ b/nixos/modules/system/default.nix @@ -80,7 +80,7 @@ in with lib; { enable = cfg.graphics.display.x11.enable; xkb.layout = "us"; windowManager = builtins.listToAttrs (builtins.map (x: { name = x; value = { enable = true; }; }) cfg.graphics.display.x11.windowManagers); - videoDrivers = (optional cfg.graphics.hardwareAcceleration.nvidia.enable "nvidia") ++ [ "modesetting" ]; + videoDrivers = if cfg.graphics.hardwareAcceleration.nvidia.enable then [ "nvidia" ] else [ "modesetting" ]; }; displayManager.sddm = { enable = cfg.graphics.display.x11.enable;