Donovan Glover
168134bcf3
qemu: Add audio support to virtual machines
...
This fixes an issue where virtual machines would previously use dummy
output. More specifically, pulseaudio is used since pipewire supports
it, and intel hd audio (hda) is used since it's generally regarded as
one of the better options based on information available online.
Note that -audio is used instead of the outdated -audiodev and -soundhw
options. This setup also avoids the choppy audio observed with other
solutions like alsa.
References:
- https://www.qemu.org/docs/master/system/qemu-manpage.html
- https://github.com/NixOS/nixpkgs/issues/175378
- https://superuser.com/questions/1337570
- https://en.wikipedia.org/wiki/Intel_High_Definition_Audio
- https://gitlab.com/qemu-project/qemu/-/issues/1519
- https://lists.nongnu.org/archive/html/qemu-discuss/2020-04/msg00089.html
2023-06-18 07:02:19 -04:00
Donovan Glover
b2ff95f11b
udiskie: Only enable if hyprland
...
Conditional imports like this could make it easier to import everything
at once and selectively exclude as needed.
2023-06-17 22:46:29 -04:00
Donovan Glover
42699b6985
containers: Add obsidian
...
Mainly a proof of concept. Eventually I'll devise an easy way to view
notes in a pretty way and edit them with neovim (likely through your
typical web framework tools).
2023-06-17 22:43:01 -04:00
Donovan Glover
798aa35edf
meta: Use separate module for plasma
...
This enables plasma to be used as both a specialization and as a desktop
environment in a virtual machine.
2023-06-17 22:23:25 -04:00
Donovan Glover
0bd8f69705
fix(fonts): Explicitly reject default fonts
...
This fixes an issue where the default fonts were included by default
from another module in the system configuration.
2023-06-17 21:05:12 -04:00
Donovan Glover
446a2c1647
meta: Enable network-manager to manage dns
...
This enables virtual machines to make DNS queries without having to
manually set things up.
2023-06-17 20:59:41 -04:00
Donovan Glover
77956b181b
fix(fonts): Don't enable default fonts
...
This fixes an issue where some applications were using the default fonts
from nixpkgs instead of the fonts specified in the system configuration.
Notably, this led to the use of "TeX Gyre Heros" for body text, which
made distinguishing between i/I/l problematic at smaller font sizes.
2023-06-17 20:58:28 -04:00
Donovan Glover
692093da7d
meta: Flatten packages directory
2023-06-17 20:55:32 -04:00
Donovan Glover
fb2acae89a
specializations: Add plasma
...
This *works*, and the best part is I didn't have to do *anything* (besides
write this configuration file, that is).
Thanks to NixOS, it is possible to have GNOME, Plasma, Hyprland, and
whatever else you want installed on the same computer without those
desktop environments conflicting with each other. This configuration is
done in a fully reproducible and declarative setup with minimal code,
without having to modify any external files or run any imperative
commands.
2023-06-17 19:11:27 -04:00
Donovan Glover
f9fdac4925
fix(neovim): Only import fcitx-vim if fcitx5 enabled
...
This fixes an issue where fcitx-vim would error on systems without
fcitx5 enabled.
2023-06-17 12:30:30 -04:00
Donovan Glover
a725e0c2da
meta: Add gnome specialization
...
This makes it possible to boot into either Hyprland (the default) or
GNOME. Having separate configurations implemented in combination with
home-manager and impermanence guarantees that desktop environments don't
conflict withe each other, so this could also be used to implement a
Plasma specialization in the future.
2023-06-17 12:17:51 -04:00
Donovan Glover
18084be856
fix(swaylock): Add missing pkgs attribute
2023-06-17 11:20:26 -04:00
Donovan Glover
9a71c94b8a
fix(home): Add missing import
2023-06-17 11:18:58 -04:00
Donovan Glover
b26702d052
meta: Use host network inside vms
...
This enables VMs built with nixos-rebuild build-vm to use the internet
of the host.
2023-06-17 11:17:05 -04:00
Donovan Glover
ebd96d805e
htop: Use better settings for NixOS
...
Although many people have tried to make more modern top-like programs,
my favorite is still htop *by far*. NixOS includes htop-vim in its
official repositories, which is great, and this change removes the
/nix/store prefixes from all the processes, making htop overall much
easier to read and navigate.
2023-06-17 10:51:11 -04:00
Donovan Glover
f9a851cda2
meta: Add hyprland-specific setup to hyprland module
2023-06-17 09:42:53 -04:00
Donovan Glover
0e6ed0aa93
meta: Add back gnome module
...
Possibly useful for setting up computers with GNOME. The main advantage
GNOME has is the ability to have a consistent environment in both X11
and Wayland, which is useful to test whether or not something only works
in X11.
2023-06-17 09:19:07 -04:00
Donovan Glover
6b496fb529
modules: Add greetd
2023-06-17 02:43:26 -04:00
Donovan Glover
e00a88bfea
nix: Continue home separation
2023-06-16 23:00:15 -04:00
Donovan Glover
a7102b5b67
fish: Move user config to ./home
2023-06-16 20:17:51 -04:00
Donovan Glover
ef109a9472
swaylock: Move to ./home
2023-06-16 20:16:19 -04:00
Donovan Glover
c0966633d8
librewolf: Move to ./home
2023-06-16 20:15:45 -04:00
Donovan Glover
79003388c2
starship: Separate from fish
2023-06-16 20:13:32 -04:00
Donovan Glover
2dd6a9f5c3
fcitx: Move to ./home
2023-06-16 20:09:34 -04:00
Donovan Glover
3e6f8e6563
hyprland: Move home-specific parts to ./home
...
Note that the modules are separated more to make it easier to use parts
of the graphical configuration in NixOS containers.
2023-06-16 20:02:45 -04:00
Donovan Glover
da93580ccf
containers(wine): Use Japanese locale
...
Necessary for many applications to work properly.
2023-06-16 14:24:47 -04:00
Donovan Glover
89361952a8
containers(wine): Passthrough /dev/dri
...
Enables the wine container to have native graphics performance on the
host.
2023-06-16 14:23:53 -04:00
Donovan Glover
62feee858b
containers(wine): Implement impermanence
...
Useful to avoid certain things working due to a certain state, then
forgetting what was changed over time.
2023-06-16 14:21:24 -04:00
Donovan Glover
aad7424764
containers(wine): Enable pipewire
...
Seems to fix an issue where audio could randomly stop working when
closing applications and opening new ones.
2023-06-16 14:20:30 -04:00
Donovan Glover
47a8763fc9
Revert "neovim(nvim-tree): Highlight default.nix"
...
This actually makes the default.nix stand out a bit *too* much.
2023-06-16 14:18:55 -04:00
Donovan Glover
b105f87a13
nix-gaming: Use cachix
...
This avoids having to wait 40 minutes for wine to compile every time the
system is updated.
2023-06-16 14:15:37 -04:00
Donovan Glover
a179de4afa
containers(gui): Add libreoffice
...
Unfortunately, some files may require the use of document editing
software like libreoffice. Fortunately, systemd-nspawn containers enable
us to ensure that these documents do not have access to the internet.
2023-06-16 14:14:18 -04:00
Donovan Glover
6c45d79f1c
containers: Fix module imports
2023-06-16 14:05:23 -04:00
Donovan Glover
374a0a2d14
meta: Flatten modules directory
2023-06-16 14:03:09 -04:00
Donovan Glover
32fc0d4be5
chore: Update flake inputs
2023-06-16 13:58:48 -04:00
Donovan Glover
c23655ad39
fish: Add target to tree ignore
...
This prevents the directory listing from becoming abnormally large with
rust projects.
2023-06-16 13:37:54 -04:00
Donovan Glover
b12e1598c9
thunar: Add volman
...
This should prevent errors from popping up in the terminal when mounting
disks.
2023-06-16 13:19:46 -04:00
Donovan Glover
036ec4a733
containers(dev): Update module paths
2023-06-16 13:15:44 -04:00
Donovan Glover
ce727de65b
neovim(nvim-tree): Highlight default.nix
2023-06-16 12:53:18 -04:00
Donovan Glover
338bf19784
meta: Flatten overlays directory
2023-06-16 12:47:36 -04:00
Donovan Glover
7b12a778f8
fcitx5: Inline config
2023-06-16 12:28:10 -04:00
Donovan Glover
877ce570bf
meta: Move home modules up one directory
...
This is possible since each home-manager module is now its own
self-contained nix file.
2023-06-16 12:13:26 -04:00
Donovan Glover
ac7fb96c80
joshuto: Inline external scripts
2023-06-16 11:53:12 -04:00
Donovan Glover
2aa3550313
chore: Replace tabs with spaces
2023-06-16 11:42:36 -04:00
Donovan Glover
40e08b4821
joshuto: Nixify mimetypes
2023-06-16 11:41:34 -04:00
Donovan Glover
f8765f25e2
joshuto: Migrate keymap to nix
2023-06-16 10:22:47 -04:00
Donovan Glover
b270bd3662
joshuto: Migrate theme to nix
2023-06-16 10:07:05 -04:00
Donovan Glover
33fe40f1bb
joshuto: Begin migration to home-manager module
2023-06-16 10:01:42 -04:00
Donovan Glover
9841ad09c6
ncmpcpp: Nixify on-song-change.sh
2023-06-16 09:55:50 -04:00
Donovan Glover
bbf1b1f030
rofi: Nixify rasi theme
2023-06-16 09:40:57 -04:00