1
0
Fork 0
mirror of https://git.sr.ht/~roxwize/.dotfiles synced 2025-06-16 08:58:43 +00:00
This commit is contained in:
Rae 5e 2025-03-09 15:19:18 -04:00
parent f4ce86af2a
commit e30250fd23
Signed by: rae
GPG key ID: 5B1A0FAB9BAB81EE
8 changed files with 125 additions and 196 deletions

View file

@ -36,7 +36,6 @@
};
in builtins.listToAttrs [
(mkSystem "ioides" "x86_64") # main pc
(mkSystem "qemu" "x86_64") # emulatr...........
(mkSystem "near" "aarch64") # raspberry pi 5 home server
];

View file

@ -1,130 +0,0 @@
{ config, pkgs, inputs, ... }: {
imports = [
inputs.nix-flatpak.nixosModules.nix-flatpak
./base.nix
../packages.nix
];
boot = {
extraModulePackages = with config.boot.kernelPackages; [ v4l2loopback ];
extraModprobeConfig = ''
options v4l2loopback devices=1 video_nr=1 card_label="OBS Cam" exclusive_caps=1
'';
supportedFilesystems = [ "ntfs" ];
};
security.polkit.enable = true;
networking.networkmanager.enable = true;
programs = {
dconf.enable = true;
firefox.enable = true;
fish.enable = true;
gnupg.agent = {
enable = true;
enableSSHSupport = true;
};
nix-ld.enable = true;
steam = {
enable = true;
remotePlay.openFirewall = true;
dedicatedServer.openFirewall = true;
localNetworkGameTransfers.openFirewall = true;
};
thunderbird = {
enable = true;
policies.DisableTelemetry = true;
};
};
services = {
# Xorg
xserver = {
enable = true;
xkb.layout = "us";
windowManager = {
cwm.enable = true;
openbox.enable = true;
twm.enable = true;
};
};
displayManager = {
sddm = {
enable = true;
settings = {
Autologin = {
User = "rae";
Session = "none+openbox";
};
};
theme = "catppuccin-mocha";
};
};
# Touchpad support
libinput.enable = true;
# Sound
pipewire = {
enable = true;
alsa.enable = true;
pulse.enable = true;
jack.enable = true;
};
# CUPS printing
# Can be configured at http://127.0.0.1:631/
# Local printers are host-specific (see `hardware.printers`)
# Avahi enables IPP Everywhere
printing.enable = true;
avahi = {
enable = true;
nssmdns4 = true;
openFirewall = true;
};
# misc
blueman.enable = true;
flatpak.enable = true;
};
hardware = {
bluetooth = {
enable = true;
powerOnBoot = true;
};
opentabletdriver.enable = true;
};
xdg.portal = {
enable = true;
config = {
common = {
default = [ "gtk" ];
};
};
extraPortals = with pkgs; [ xdg-desktop-portal-gtk ];
};
fonts = {
enableDefaultPackages = true;
fontconfig = {
enable = true;
defaultFonts = {
emoji = [ "Twitter Color Emoji" "Noto Color Emoji" ];
monospace = [ "Fira Code Light" ];
};
};
packages = with pkgs; [
fira-code
gohufont
nasin-nanpa
noto-fonts
noto-fonts-cjk-sans
noto-fonts-emoji
twemoji-color-font
];
};
users.users.rae.shell = pkgs.fish;
virtualisation.docker.enable = true;
}

View file

