Donovan Glover
40090d7ef1
phone: Remove legacy hyprland
...
Unfortunately there are too many bugs for Hyprland on the PinePhone such
as hardware accelerated videos appearing red and convergence in general
being much slower than the phosh counterpart.
2024-06-25 10:55:38 -04:00
Donovan Glover
ce5093aa34
nix: opengl.driSupport32Bit -> graphics.enable32Bit
...
Necessary for the latest nixos-unstable release.
2024-06-25 10:52:27 -04:00
Donovan Glover
e36fcaf2c6
hardware: Drop phone configuration
...
We'll handle this directly in the phone configuration.nix instead since
it's simplified now.
2024-06-24 16:22:08 -04:00
Donovan Glover
a9ba67d449
phone: Continue dropping applications
...
Many of these things I can show in a custom fetch script when opening
the terminal.
2024-06-24 14:36:28 -04:00
Donovan Glover
26c79b093b
system: Use systemd config for phone
...
Should decrease startup times and prevent shutdowns from hanging.
2024-06-23 13:53:21 -04:00
Donovan Glover
abc61e5355
phone: Continue dropping unwanted applications
...
Most of these have a subpar mobile experience.
2024-06-23 13:52:48 -04:00
Donovan Glover
8bfc0ebf36
system: Always exclude gnome-tour
...
Should prevent gnome-tour from showing in phosh.
2024-06-23 09:46:56 -04:00
Donovan Glover
83740051ea
phone: Enable 100% zram
...
Shouldn't break anything. This is mostly a safeguard to ensure that
systemd didn't SIGSEGV and freeze last time due to memory concerns.
2024-06-23 09:45:10 -04:00
Donovan Glover
b2556260df
desktop: Continue removing unwanted mobile applications
...
Most of these applications are poorly designed for mobile,
don't start up at all, or aren't relevant for my use case.
Note that the correct `portfolio` application was actually
`portfolio-filemanager` in nixpkgs, and I removed it due to
the lack of thumbnailing support.
2024-06-21 20:43:05 -04:00
Donovan Glover
31ab36fe78
phone: Add mullvad support by disabling checkReversePath
...
`networking.firewall.checkReversePath` was being set to "loose" from
Mullvad VPN, which was causing an issue with the kernel used by the
PinePhone with Mobile NixOS.
By changing this option to `false`, we get rid of the "This kernel does
not support rpfilter" error, which seems to be inaccurate due to the
result of `sysctl -a | grep \\.rp_filter` on the phone being consistent
with the result on the laptop.
2024-06-21 20:34:09 -04:00
Donovan Glover
e030aa9687
phosh: Enable xwayland support
...
This fixes an issue where some applications would fail to open entirely
at the cost of lower quality graphics.
2024-06-21 18:47:26 -04:00
Donovan Glover
f51e8f8cf7
desktop: Remove unnecessary mobile applications
...
A lot of these applications are cute but I'd never end up using them,
such as a regular expression GUI and other novelties that web
applications accomplish in a more advanced manner.
2024-06-21 05:48:13 -04:00
Donovan Glover
26feb91693
desktop: Test some mobile applications
...
Committing this so I remember which programs I tested when experimenting
with GUI applications with mobile/touch support.
Derived from https://linuxphoneapps.org/packaged-in/nix-unstable/
2024-06-21 05:19:21 -04:00
Donovan Glover
79401e029b
system(nix): Forbid import from derivation
...
Helps prevent issues where we accidentally use an import from derivation
and cause flakes with multiple platforms to fail when running things
like `nix flake check`.
2024-06-20 22:33:59 -04:00
Donovan Glover
9bd004c3a8
nix: Avoid IFD by importing base16 scheme directly
...
This fixes an issue where previously the derivation had to be evaluated
before importing the base16 scheme, thus causing `nix flake check` to
fail when multi-platform support was added.
See: https://github.com/NixOS/nix/issues/4265
2024-06-20 21:58:16 -04:00
Donovan Glover
6b404306bf
meta: Only install texlive on desktop
...
Let's not write papers on the phone.
2024-06-20 13:50:16 -04:00
Donovan Glover
3e5a395dc8
containers: Don't enable on phone
...
Fixes an issue where the build would previously fail.
2024-06-20 13:49:39 -04:00
Donovan Glover
708bec1773
desktop: Add phone-specific applications
...
GNOME Console seems to be more user-friendly for touch compared to
kitty. Not all on-screen keyboards work out of the box with hyprland.
2024-06-20 13:42:54 -04:00
Donovan Glover
de2d3550d0
desktop: Add phosh support
...
This should make it easier to switch between hyprland and phosh.
2024-06-20 13:27:40 -04:00
Donovan Glover
abc5dfee07
desktop: Disable fcitx / udisks / pipewire for phosh
2024-06-20 13:19:32 -04:00
Donovan Glover
a9bebdc5f6
system: Only add phone groups when necessary
2024-06-20 13:18:39 -04:00
Donovan Glover
81cb06fc14
desktop: Don't inherit sakaya on phone
...
sakaya only has support for x86_64-linux.
2024-06-20 12:19:57 -04:00
Donovan Glover
c48a01ae7f
system: Don't generate man cache on mobile
...
Significantly improves build times with aarch64 emulation.
2024-06-20 12:16:03 -04:00
Donovan Glover
700f9aa564
hardware: Add IIO sensor support
...
Doesn't seem to work yet but shouldn't hurt to add for now.
2024-06-20 11:07:31 -04:00
Donovan Glover
0e95b81999
desktop: Add hyprland support to phone with legacyRenderer
...
Time will tell whether or not Hyprland will be preferred over phosh.
2024-06-19 19:54:33 -04:00
Donovan Glover
234b373dec
desktop: Add base phone support
2024-06-19 02:06:41 -04:00
Donovan Glover
8bb6a8a24e
system: Add groups from phone
...
Might reduce this later.
2024-06-19 02:04:47 -04:00
Donovan Glover
510ddfe9d7
hardware: Add phone support
...
This is untested but should work.
2024-06-19 02:03:02 -04:00
Donovan Glover
6ff271d4e2
system: Disable zram on phone for now
...
Testing whether or not SIGSEGVs are reduced as a result of disabling
zram.
2024-06-19 02:01:51 -04:00
Donovan Glover
16da2fd144
system: Add phone support
2024-06-19 02:00:34 -04:00
Donovan Glover
fb5c7849d0
system: Add wheel group to trusted users
...
Should prevent issues we ran into previously with things like
nixos-rebuild on remote hosts through ssh with non-root accounts.
2024-06-17 11:25:00 -04:00
Donovan Glover
000c9f2d90
system: Enable aarch64-linux emulation
...
This makes it possible to build the phone on the laptop, useful to
significantly reduce build times.
2024-06-16 07:43:56 -04:00
Donovan Glover
c0fc4fc4d0
desktop: Add back ringracers
...
Accidentally removed this without adding it back previously.
2024-06-16 06:20:55 -04:00
Donovan Glover
a629f92827
meta: Revert combining mobile-nixos flake
...
This was causing a lot of issues unfortunately presumably due to things
not working with the aarch64 PinePhone system. Random errors like
"expected string 'D'" were common and I'd rather use a separate flake to
make things easier to debug and keep evaluation times to a minimum.
2024-06-15 10:47:03 -04:00
Donovan Glover
8ceb1bf511
flake: Properly handle mobile-nixos module import
...
This was necessary to avoid issues with conditional imports.
2024-06-14 13:18:45 -04:00
Donovan Glover
05b14fa423
meta: Merge phone module with system / desktop
2024-06-14 01:21:46 -04:00
Donovan Glover
eb58e723e2
meta: Migrate phosh options to phone module
...
Might try going beyond phosh later.
2024-06-13 21:17:28 -04:00
Donovan Glover
8d21fa5850
desktop: Add popsicle for flashing drives
...
It's a nice and simple GUI that helps avoid silly mistakes when flashing
drives.
2024-06-13 13:20:32 -04:00
Donovan Glover
b42540808b
meta: Patch latest nixos-unstable release with hyprland v0.41.0
...
This shouldn't cause too many issues.
2024-06-13 05:15:51 -04:00
Donovan Glover
996f36e239
hardware: Add bluetooth support
2024-06-13 05:14:19 -04:00
Donovan Glover
96b3752117
hyprland: Lock version to v0.39.1-patched
...
Note that using a separate fork is necessary since overlaying flakes
seems to be non-trivial here.
Also note that previously the nixpkgs hyprland was being started from
greetd. This fixes that.
2024-06-12 14:50:44 -04:00
Donovan Glover
824d1ef914
shell: Add new packages
2024-06-12 14:01:05 -04:00
Donovan Glover
49fda4f0ae
meta: Move dev tools to shell
...
Avoids having a separate home module just for packages and makes
essential tooling accessible in all shells.
Note that the legacy `texlive.combined.scheme-full` was replaced with
`texliveFull` in this commit.
2024-06-02 11:39:47 -04:00
Donovan Glover
b16466a944
Revert "system(home): Disable nixpkgs release check"
...
No longer necessary since we're targeting 24.05.
2024-06-01 14:19:54 -04:00
Donovan Glover
e60c826ed5
system(home): Disable nixpkgs release check
...
Necessary since we take advantage of newer hypridle and hyprlock
modules while sticking with an older version of nixpkgs to avoid issues
with newer versions of hyprland and ironbar.
Breakage may have been influenced by a dependency but seems to occur
with various combinations of hyprland and ironbar.
- hyprland v0.39.1 + ironbar v0.14.1
- hyprland v0.39.1 + ironbar master
- hyprland master + ironbar master
2024-05-31 23:44:44 -04:00
Donovan Glover
a1a54472ab
shell: Drop visidata
...
Not interested in using visidata due to its inability to turn off status
messages and how a bug report was replied to.
See: https://github.com/saulpw/visidata/issues/2283
2024-05-31 18:03:18 -04:00
Donovan Glover
d187c6dd5b
desktop: Remove logseq
...
I don't use logseq anymore and am removing large programs to reduce
the closure size.
2024-05-31 11:54:34 -04:00
Donovan Glover
c40055a515
packages: Remove chromium from global $PATH
...
Not interested in maintaining this globally when I only need it for
testing, so I'd rather have it only available inside a devShell if
necessary.
2024-05-26 06:36:09 -04:00
Donovan Glover
3983219a7f
nerdfonts: Only include Noto fonts
...
This reduces the closure size by 8 GB without changing anything else.
2024-05-26 05:24:31 -04:00
Donovan Glover
b30ffbc858
system: Change allowZolaPort option to allowDevPort
...
Makes things a bit more generic.
2024-05-20 11:53:13 -04:00
Donovan Glover
55ba37da88
overlays: Drop zola
...
No longer necessary since I no longer use zola and would rather not deal
with unnecessarily compiling it.
2024-05-20 11:46:30 -04:00
Donovan Glover
e96bb70ed7
direnv: Prefer silent option over $DIRENV_LOG_FORMAT
...
This actually sets $DIRENV_LOG_FORMAT for us.
2024-05-19 23:19:06 -04:00
Donovan Glover
372811f651
modules(desktop): Add graphical option for containers
...
xserver is required to make GUI applications run inside containers.
2024-05-19 11:18:39 -04:00
Donovan Glover
b5b20c7b19
tests: Test neovim with config
...
Fixes an issue where previously the home-manager config for neovim
wasn't actually being tested.
2024-05-19 00:45:55 -04:00
Donovan Glover
08cc18133d
ironbar: Add battery indicator support with upower
...
It turns out that I'd rather have a battery indicator than having to
`cat /sys/class/power_supply/BAT0/capacity` all the time.
Depends on upower and results in the battery indicator always being
shown even when virtualized.
2024-05-13 11:06:18 -04:00
Donovan Glover
4fcf7d48af
meta: Remove sqlite / sqlcipher from global $PATH
...
Will be handled in individual project flake.nix files instead.
2024-05-12 19:17:18 -04:00
Donovan Glover
017b588e3d
shell: Remove watchexec from systemPackages
...
This hasn't been as useful as I thought it would be. It's easier to
simply use alternative methods than trying to get watchexec to work.
2024-05-12 14:27:20 -04:00
Donovan Glover
39e5183013
chore: Simplify
...
Note that biome isn't needed since eslint is *the* industry standard.
2024-04-22 22:29:47 -04:00
Donovan Glover
65c815d155
phinger-cursors: Downgrade from 2.0 to 1.1 (again)
...
2.0 introduces some kind of breaking change that results in the cursor
appearing larger than usual, which I haven't been able to find an answer
for. The 1.1 cursor has been great already, so I'll probably stick with
that until further notice.
2024-04-18 21:30:27 -04:00
Donovan Glover
6826ef0307
phinger-cursors: Upgrade to 2.0 with phinger-cursors-dark
...
The new archive comes with a phinger-cursors-dark directory instead of
a phinger-cursors directory, which was a breaking change.
2024-04-18 20:28:29 -04:00
Donovan Glover
fbb09fea48
neovim: Specify defaultEditor at the home-manager level
...
Does the same thing (with the exception of VISUAL not being set for now)
but makes the module more portable overall.
2024-04-18 13:44:25 -04:00
Donovan Glover
f6f180ffc3
chore: Improve formatting
2024-04-16 20:04:24 -04:00
Donovan Glover
9f10d795c7
system(nix): Downgrade from Nix 2.19 to 2.18
...
I got tired of seeing the unstable warnings all the time and would
rather use directories with simple names to avoid other problems.
2024-04-16 19:48:14 -04:00
Donovan Glover
3c186055a5
chore: Improve formatting
2024-04-11 05:34:49 -04:00
Donovan Glover
cd39a136f9
system: Blacklist floppy kernel module
...
Fixes an issue where the QEMU VM attempted to load a floppy at /dev/fd0.
2024-04-10 22:58:09 -04:00
Donovan Glover
58df5018da
meta: Handle postgres at the system level
...
This makes sense since postgres is a service that runs on the system.
2024-04-09 09:25:51 -04:00
Donovan Glover
bfd55ef40a
chore(nix): Inherit builtins at bottom
2024-04-09 09:19:29 -04:00
Donovan Glover
70e6bcc223
system(home): Inherit stateVersion
2024-04-08 04:15:46 -04:00
Donovan Glover
f02f2cfd03
chore(nix): Use singleton where possible
2024-04-08 04:11:19 -04:00
Donovan Glover
9fa0aa4206
desktop: Add options for theme/opacity/fontSize
2024-04-07 12:30:50 -04:00
Donovan Glover
fa82103e6c
meta: Drop /share/backgrounds pathsToLink
...
Not needed since we can just reference the background directly instead.
Note that the linking actually occurs in the modules for the DEs that
add backgrounds since it isn't part of the defaults.
2024-04-07 11:54:35 -04:00
Donovan Glover
c1eed0c69d
eww: Make icons work standalone
2024-04-07 11:05:15 -04:00
Donovan Glover
c6c49b62b5
chore: Improve formatting
2024-04-07 10:54:12 -04:00
Donovan Glover
1173e8483b
meta: Drop /share/fonts pathsToLink
...
Shouldn't be necessary with the usage of fonts.packages.
2024-04-07 10:13:08 -04:00
Donovan Glover
ec496e1a69
meta: Rename shared.nix to default.nix
...
This should make it easier to tell that this is the default
configuration inherited by all containers.
2024-04-06 22:47:01 -04:00
Donovan Glover
ba10f28513
fish: Move core logic to home
...
Making root more bare-bones should be okay due to being able to use nix
shell and nix run as needed.
2024-04-06 22:14:18 -04:00
Donovan Glover
006a3592e6
feat: Fix crackling audio inside containers
...
It turns out that enabling hyprland inside the container causes this to
happen. I've also disabled greetd for good measure.
2024-04-06 19:35:57 -04:00
Donovan Glover
534476e97b
feat: Add option to disable root at the system level
...
Reduces complexity in the containers module.
2024-04-06 19:28:22 -04:00
Donovan Glover
bd6fabad67
feat: Move starship/htop back to home
...
It's actually easier to maintain when programs with non-trivial configs
have their own module.
2024-04-06 18:46:27 -04:00
Donovan Glover
2e366abf7d
containers: Move wine config to separate file
2024-04-06 18:18:30 -04:00
Donovan Glover
00135526e7
desktop: Support japanese/wine by default
...
Simplifies things a bit since my target audience includes those
interested in the Japanese language. Opinionated defaults like this
makes it easier for end-users to be immediately productive without
having to spend time configuring things.
2024-04-06 13:43:28 -04:00
Donovan Glover
a7821f7027
chore: Fix usage of argument not present in container
...
nix-config must be used when referencing flake inputs to make it
possible to use the same module inside containers.
2024-04-06 12:27:27 -04:00
Donovan Glover
0033dfceb0
chore: Disable command-not-found by default
...
Unfortunately command-not-found only works for channels and doesn't have
first-class support for flakes yet, and nix-index takes forever to build
the database on slower machines, so I'd rather just disable this by
default.
2024-04-06 12:13:02 -04:00
Donovan Glover
7649c658b7
meta: Merge packages module into existing modules
2024-04-06 11:49:03 -04:00
Donovan Glover
b4af703fdf
meta: Merge dual-function-keys with hardware
...
Seems like an alright categorization for now since dual-function-keys
can be used without a desktop environment, although realistically the
tty is impractical for things like CJK.
2024-04-06 11:09:09 -04:00
Donovan Glover
3fc9cb9c81
chore: Link paths at the system level
...
Fixes an issue where paths wouldn't be linked previously unless
manually specified.
2024-04-06 10:26:32 -04:00
Donovan Glover
10bc64f097
chore: Attempt to organize packages a bit
...
Not perfect but good enough.
2024-04-06 10:19:18 -04:00
Donovan Glover
5bc853c489
chore: Fix specializations evaluating as sets
2024-04-06 09:44:40 -04:00
Donovan Glover
30f4d4f650
meta: Merge networking with system
...
This makes it easier to ensure that the system has our network settings
such as random mac addresses. This makes sense since networking in
general is related to the system.
2024-04-06 09:26:22 -04:00
Donovan Glover
8464d87cc9
meta: Merge specializations with desktop
...
This makes sense since the specializations are desktop-centric.
2024-04-06 08:30:54 -04:00
Donovan Glover
0e07ad48f5
virtualization: Mount /tmp as /mnt
...
This isn't *perfect*, but it does make it possible to share files
between the guest and the host without having to imperatively create a
directory that may or may not exist on other systems.
2024-04-06 08:21:32 -04:00
Donovan Glover
dd3d09bb67
system: Add option to specify hashedPassword
...
It may be useful to add hashedPasswordFile in the future, although from
my testing it was possible to rebuild a VM that used a cached derivation
with the old password.
Ideally your main form of authentication is through LUKS encryption or
SSH keys anyway, and this password should solely be used for sudo
purposes.
2024-04-06 08:18:32 -04:00
Donovan Glover
76a397031f
system: Set password to username by default
...
Ideally the user should supply their own hashedPassword.
2024-04-06 08:10:52 -04:00
Donovan Glover
3080c56023
containers: Fix warning when containers are disabled
...
Now it's possible to disable the containers without getting a warning
that containers.<name> is being defined.
2024-04-06 08:09:23 -04:00
Donovan Glover
8ba4792d03
virtualization: Fullscreen by default
...
Makes things easier to work with since hyprland doesn't automatically
match the resolution with the VM window by default.
2024-04-06 06:44:43 -04:00
Donovan Glover
1f1670ac54
virtualization: Disable zram
...
Causes errors on startup and generally isn't useful inside the VM.
2024-04-05 22:23:21 -04:00
Donovan Glover
2f30ce241b
meta: Merge virtualization with system
...
The check VMs still work as expected with this change.
2024-04-05 19:43:52 -04:00
Donovan Glover
7a8fdd7259
chore: Improve formatting
2024-04-05 19:01:41 -04:00
Donovan Glover
a1ec752ecd
virtualization: Don't share home directory
...
Not really necessary anymore since I no longer test home-specific stuff
inside the virtual machine.
It would be nice if there was a way to create a temporary directory on
the fly (such as one in /tmp) that could be mounted and used for sharing
files between the virtual machine and the host.
2024-04-05 14:35:40 -04:00
Donovan Glover
e2e8971eb3
chore: Simplify variable usage
...
Changes made:
- Preferred "inherits" where possible
- Removed unnecessary comments
- Added variables to avoid duplicate strings
- Reduced usage of "with x;"
2024-04-05 13:30:39 -04:00