Commit Graph

72 Commits

Author SHA1 Message Date
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
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
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
f9a851cda2
meta: Add hyprland-specific setup to hyprland module 2023-06-17 09:42:53 -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
2dd6a9f5c3
fcitx: Move to ./home 2023-06-16 20:09:34 -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
b4242e0f55
chore: Continue home-manager separation 2023-06-16 08:19:26 -04:00
Donovan Glover
181ea09092
meta: Use separate directory for home-manager modules 2023-06-16 08:13:34 -04:00
Donovan Glover
080a491b20
gamemode: Specify location used 2023-06-14 08:41:14 -04:00
Donovan Glover
1fa52fcbbc
Revert "meta: Disable vfr at the gamemode level"
This completely broke gamemode notifications. Luckily we're using NixOS
so a revert was as easy as `git revert` and `nixos-rebuild`.
2023-06-13 11:14:46 -04:00
Donovan Glover
3df3aa19f9
meta: Disable vfr at the gamemode level
This fixes an issue where other applications would perform *worse* with
vfr disabled, notably srb2.
2023-06-13 10:45:30 -04:00
Donovan Glover
b856e26b3a
nix: Formatting 2023-06-13 09:06:48 -04:00
Donovan Glover
b6ec715154
Update main.nix 2023-06-12 18:35:19 -04:00
Donovan Glover
44057b2579
meta: Move cli tools to fish module
This results in a consistent environment when using any given shell.
Note that adding a package to $PATH instead of just referencing it where
it's needed is useful since otherwise the man pages are inaccessible.
2023-06-12 17:00:26 -04:00
Donovan Glover
f5d7fba157
meta: Move dev tools to neovim module
This fixes some neovim plugins throwing errors due to missing things
such as language servers.

Note that although it *would* be possible to abstract this functionality
into a variety of imports, options, or other abstractions, including
everything at once should reduce complexity since I am not interested in
maintaining different states of configuration. In other words, either
everything works, or something doesn't work and then everything works.
2023-06-12 16:54:12 -04:00
Donovan Glover
cbdd5998ec
meta: Add dev container
Note that this container uses home-manager from the Nix flake on the
host system, which is pretty cool.

Currently modules in this repository *don't* differentiate between
home-manager and nixos, but this could be changed in the future to
support e.g. my home-manager neovim config on a non-nixos system.
2023-06-12 14:54:40 -04:00
Donovan Glover
a2886940f4
nix: Move hosts to src
Might change this later once home-manager and nixos modules are
separated.
2023-06-12 13:26:54 -04:00
Donovan Glover
d06d47f76a
nix: Simplify 2023-06-11 09:55:44 -04:00
Donovan Glover
43a07cc8d9
treewide: Switch from alejandra to nixpkgs-fmt
Neither nixfmt nor alejandra support the "standard" way to syntax
highlight multi-line strings in Nix, so nixpkgs-fmt is the only viable
solution.
2023-06-11 09:37:27 -04:00
Donovan Glover
04e0c8d038
Update packages 2023-06-11 09:22:32 -04:00
Donovan Glover
feff455ddd
nix: Remove nixpkgs-master
Not needed anymore since waycorner and nwg-dock-hyprland are in
nixos-unstable.
2023-06-10 10:41:17 -04:00
Donovan Glover
1ab27e7fe7
variables: Add defaultBrowser 2023-06-09 16:12:41 -04:00
Donovan Glover
48cb1ea542
packages: Use srb2 from fork 2023-06-08 18:30:38 -04:00
Donovan Glover
132e985a52
packages: Use waycorner from nixpkgs/master 2023-06-08 18:27:10 -04:00
Donovan Glover
0bb8eca867
packages: Use hyprland-autoname-workspaces from fork 2023-06-08 18:19:02 -04:00
Donovan Glover
47b5ac0d7d
nix: Remove logic from modules/default.nix
For simplicity, the first-level default.nix should be used to import all
the other modules.
2023-06-08 17:23:22 -04:00
Donovan Glover
a5941a1701
meta: Use crystal-flake for crystal development
The current crystal binary in nixpkgs complains about not finding pcre
when you try to compile anything with it, so crystal-flake is necessary
to have a working crystal environment under NixOS.

crystal-flake additionally packages crystalline, which is nice since no
one has been able to successfully create a pull request for nixpkgs yet.