@ -1,12 +1,17 @@
{ config, lib, pkgs, ... }:
{ inputs, config, lib, pkgs, ... }:
{
imports = [
inputs.nix-flatpak.nixosModules.nix-flatpak
./hardware-configuration.nix
../desktop.nix
./packages.nix
];
boot = {
binfmt.emulatedSystems = [ "aarch64-linux" ];
extraModulePackages = with config.boot.kernelPackages; [ v4l2loopback ];
extraModprobeConfig = ''
options v4l2loopback devices=1 video_nr=1 card_label="OBS Cam" exclusive_caps=1
'';
loader = {
efi = {
canTouchEfiVariables = false;
@ -19,6 +24,7 @@
devices = [ "nodev" ];
};
};
supportedFilesystems = [ "ntfs" ];
};
# Music pendrive
@ -39,12 +45,14 @@
hosts = {
"10.0.0.2" = [ "near" "near.local" ];
};
networkmanager.enable = true;
};
services = {
xserver.videoDrivers = [ "nvidia" ];
};
hardware = {
bluetooth = {
enable = true;
powerOnBoot = true;
};
graphics = {
enable = true;
extraPackages = with pkgs; [
@ -61,11 +69,117 @@
nvidiaSettings = true;
package = config.boot.kernelPackages.nvidiaPackages.stable;
};
opentabletdriver.enable = true;
};
fonts.fontconfig.subpixel.rgba = "rgb";
fonts = {
enableDefaultPackages = true;
fontconfig = {
enable = true;
defaultFonts = {
emoji = [ "Twitter Color Emoji" "Noto Color Emoji" ];
monospace = [ "Fira Code Light" ];
};
subpixel.rgba = "rgb";
};
packages = with pkgs; [
fira-code
gohufont
nasin-nanpa
noto-fonts
noto-fonts-cjk-sans
noto-fonts-emoji
twemoji-color-font
];
};
programs = {
dconf.enable = true;
firefox.enable = true;
fish.enable = true;
gnupg.agent = {
enable = true;
enableSSHSupport = true;
};
nix-ld.enable = true;
steam = {
enable = true;
remotePlay.openFirewall = true;
dedicatedServer.openFirewall = true;
localNetworkGameTransfers.openFirewall = true;
};
thunderbird = {
enable = true;
policies.DisableTelemetry = true;
};
};
services = {
# Xorg
xserver = {
enable = true;
xkb.layout = "us";
videoDrivers = [ "nvidia" ];
windowManager = {
cwm.enable = true;
openbox.enable = true;
twm.enable = true;
};
};
displayManager = {
sddm = {
enable = true;
settings = {
Autologin = {
User = "rae";
Session = "none+openbox";
};
};
theme = "catppuccin-mocha";
};
};
# Touchpad support
libinput.enable = true;
# Sound
pipewire = {
enable = true;
alsa.enable = true;
pulse.enable = true;
jack.enable = true;
};
# CUPS printing
# Can be configured at http://127.0.0.1:631/
# Local printers are host-specific (see `hardware.printers`)
# Avahi enables IPP Everywhere
printing.enable = true;
avahi = {
enable = true;
nssmdns4 = true;
openFirewall = true;
};
# misc
blueman.enable = true;
flatpak.enable = true;
};
security.polkit.enable = true;
xdg.portal = {
enable = true;
config = {
common = {
default = [ "gtk" ];
};
};
extraPortals = with pkgs; [ xdg-desktop-portal-gtk ];
};
users.users.rae.shell = pkgs.fish;
virtualisation.docker.enable = true;
time.timeZone = "America/New_York";
system.stateVersion = "24.11";
}

View file

@ -1,8 +1,4 @@
{ pkgs, ... }: {
# I'm not sure if you actually need stuff like GTK4 to be
# in here when it's really only used with nix-shell and the
# amount of time it saves during installation is probably
# only like a few seconds
environment.systemPackages = with pkgs; [
# development
bun # Incredibly fast JavaScript runtime, bundler, transpiler and package manager all in one
@ -23,6 +19,7 @@
pnpm # Fast, disk space efficient package manager for JavaScript
python313 # High-level dynamically-typed programming language
vala # Compiler for GObject type system
wxwabbitemu #!Cross-platform TI-8x emulator based on Wabbitemu
## language servers
mesonlsp # Meson
nil # Nix

View file

@ -1,20 +0,0 @@
{ ... }:
{
imports = [
./hardware-configuration.nix
../desktop.nix
];
boot.loader = {
grub = {
enable = true;
device = "/dev/sda";
};
};
networking.hostName = "qemu";
time.timeZone = "America/New_York";
system.stateVersion = "24.11";
}

View file

@ -1,33 +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 + "/profiles/qemu-guest.nix")
];
boot.initrd.availableKernelModules = [ "ata_piix" "floppy" "sd_mod" "sr_mod" ];
boot.initrd.kernelModules = [ ];
boot.kernelModules = [ "kvm-intel" ];
boot.extraModulePackages = [ ];
fileSystems."/" =
{ device = "/dev/disk/by-uuid/2812e740-47e5-4246-b9ef-9cf9900665fa";
fsType = "ext4";
};
swapDevices =
[ { device = "/dev/disk/by-uuid/efc2c587-0227-4c85-a49d-0e508f1b75a6"; }
];
# 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.ens3.useDHCP = lib.mkDefault true;
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
}

View file

@ -1,4 +1,4 @@
{ stdenv, fetchFromGitHub, cmake, wxGTK32 }: stdenv.mkDerivation {
{ stdenv, fetchFromGitHub, cmake, wxGTK32, lib }: stdenv.mkDerivation {
pname = "wxwabbitemu";
version = "0.1.0";