Skip to content

GideonWolfe/nix

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

My Nix Dot files

Repo Structure

  • flake.nix the sources for all software, eg. nixpkgs, home-manager, and stylix.
  • wallpapers my collection of wallpapers. I haven't found a cleaner solution than including them in the repo 🤷
  • configs all the possible configurations
    • hosts the configs for individual systems such as laptops, desktops, servers
      • hostname
        • configuration.nix some basic configs option for the system (bootloader, timezone, etc) TODO move configs out of here
        • hardware-configuration.nix config for the system's hardware
        • system contains all system configurations
          • graphics configs for wayland, stylix
          • packages system level packages that should be installed
          • services configs for services that run on the system (greeter, CUPS, etc)
          • system system level configs (timezone, hostname, bootloader, etc)
    • uses configs for individual users on these system and their dotfiles
      • username
        • home.nix the basic setup for the user, and where all other HM configs are imported
        • configs config files for various programs
        • packages the packages to be installed for that user
        • scripts helper scripts with various functionality
        • secrets encrypted secrets and their configuration

Setup Instructions

Home manager

nix run #.homeConfigurations.gideon.activationPackage

SSH

to switch this repo over to SSH to push any changes and be authed SSH keys must exist

git remote set-url origin github:gideonwolfe/nix

TODO

Initial steps required for setup

  • Calendars and Contacts

    • vdirsyncer discover calendar_gmail to initialize auth to vdirsyncer
    • vdirsyncer discover contacts_gmail to initialize auth to vdirsyncer
    • there's a couple things you have to agree too, like creating the local calendar files, how to automate this?
  • Set up browser plugins

    • ~/.config/darkreader/darkreader.json needs to be manually imported via darkreader settings (FF and Chromium)
    • New Tab Override (FF) and New Tab URL (Chromium) needs to be set to point at http://localhost:9876
  • Discord

    • Vesktop has to be launched for a first time setup
    • You have to select "Stylix" theme in "Theme" settings page
    • Can I force enable this through settings.json? Maybe use JQ
    • Login
  • KDE Connect

    • Add your device
  • Signal Desktop

    • Verify/add device

Nixvim

  • lualine config not advanced enough for me to inject mode formatting function
    • I checked in matrix and they want to fix/update this

Vesktop

  • Find way to automate plugin installation (in settings.json) but there are "stateful" lines in that file, how to programatically chnge? JQ?
  • Find a way to automate theme selection to stylix (settings.json)
  • change the color values in top level settings.json for splash screen, it doesn't use hex though

Real Time Audio (for music production)

https://github.com/musnix/musnix

Add theme to cli-visualizer

command is vis, takes a config file with a theme

https://github.com/dpayne/cli-visualizer?tab=readme-ov-file#configuration

Add custom icons of some sort

Change workspace icon when new window opened

like if I click a link and it opens a tab in FF in another workspace, that workspace icon should get a highlight. I think its called urgent or something

Add theme to audacity

seems to have a "Custom" option for theme

Configure spicetify

https://github.com/the-argus/spicetify-nix lets you specify custom colors in nix Already installed this, works well with preset themes. Now need to make a stylix theme

Hardware only stuff (can't really config in VM)

  • Multi monitor outputs
  • Bluetooth (should be configured already)
  • Virtual machines (should be configured already)
  • Backlight control (already have module but need to test)
  • Hibernation/sleep

Seahorse won't import SSH key

Could not display “<key_name>”
Reason:	Unrecognized or unsupported data.

is it because the keys aren't in .ssh? I don't think that's been an issue before

Emoji fonts rendering as colored emoji

I have emoji font specified in stylix as Symbola, and fonts.fontconfig.defaultFonts.emoji = ["Symbola"]

I have symbola and noto-fonts-monochrome-emoji installed, which both seem to be showing in gucharmap

It's just not changing the system emoji font :(

Qt Theming

Ongoing discussion on Stylix github, how to access these new features?

danth/stylix#367

Build UI Elements

Window switcher

to switch between windows on all workspaces

Fancy logout/shortcut/power menu

on old system it was build with rofi, but this will change

Set up Hyprland

hard to do in a VM since it runs like shite

Improve waybar media playing module

maybe this third party one https://github.com/raffaem/waybar-mediaplayer or just hack on it

Add waybar desktop notification toggle

maybe adapt https://github.com/vkraven/swankybar to toggle notifications instead of adaptive sync

Misc

  • cava continues to hear audio even when system vol is muted

Wanted Packages