Commit Graph

641 Commits

Author SHA1 Message Date
d7f4e3fccc containers: fix internet not working inside container
The wg-mullvad interface was at some point renamed to wg0-mullvad.

Note that in the future this method can be used to prevent certain
containers from accessing the internet in a similar way.
2024-10-11 16:55:44 -04:00
a7fad6beb9 containers: remove autostart with systemd.tmpfiles.rules
At some point this started causing the /run/user/1000 directory to be
deleted when changing container configurations, which was definitely not
ideal.

An alternative approach will have to be taken if we want the wine
container to auto-start on boot.
2024-10-11 16:46:45 -04:00
043e901711 containers: add wordpress
This is the start of my fun attempt at using NixOS containers for web
services as a Docker replacement.

After spending some time on other servers I realized that I don't
actually *need* my dotfiles on those servers, so it becomes
significantly faster to build these containers without worrying about
home-manager and command-line programs I use on the host.

Main advantages include web service configuration with Nix instead of
Docker. Disadvantages include increased complexity for anything that
isn't already maintained by others in nixpkgs.
2024-10-11 16:39:11 -04:00
0238abd1e5 containers: simplify config 2024-10-11 15:13:08 -04:00
11c555d2c5 containers: merge default.nix with wine.nix
It turns out that I shouldn't actually need graphical container support
for most containers, which might also improve build times with multiple
containers.
2024-10-11 12:28:05 -04:00
1aa3163acb system(nix): keep going during builds
Prevents an issue where previously it'd be possible for a nixos-rebuild
to stop during the middle of compilation during a build failure, which
is problematic for longer builds.
2024-10-11 11:57:15 -04:00
140e61b54b system: fix systemd-boot not applying for non-aarch64 2024-10-11 11:55:42 -04:00
8e3a8568e3 system: only emulate aarch64-linux if x86_64-linux 2024-10-10 14:24:07 -04:00
60401813e6 meta: prefer isPhone over mkForce 2024-10-10 14:21:42 -04:00
e663c397a7 system: use latest nix version 2024-10-10 08:17:27 -04:00
e7abdbe912 chore: update package list
Note that deno was removed since it still fails to handle things like
Next.js with the 2.0 release candidate and I'd rather not have to deal
with all the other issues I faced while trying to use it with React.
2024-10-06 08:17:02 -04:00
c23d476f78 meta: Move fonts out of desktop 2024-09-10 12:54:17 -04:00
065c987dff meta: Move stylix out of desktop
Makes it easier to use stylix without depending on other parts of the
desktop. Mainly useful for using stylix with the phone module without
including desktop-related stuff.
2024-09-10 12:53:32 -04:00
5465e572f4 nix: Downgrade from nix 2.24.4 to 2.22.3
https://github.com/NixOS/nix/security/advisories/GHSA-h4vv-h3jq-v493
2024-09-10 11:39:47 -04:00
4495459229 meta: Move sakaya to containers module 2024-09-09 23:08:01 -04:00
7393e7c0d6 chore: Simplify
- Removed unused conditional
- Changed `attrValues` to `with` where possible
2024-09-09 13:25:18 -04:00
fc11acbe79 meta: Move phone config to separate module
Makes it possible to enable phone support for different devices in the
future.

Note that programs.man.generateCaches in home-manager is handled at the
system level to avoid having to later override it with mkForce.
2024-09-09 13:23:41 -04:00
5790f1bbde system: Determine isPhone from programs.calls.enable
Removes the redundant phone option and enables the usage of isPhone in
other modules besides system without having to import it.
2024-09-09 11:52:08 -04:00
21cd3e96da meta(home-manager): Remove dependency on extraSpecialArgs
Makes copy/pasting easier and removes non-standard arguments in
home-manager modules.
2024-09-09 10:30:00 -04:00
4b5d240ebd meta(home-manager): Determine isPhone from nixosConfig
Simplifies things a bit since we no longer depend on a phone variable,
thus making the individual files easier to copy/paste.
2024-09-08 23:14:43 -04:00
d538e2c8fa desktop: Remove unused options
Since the goal of this nix-config is to make a consistent environment
across any number of systems, having options goes against this.

If these configuration values need to be changed, they should affect all
systems using the config by default.
2024-09-08 11:54:08 -04:00
04c3941ed3 chore: Improve formatting 2024-09-05 12:11:43 -04:00
1b71076ca1 system: Disable root for containers by default
Notably removes the ability for non-containers to easily have root
disabled, although this shouldn't be wanted in most cases.
2024-09-02 12:18:39 -04:00
9d15ab2f68 chore: Fix formatting 2024-09-01 19:44:17 -04:00
f113c763ea treewide: Drop remaining usage of inherit (pkgs) 2024-09-01 18:29:27 -04:00
2a3a3db055 containers: Remove graphical option
It seems like everything works fine without this, so this wasn't
(or is no longer) necessary.
2024-09-01 16:33:41 -04:00
64c5b9d38d meta: Move dwm config to home-manager module
This works since the NixOS module wasn't doing anything that we were
using anyway.
2024-09-01 16:14:21 -04:00
665991ef2b dwm: Make print screen key work 2024-09-01 15:59:09 -04:00
d634e4b69c shell: Add back nix-init
This was broken in a previous nixos-unstable release.
2024-09-01 15:20:20 -04:00
50f8c3eb00 meta: Replace desktop.container with config.boot.isContainer
No need to say that we're a container when NixOS already handles this.
2024-09-01 14:33:04 -04:00
0b44a17ca9 chore: Replace callPackage with flake package
Removes the possibility of ../paths breaking.
2024-08-30 15:19:15 -04:00
b4adc570d0 meta: Replace firefox-addons with packages in flake
This simplifies things a bit since we're no longer relying on another
input and can add extensions not in the firefox-addons repository.
2024-08-30 13:34:00 -04:00
d261262277 meta: Inline dwm config
Trying to override the values with callPackage here seemingly
didn't work, so inlining is necessary to use the color values from
`config`.
2024-08-29 20:12:23 -04:00
b3c8f55c69 meta: Merge dwm specialization with desktop
Long-term this could be an optional separate module but for now having
dwm as a backup to Hyprland is reassuring.
2024-08-29 01:40:10 -04:00
6116425dea meta: Move stylix-background to separate package
Long-term this won't be necessary once backgrounds become optional in
stylix.
2024-08-29 01:24:01 -04:00
1901a33e87 desktop: Remove useless home-manager import
This didn't actually do anything since we don't make use of the
home-manager import inside the module.
2024-08-27 17:39:11 -04:00
a90dfb5a6f desktop: Only include sakaya if x86_64-linux 2024-08-27 14:05:34 -04:00
83a82ab655 chore: Expand single item lists and attribute sets
These aren't collapsed by nix fmt anymore.
2024-08-27 13:05:29 -04:00
be5f0a6183 chore: Run nix fmt 2024-08-26 21:32:55 -04:00
c62a0694dd shell: Replace color scripts with asciiquarium
asciiquarium is much cooler in this case. Note that sanctity is kept
since it's useful for debugging colors.
2024-08-26 14:05:50 -04:00
f7cd666a30 shell: Drop old sessionVariables
- GIT_DISCOVERY_ACROSS_FILESYSTEM shouldn't be needed anymore and was
  likely a skill issue in the past.
- NODE_OPTIONS should be set per-project instead of globally.
- GATSBY_TELEMETRY_DISABLED should also be set per-project, although the
  framework seems to be in standby mode currently.
2024-08-26 13:58:24 -04:00
75029f6d1d chore: Prefer with pkgs; over attrValues
`with pkgs;` is okay to use as long as there isn't an "escaping with".
2024-08-25 21:29:37 -04:00
dd5eef5b77 virtualization: Drop WLR_NO_HARDWARE_CURSORS
Doesn't seem to be needed anymore for Hyprland.
2024-08-25 13:28:20 -04:00
31de8f1085 specializations: Drop gnome and plasma
I added specializations over a year ago when I was still new to NixOS
and trying out some of the many different features unique to it. These
days I don't need much more than a terminal and a web browser, and I
haven't used GNOME or Plasma in over a year at this point.

Nowadays everything I need from a computer I can accomplish with the
terminal. Nixpkgs trained me to dig deep into source code to figure out
how to do things, and using a PinePhone significantly improved my
awareness of how Linux interacts with hardware and how to configure it.

One of the biggest motivators for dropping these environments is that I
can't keep up with the changes that are made to GNOME and Plasma.
Hyprland has served my needs well and feels more stable since there
isn't a user interface that's constantly changing.
2024-08-24 21:28:11 -04:00
c00ebbd691 meta: Prefer home-manager module over env for bat
This works now that stylix switched to using the configuration file
instead of the environment variable.
2024-08-24 12:24:43 -04:00
aac5e7f999 meta: Prefer home-manager module over env for fzf 2024-08-24 12:16:36 -04:00
2b8fc665f6 meta: Prefer home-manager module over alias for ripgrep
Aliases should be avoided since they are only relevant to one shell.
2024-08-24 12:15:42 -04:00
1defdcf785 stylix: Inline base16 scheme 2024-08-23 23:28:33 -04:00
2b8602125f system: Set default phone password to 1234 2024-08-18 16:59:55 -04:00
40aca5aff6 system: Don't inherit firefox-addons directly
Fixes an issue where firefox-addons wasn't available in the example
config.
2024-08-16 18:58:44 -04:00