Commit Graph

41 Commits

Author SHA1 Message Date
Donovan Glover
47da22c951
modules: Add tlp
Note that this may be better as a host-specific module.
2023-05-16 17:54:20 -04:00
Donovan Glover
a9703aad9a
Continue moving fish config to fish module 2023-05-16 17:18:48 -04:00
Donovan Glover
8c027300e6
Modularize htop and dual-function-keys 2023-05-16 17:18:06 -04:00
Donovan Glover
19dda06920
Abstract stylix and fonts into modules 2023-05-16 14:52:59 -04:00
Donovan Glover
a17ba29926
Abstract starship and fish into separate modules
This should make things easier to reason about and more modular in
general.
2023-05-16 12:33:53 -04:00
Donovan Glover
ae8fdd8ac7
pkgs: Add srb2 package
This is necessary since the current srb2 package in nixpkgs is outdated.

Based on https://github.com/NixOS/nixpkgs/pull/187320
2023-05-16 10:58:55 -04:00
Donovan Glover
27d70fc177
waybar: Use font-awesome for icons 2023-05-13 16:29:38 -04:00
Donovan Glover
1777b976e9
meta: Remove declarative containers
Because of how easy it is to create and run virtual machines in NixOS,
the use of containers is not necessary. Virtual machines additionally
outperform containers when it comes to graphical tasks, and allow for
the usage of a variety of GUI applications separate from the host.
2023-05-13 16:15:49 -04:00
Donovan Glover
c57b94aade
qemu: Switch from gtk to sdl
This prevents any sort of menu bars from showing, which were unneeded,
and lets us take full advantage of the screen estate for the VM.
2023-05-13 15:20:27 -04:00
Donovan Glover
f6aefe5654
Use GNOME for VMs
This fixes an issue where Hyprland would suffer from the upside-down
cursor bug in QEMU/KVM due to depending on wl-roots.
2023-05-12 23:02:49 -04:00
Donovan Glover
75b41cfce1
Remove old FZF_DEFAULT_COMMAND
This isn't needed anymore since we no longer deal with hidden
directories by default.
2023-05-12 16:08:56 -04:00
Donovan Glover
ceebe55482
Add xfce.exo package
This makes "Open Terminal Here" work in Thunar.
2023-05-12 12:18:17 -04:00
Donovan Glover
5c180d227d
Add color scripts 2023-05-12 01:19:03 -04:00
Donovan Glover
629c0d9881
Update package list 2023-05-12 00:05:31 -04:00
Donovan Glover
ad5f9aa991
Remove hosts directory for now
A hosts directory may be useful later.
2023-05-11 19:31:35 -04:00
Donovan Glover
95ccadd612
Run nixfmt 2023-05-11 19:07:04 -04:00
Donovan Glover
6794f7be19
Decrease systemd timeout
Unfortunately, the system occasionally gets stuck at the dreaded "stop
job" message at times. I haven't delved into figuring out the cause yet,
but this change ensures that shutdowns occur in a timely manner.
2023-05-11 19:05:22 -04:00
Donovan Glover
bae89090b0
Update packages 2023-05-11 19:04:47 -04:00
Donovan Glover
19a42793b5
Remove wayland support from containers
This was cute, but I really don't want to worry about the implications
of software sharing the same Wayland socket as the host.
2023-05-11 19:03:07 -04:00
Donovan Glover
7eaa501eac
Use htop-vim
Note that git is removed here since it's available in home-manager.
2023-05-11 17:31:50 -04:00
Donovan Glover
ca38df812f
Add fcitx5-mozc 2023-05-11 17:22:53 -04:00
Donovan Glover
0038165390
Nixify fish config
Note that the home manager module isn't used here since the resulting
config.fish made fish noticeably slower on startup.
2023-05-11 17:19:21 -04:00
Donovan Glover
ab910245b3
Add virtualization settings
This makes the VM beefier and uses virtio so Hyprland works.
2023-05-11 16:40:58 -04:00
Donovan Glover
f3a14515f8
Remove KMSCON support
Unfortunately, KMSCON was extremely buggy and caused a variety of
graphical glitches and random character sequences across a non-trivial
amount of virtual consoles. Because of this, Hyprland as the main
environment will be preferred with a way to emulate a tty-like
appearance.
2023-05-11 14:06:38 -04:00
Donovan Glover
30ffc5cd4e
Add KMSCON support
This change makes it possible to see Japanese and other exotic
characters in the virtual console.
2023-05-11 13:48:16 -04:00
Donovan Glover
eacd7f7392
nix: Various changes
- Changed some packages
- Changed fonts
- Removed autostart from container
2023-05-10 15:26:08 -04:00
Donovan Glover
1e6a35b242
fix: Don't use a display manager
This fixes an issue where a display manager like sddm increases the
complexity of the system.
2023-05-10 15:22:53 -04:00
Donovan Glover
ef97a778aa
fix: Add wallpaper.png
A wallpaper is required for Stylix to work, so I added one with base00
as the background color and the NixOS logo as the foreground image.

