Skip to content

shootie22/dotfiles

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

62 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

dotfiles

nixOS and user configuration for my machines

layout

hosts/
  nixpad/
    configuration.nix          # host config
    hardware-configuration.nix
    xmm7360/                   # LTE helper scripts

home/
  bro/
    home.nix                   # Home Manager config
    hypr/                      # Hyprland + Hyprpaper
    iamb/
    kitty/
    meli/
    scripts/
      clipboard/
      media/
      screengrab/
      wallpaper/
    swaync/
    theme/
    wallpapers/
    waybar/
    wofi/

pkgs/
  xmm7360-pci/                 # local kernel module package

On nixpad, /etc/nixos points at:

/home/bro/gitrepos/github/dotfiles/hosts/nixpad

commands

rebuild

sudo nixos-rebuild switch

explicit config path:

sudo nixos-rebuild switch -I nixos-config=/home/bro/gitrepos/github/dotfiles/hosts/nixpad/configuration.nix

wallpaper

chwp IMAGE                 # copy image into the repo, set it, reload hyprpaper
chwp --move-file IMAGE     # move image into the repo instead of copying
chwp --which               # print the configured wallpaper
change-wallpaper IMAGE     # same backend, more literal name
rotate-wallpaper           # switch to the next wallpaper

automatic rotation is a Home Manager systemd user timer:

systemctl --user list-timers | grep rotate-wallpaper
systemctl --user start rotate-wallpaper.service
journalctl --user -u rotate-wallpaper.service

media

preview FILE               # images in swayimg, videos in mpv
kitten icat IMAGE          # show an image in kitty

screengrabs

screenshot-region          # select region and save screenshot
record-region              # select/start/stop recording
screencast-status          # status text for waybar
Print                      region screenshot
Ctrl+Print                 start/stop region recording

files go under:

~/Media/Screengrabs/Screenshots/
~/Media/Screengrabs/Recordings/

clipboard

clipboard-history          # open picker
cliphist-store             # internal wl-paste store helper
Super+V                    clipboard history
Super+Shift+V              toggle floating

LTE

lte-on                     # switch internet to LTE
lte-on --verbose
lte-off                    # return to Wi-Fi
lte-off --verbose
xmm7360-status             # modem/service/routes/DNS status
xmm7360-reset              # normal modem reset
xmm7360-hard-reset         # ACPI/PCI recovery path
xmm7360-use-lte            # lower-level LTE routing/DNS
xmm7360-use-wifi           # lower-level Wi-Fi restore
xmm7360-use-dns            # install LTE DNS only

config notes

host

hosts/nixpad/configuration.nix is the main NixOS file.

it sets the machine basics, imports Home Manager, enables Hyprland/UWSM, installs system packages, configures fonts, Bluetooth, networking, greetd, TLP, and the experimental LTE stack.

<nixos-unstable> is imported in the host config for selected packages. Home Manager receives it through home-manager.extraSpecialArgs.

home manager

home/bro/home.nix owns user packages, shell-wrapped helper commands, user services, and tracked config files under ~/.config.

most config files are normal Home Manager links. hyprpaper.conf is an out-of-store symlink on purpose, so wallpaper scripts can update the repo file directly.

desktop

tracked desktop config:

home/bro/hypr/
home/bro/kitty/
home/bro/swaync/
home/bro/theme/
home/bro/waybar/
home/bro/wofi/

current desktop pieces include Hyprland, Hyprpaper, Kitty, Waybar, Wofi, SwayNC, Hackneyed cursors, wallpaper rotation, clipboard history, screenshots, recording, and media previews.

apps

user-side apps are in Home Manager. currently notable ones:

iamb      matrix client, using unstable package for newer media support
meli      mail client
gitui     terminal git UI, installed system-wide
wiremix   audio mixer
runelite

iamb config enables kitty image previews.

wallpapers

wallpapers live in:

home/bro/wallpapers/

chwp persists a selected image and reloads Hyprpaper. rotate-wallpaper walks the wallpaper directory alphabetically and sets the next image.

hyprpaper.conf tracks the current wallpaper, so automatic rotation may leave it modified in git.

the timer is user-level systemd, generated by Home Manager:

OnBootSec = "30min";
OnUnitActiveSec = "30min";
LTE modem

nixpad has a Fibocom L850-GL / Intel XMM7360 modem.

ModemManager does not manage this card in RPC mode:

Intel XMM7360 in RPC mode not supported

so this repo uses:

pkgs/xmm7360-pci/
hosts/nixpad/xmm7360/

the host config disables ModemManager for this machine, blacklists iosm, builds the local xmm7360 module, enables acpi_call, and installs the LTE wrapper commands.

APN config lives outside git:

sudo cp /etc/xmm7360.example /etc/xmm7360
sudoedit /etc/xmm7360

for Digi Mobil Romania:

apn=internet

this is internet-only experimental support. SMS and calls are not handled here.

About

dotfiles for my machines

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors