Commit Graph

1723 Commits

Author SHA1 Message Date
Donovan Glover
ef0796dc42
nix: Add repl-flake to experimental-features
This enables us to browse all the variables in a system configuration
based on nix flakes with `nix repl .`
2023-06-05 16:11:58 -04:00
Donovan Glover
79adca57ef
packages: Add hyprland-autorename-workspaces
Note that the behavior of 1.0.0 is different than older versions,
however it doesn't appear to randomly stop working like before.
2023-06-05 14:57:04 -04:00
Donovan Glover
de11edb07c
flake.nix: Remove unused argument 2023-06-05 13:33:08 -04:00
Donovan Glover
814058fc13
nix: Add missing hardware-configuration.nix 2023-06-05 13:09:51 -04:00
Donovan Glover
6d1861e3e7
nix: Remove duplicate option 2023-06-05 13:04:20 -04:00
Donovan Glover
d254910993
nix: Remove old imports 2023-06-05 13:03:38 -04:00
Donovan Glover
57856917aa
nix: Move desktop modules to modules
This concludes the unification of modules. Future work could include
combining modules that are unlikely to be used separately.
2023-06-05 12:52:32 -04:00
Donovan Glover
f00d3538ef
nix: Rename variables file to variables.nix
No need for an "examples" directory.
2023-06-05 12:45:44 -04:00
Donovan Glover
89c9727de6
hyprland: Use the previous background by default
If no background is set, then making the background a solid color could
be ideal.
2023-06-05 12:42:12 -04:00
Donovan Glover
dc84c859e5
nix: Use naming convention for hardware-configuration
Although I could just integrate this directly in configuration.nix since
everything is a module, having a separate hardware-configuration.nix
makes it easier to integrate with other devices that may output
different configurations.
2023-06-05 12:38:17 -04:00
Donovan Glover
5fb6b65d24
nix: Merge host modules 2023-06-05 12:34:23 -04:00
Donovan Glover
757902868f
nix: Merge dev with common 2023-06-05 12:16:21 -04:00
Donovan Glover
30ccf622f7
nix: Merge user module 2023-06-05 12:12:12 -04:00
Donovan Glover
d97aa7fa1e
nix: Continue simplifying file structure 2023-06-05 12:11:07 -04:00
Donovan Glover
84af6079e4
nix: Abstract logic outside of flake
Now flake.nix does *not* need to be edited when adjusting the
configuration unless actual changes need to be done to the inputs.
2023-06-05 12:00:18 -04:00
Donovan Glover
343076f942
meta: Move terminal files to modules
Since all of these files do roughly the same thing (that is, configure
the system in a specific way that a separate file seems necessary), this
should reduce the overall complexity of the project tree.
2023-06-05 11:44:37 -04:00
Donovan Glover
1ad4e2d4af
meta: Rename applications to modules
This is my attempt at putting all modules in one directory to avoid
having to remember whether a module was a part of applications/,
desktop/, or terminal/.
2023-06-05 11:37:06 -04:00
Donovan Glover
de1fec4c76
hyprland: Don't use hyprland opacity with kitty
This avoids duplicating the opacity of kitty and hyprland if, for
example, we wanted global translucency.
2023-06-05 10:11:26 -04:00
Donovan Glover
f24734817f
udisks2: Mount on media
This makes sense since the system is a single user one.
2023-06-05 09:58:35 -04:00
Donovan Glover
199743d852
chore: Spacing 2023-06-04 21:27:03 -04:00
Donovan Glover
8c9ff827a2
virtualization: Restrict network
Note that I haven't figured out how to properly configure the networking
for the VM yet.
2023-06-04 21:19:45 -04:00
Donovan Glover
48b69008fe
Add mtr
Useful for seeing the connections one makes when using the internet.
2023-06-04 21:17:07 -04:00
Donovan Glover
932ad175ff
Fix typo 2023-06-04 21:16:26 -04:00
Donovan Glover
a5810f24d8
neovim: Show relative path in statusline 2023-06-04 21:10:18 -04:00
Donovan Glover
62515fc1f2
hyprland: Decrease blur size 2023-06-04 21:09:41 -04:00
Donovan Glover
d582079a91
Update README 2023-06-04 21:05:49 -04:00
Donovan Glover
b2cfc66516
meta: Don't autostart containers with NixOS
This fixes an issue where containers caused the boot process to slow
down, especially those that relied on mounting directories only
available once a graphical session has already started.
2023-06-04 17:19:59 -04:00
Donovan Glover
cdda9bcd27
meta: Don't wait for a network connection
This makes NixOS boot *extremely fast* since network-manager is no
longer waiting 17 seconds for a network connection.
2023-06-04 17:16:43 -04:00
Donovan Glover
6542ff2abb
systemd-boot: Boot the default entry by default
Since I never use previous generations, booting the newest entry by
default seems ideal. In the case that something is broken, it should be
possible to return to the menu by pressing space at boot.
2023-06-04 16:37:01 -04:00
Donovan Glover
734c2c2db2
systemd-boot: Disable editor
Since I don't use this feature, disabling it seems to be the play.
2023-06-04 16:33:17 -04:00
Donovan Glover
be40f75da7
waybar: Remove window title
The window title being rotated was inconvenient, and was ultimately
un-needed since there are other ways to show the focused window.
2023-06-04 15:41:27 -04:00
Donovan Glover
f67a664a76
meta: Use tmpfs for /tmp
This should speed up some things.
2023-06-04 12:37:05 -04:00
Donovan Glover
0bf134297b
virtualization: Fix cursor in hyprland
This commit fixes the cursor being upside down and inaccurate in
Hyprland. Note that show-cursor=off is used to avoid the duplicate
cursor issue described in https://github.com/swaywm/sway/issues/6581

Unlike GNOME, Hyprland does not automatically change resolution on
window change, so fullscreen is enabled by default to ensure a certain
size. In the future, a script could be used to adjust the resolution as
needed.

Related: https://github.com/hyprwm/Hyprland/issues/1056
2023-06-04 11:45:04 -04:00
Donovan Glover
91be6afd3f
virtualization: Remove GNOME
I originally used GNOME for virtualization because the cursor in
Hyprland was upside down and its position was offset by a noticeable
amount. However, now that I've figured out how to make Hyprland work
under QEMU with an accurate cursor, this is no longer needed.
2023-06-04 11:40:41 -04:00
Donovan Glover
84c7cb77b7
pkgs: Add waycorner
This works, and is a result of the work done by NotAShelf.
2023-06-04 10:26:54 -04:00
Donovan Glover
4cdf7d0e04
nix: Simplify
This commit removes some premature modularization to make it easier to
see and manipulate everything at once.
2023-06-04 09:35:40 -04:00
Donovan Glover
f55b5ae2db
meta: Use separate packages directory
This makes it easier to see all the custom packages in the repository
and reduces the amount of nested directories.
2023-06-04 08:57:01 -04:00
Donovan Glover
711791fcc5
meta: Remove super key functionality
This breaks virtualized desktop environments that depend on the super
key quite badly, so it's best to simply use an alternative modifier
instead.
2023-06-04 08:11:34 -04:00
Donovan Glover
f5e0505f93
Remove gnome scripts
Although this was useful at some point to make GNOME usable, a virtual
GNOME instance works quite fine without this script.

Whether I even need GNOME virtualization is debatable due to how much I
was able to achieve with containers. Benefits of containers include not
having to start up a virtual machine, easy sharing of files with the
host, and having the window manager manage all windows.
2023-06-03 20:50:23 -04:00
Donovan Glover
993cc7f649
hyprland: Fix winecfg resizing 2023-06-03 20:34:55 -04:00
Donovan Glover
bfc1ed42c6
chore: Run nixfmt 2023-06-03 20:32:06 -04:00
Donovan Glover
fb6d5828cf
hyprland: Animate manual resizes 2023-06-03 19:55:26 -04:00
Donovan Glover
d0f2f70d29
waybar: Fix calendar for 0.9.18 2023-06-03 19:42:06 -04:00
Donovan Glover
8a80c37aa8
Make wine container support display output
This *works*, and I was surprised that I needed to change little to
nothing at all.
2023-06-03 15:36:38 -04:00
Donovan Glover
6985903631
Add base wine container
I figured out how to get wine working on Nix, and it works surprisingly
well, however I'd like to avoid programs from writing wherever they want
and don't want to rely on a solution like firejail.

As it turns out, systemd-nspawn containers enable us to run wine applications
in a reasonably private container without access to neither the files of the
host nor its internet connection.
2023-06-03 15:29:50 -04:00
Donovan Glover
a22b9355dd
nix: Use variables
This should make things easier to change and maintain over time, with
the ultimate goal of making it easy to provide example configurations
that can be expanded upon.
2023-06-03 13:51:43 -04:00
Donovan Glover
d400ad5986
neovim: Don't save folds by default
It may be better to open files normally and have the option to manually
save/load views for predictability.
2023-06-03 13:13:07 -04:00
Donovan Glover
ed05522acd
neovim: Add fold support
This should make dealing with large files slightly easier.
2023-06-03 13:05:21 -04:00
Donovan Glover
3456ad98d4
qutebrowser: Use a blank start/default page
Might change this in the future.
2023-06-03 12:19:28 -04:00
Donovan Glover
aaa0fe82cd
mullvad: Add port forwarding example
This was my working solution at forwarding ports from a container to the
host. Although mullvad no longer supports port forwarding, this example
can still be used to forward e.g. web services from containers to the
host.
2023-06-03 11:50:21 -04:00