Credit for the logo goes to the original author who licensed it under
CC-BY: https://releases.nixos.org/nix-dev/2016-October/021876.html
2023-05-10 13:21:31 -04:00
Donovan Glover
62a75c5800
feat: Add remaining starship config
This change shows text instead of emoji and other symbols that aren't
supported in ttys.
2023-05-10 12:43:34 -04:00
Donovan Glover
077e826020
feat: Add sound support 2023-05-10 12:34:37 -04:00
Donovan Glover
55e3c4a813
feat: Add stylix
Stylix is like a maintained version of pywal but configuration changes
are managed by Nix and Home Manager, thus guaranteeing a certain level
of reproducibility with its declarative nature.
2023-05-10 11:32:47 -04:00
Donovan Glover
053e365978
fix: Clean up fish abbreviations 2023-05-09 22:45:32 -04:00
Donovan Glover
c6d5150c83
feat: Add udiskie and swaylock support 2023-05-09 22:44:16 -04:00
Donovan Glover
4df1d91e19
fix(waybar): Use waybar-hyprland from flake
This fixes an issue where wlr/workspaces is considered experimental in
waybar and thus does not work with the current nixpkgs version on NixOS.

References:
- https://github.com/Alexays/Waybar/issues/1766
- https://github.com/hyprwm/Hyprland/discussions/1729
2023-05-09 22:40:06 -04:00
Donovan Glover
2c9327b039
nix: Use hosts directory
This should make it easier to derive multiple output machines from the
same input flake.nix.
2023-05-09 20:13:37 -04:00
Donovan Glover
7b363920a2
nix: Remove GNOME stuff
Although I could technically make a gnome module and make it really easy
to switch between gnome and hyprland, I'm not really interested in
maintaining that right now.

For example, there was a recent bug in nautilus where deleted files
would not show up as deleted. There was another bug where opening a
terminal would not focus the terminal window. I'd much rather use
hyprland in this case due to the faster release cycle and simpler code
base overall.
2023-05-09 19:30:59 -04:00
Donovan Glover
5e5f64dc80
nix: Add starship config
Similar to fish, there's some relief in knowing that I can declare my
starship settings in Nix and have them accessible from any user on the
machine, even root.
2023-05-08 14:26:00 -04:00
Donovan Glover
c0810fd98e
nix: Add fish abbreviations
I originally wasn't going to mix logic from my dotfiles with NixOS,
however I was unable to simply use my abbreviations after adding
~/.config/fish/config.fish, so I decided to give it a try.

Using Nix to manage fish abbreviations feels nicer than using a
config.fish because I am now easily able to manipulate these
abbreviations with the limitless possibilities of the Nix language, and
with the guarantee that the output is reproducible.
2023-05-08 14:18:41 -04:00
Donovan Glover
3236df33f6
nix: Update configuration.nix
Highlights:

- Added a test container with network configuration and Wayland support
- Added GNOME/Hyprland support with SDDM
- Added Git/Starship/GPG support
- Properly added Neovim support with .enable
- Various package changes
- Made caps lock function as escape on tap, left ctrl on hold
- Print screen functions as right super on hold
2023-05-08 13:56:53 -04:00
Donovan Glover
41b803ec19
nix: Update configuration.nix
home-manager shouldn't be needed here since it's managed by the flake
instead.
2023-05-04 13:19:56 -04:00
Donovan Glover
abd2d1a4cf
meta: Add configuration.nix
These are my first steps towards using Nix and NixOS to declaratively
configure a reasonably good development environment. I am aware that
there are various paradigms that include using home manager and/or
flakes, however I am still exploring with a simple configuration.nix.
2023-05-03 01:26:59 -04:00