Reference: https://github.com/NixOS/nixpkgs/issues/129002
2023-06-08 15:13:46 -04:00
Donovan Glover
07c0377ffa
packages: Add nixpkgs-fmt
Useful for contributing to nixpkgs.
2023-06-07 16:32:37 -04:00
Donovan Glover
d4f0a45da3
gamemode: Customize 2023-06-07 12:26:12 -04:00
Donovan Glover
433bd5b01e
meta: Remove nixos-generators
After waiting 41 minutes to produce an output iso of 6.9 GB, the iso
itself failed to boot when trying to start it. Rather than dealing with
this excruciatingly long build process, I'd much rather use nixos-rebuild
build-vm.
2023-06-06 17:03:34 -04:00
Donovan Glover
4d9a6b6877
variables: Add username 2023-06-06 10:50:42 -04:00
Donovan Glover
393e2cb241
nix: Use nix-daemon to optimize store
This *shouldn't* have a negative impact on performance, and avoids
having to remember to optimize the store periodically.
2023-06-06 08:16:27 -04:00
Donovan Glover
41571e4354
variables: Add locale 2023-06-06 08:14:52 -04:00
Donovan Glover
198ed44737
src: Add stateVersion to variables 2023-06-06 05:15:41 -04:00
Donovan Glover
7e38c259fa
meta: Replace joshuto package with overlay
This actually took *forever*, but now that I know how to write nixpkgs
overlays, any future ones I write should be relatively straight-forward.
2023-06-05 23:07:36 -04:00
Donovan Glover
a0dae2344d
nix: Use hosts directory
This may be useful if I want to try NixOS on another host in the future.
2023-06-05 21:23:28 -04:00
Donovan Glover
5cd582cdac
meta: Use src directory
There's something cool about having a separate main.nix for your NixOS
configuration.
2023-06-05 21:16:20 -04:00
Donovan Glover
89b682aed6
Remove theme.cr in favor of Mica
This commit removes theme.cr in favor of Mica, a universal way to change
color schemes. This lets me better create abstractions for the scheme
changing functionality, making it easier to both add and apply color
schemes with different combinations of software.
2018-01-30 00:25:47 -05:00
Donovan Glover
a42e4ad4d0
Major clean up overall
This commit:

- Moves the rest of the packages from packages.sh to PKGBUILD
- Updates the README to include upstream packages instead of relying on
  our own local versions of them
- Removes the rest of the legacy install scripts
- Adds some missing config options and other useful commands to the
  README and help files
- Removes the local copy of launch-cmd in favor of upstream instead
- Moves a variety of smaller help files to other.md
- Adds fish information to other.md
- Moves automation information to install-guide.sh
- Removes the local copy of Arch Silence in favor of upstream instead
- Updates theme_helper.cr before eventually removing it in favor of Mica
2018-01-28 23:57:11 -05:00
Donovan Glover
c0b2905abf
Remove pass
As much as I'd like to make a password manager, putting all the
functionality in this repository isn't going to work. With that being
said, I may or may not make an improved version of "pass" in the future.
Stay tuned!
2018-01-26 23:55:52 -05:00
Donovan Glover
b5fd0980bd
Remove maid
As much as maid was fun to write (and use!), having two separate files
for each of your dotfiles is a fundamentally flawed design. Using GNU
Stow for dotfiles is a much better way to get things done since the
files are linked: updating ~/.vimrc will automatically update the .vimrc
in your dotfiles directory, and vice versa.

Additionally, GNU Stow makes it easy to pick and choose the dotfiles
that you want to use. If you don't want to use a certain configuration
anymore, it's easy to "stow -D <config>" instead of having to manually
go into the .config directory and remove the offending files.
2018-01-25 23:38:55 -05:00
Donovan Glover
ca6d1abdd4
Remove trucolor
As much as having true color support in the terminal is cool, it doesn't
really make sense for primary output. Not all terminals support true
color and ttys don't exactly handle true color well either.
2018-01-22 23:56:03 -05:00
Donovan Glover
6c1e088ff8
Remove trufetch
There are better programs out there like Neofetch that get the job done
and do much more. I'd rather rely on one of those programs here instead.
2018-01-20 23:54:15 -05:00
Donovan Glover
7d70e11f59
Update trufetch before removing it 2018-01-20 23:51:32 -05:00
Donovan Glover
bb7db5210d
Add theme preview support 2017-12-31 21:34:29 -05:00
Donovan Glover
1763b9fe22
Remove kemal and other server dependencies 2017-12-29 23:34:20 -05:00
Donovan Glover
a92dec271a
Add zathura theme support 2017-12-28 16:54:37 -05:00
Donovan Glover
6bcec7520e
Add 'maid add' functionality 2017-12-27 22:54:23 -05:00