diff --git a/modules/modules/Modules.org b/modules/modules/Modules.org new file mode 100644 index 0000000..32c75f7 --- /dev/null +++ b/modules/modules/Modules.org @@ -0,0 +1,125 @@ +#+TITLE: Configuration Modules +#+AUTHOR: Infinidoge + +* Desktop :directory: + +Contains modules that include elements of a desktop environment, such as a Window Manager configuration or groups of applications for a purpose. + +** Gaming :module: + +Sets up applications for the specific purpose of playing games. + +Currently includes: +- Steam +- MultiMC (Soon PolyMC) +- Lutris + +* Hardware :directory: + +Contains modules that setup or define properties for hardware elements of a computer setup. + +** Peripherals :directory: + +Contains modules that setup peripherals that may be connected to a computer. + +*** Printing :module: + +Sets up printing drivers. Currently non-functional, but attempts to include drivers for a Canon printer. + +*** Razer :module: + +Setup the OpenRazer daemon and install management software. Currently uses RazerGenie, to be replaced by Polychromatic. + +** Audio :module: + +Sets up computer audio, specifically using PulseAudio. + +** Form :module: + +Defines different forms that computers may be in, serving as presets based on use. + +Presets: +- Desktop +- Laptop +- Portable +- Raspberry Pi +- Server + +** GPU :module: + +Sets up different brands of video cards, including Nvidia, Intel, and AMD. + +** Wireless :module: + +Sets up the hardware-side of wireless networking, including both WiFi and Bluetooth, and installs/enables necessary ways to manage manually. + +* Services :directory: + +Contains modules that setup different services that may be used on a computer. + +** Folding At Home :module: + +Sets up the Folding@Home service for contributing to the Folding@Home project. + +** Proxy :module: + +Sets up a proxy and SSH tunnel into my home network using the ssh-tunnel functionality module and Privoxy. + +* Software :directory: + +** Console :module: + +Sets up the TTY consoles for my computers using KMSCON, which enables Unicode fonts, like the Nerdfont I use for my Starship prompt. + +** MiniPro :module: + +Sets up the software and udev rules necessary for minipro-type EEPROM writers. + +** Steam :module: + +Sets up the Steam game store, re-implements the Nixpkgs enable option so packages can be installed based on the user. + +* Boot :module: + +Sets up the bootloader of a system. Primarily used with GRUB, but systemd-boot is left as a fallback/alternative. + +Currently includes: +- GRUB v2 +- systemd-boot + +* Filesystems :module: + +Sets up a variety of filesystems that may be needed on a computer, as well as any software necessary to manage them. + +Currently includes: +- Filesystems + + btrfs + - btrfs-progs + - btrfs autoscrub service + + sshfs + + exfat + + ntfs +- Software + + udevil + +* Locale :module: + +Sets up a variety of locale-related options like font, timezone, language, etc. + +Defaults set to English and the EST timezone. For used fonts, see user definition. + +* Networking :module: + +Sets up non-hardware-specific network settings. Currently blanket-disables =useDHCP=, as recommended. + +* Security :module: + +Implements any random security-related changes, specifically: +- Accept ACME terms +- Disable sudo lecture +- Make =/tmp= volatile (tmpfs or regularly clean) +- Allow others to access fuse user mounts + +* Virtualization :module: + +Sets up software and settings for virtualization. Currently uses libvirtd/qemu with virt-manager.