Commit Graph

3338 Commits

Author SHA1 Message Date
298792cd92 mobile-nixos: Limit audio to speaker/earpiece VoiceCall
This helps guarantee that phone call audio will work as long as the
phone wasn't suspended prior to the phone call, in which case the
pulseaudio server needs to be restarted first.

Note that this removes the possibility of using the PinePhone for tasks
where audio is particularly important, although it's likely more
enjoyable to accomplish those tasks on a more reliable device anyway.

I may come up with a solution that automates fixing the audio after
suspend in the future.
2024-08-15 11:20:23 -04:00
b14eca2c55 system: Open dnsmasq ports with hotspot option
Makes it possible to connect to mobile hotspots. Now the PinePhone is
a lot more useful.
2024-08-15 11:04:35 -04:00
f4193012f9 librewolf: Use mobile-friendly-firefox styles
This makes LibreWolf work well on the PinePhone without having to
manually use the FriendlyFox installation script.

Note that FriendlyFox was chosen over the mobile-config-firefox script
from postmarketOS due to FriendlyFox having less issues overall, such as
not breaking when the right click menu is long and popup menus having
altered styles for mobile support.
2024-08-13 17:17:32 -04:00
5f424194e1 shell: Replace wget / httpie with xh
The year is 2024 and httpie is no longer in fashion. httpie was broken
on NixOS anyway due to certificate verification errors, and wget is
unnecessary overall since scripts that depend on it have their own $PATH
with it available.

See: https://github.com/NixOS/nixpkgs/issues/94666
2024-08-13 16:55:01 -04:00
b995d2885f librewolf: Trim https by default
Should make reading URLs easier on the already-limited screen size
of the PinePhone.
2024-08-13 16:28:58 -04:00
bad1a9d3c3 librewolf: Make mullvad the default search engine
Might add some more search engines later, but Mullvad usually produces
better results for less popular content, especially with topics such as
PinePhone troubleshooting.
2024-08-13 16:27:05 -04:00
63797c4259 flake: Switch to home-manager fork for librewolf support
I originally wanted to avoid maintaining my own forks of flake inputs to
simplify usage with the actual upstream if wanted, however the lack of
flakes supporting patches means that it's actually *easier* to maintain
my own repositories with the changes I want.

The main advantage of this is not having to wait for upstream. This also
means that I'm able to easily control which things I want to update and
when.
2024-08-13 14:36:14 -04:00
e2b4ba85ea phone: Ensure 4G connection on initial build
This is a huge step towards using the phone as a phone without having to
worry about using Phosh long-term. This could potentially lead to an
extremely minimal phone in the future that has improved performance for
simple tasks.
2024-08-12 20:05:52 -04:00
f1400460ab phone: Don't show kvantum stuff in app list
Currently the way I'm using the PinePhone is like a minimal phone with
less than 8 apps in total.
2024-08-12 13:45:09 -04:00
3fbcf669cf phone: Drop unused packages
Will be using the phone as a portable web browser to avoid issues with
native applications generally being slower and lacking features you'd
find in their web counterparts.
2024-08-12 13:29:25 -04:00
1344cf0c3e system(ssh): Disable keyboard interactive authentication
Not necessary since we're using key pairs 100% now.
2024-08-12 06:39:19 -04:00
1d489ac6b4 phone: Update device UUIDs
Had to reinstall NixOS on the PinePhone again since a corrupted Nix
store broke everything and was unrecoverable due to not being able to
successfully repair specific files with the use of SSH substituters.

This time we will be trying the PinePhone without LUKS encryption to see
if this makes a difference in the performance of the device. Technically
encryption *isn't* supposed to make things slower in 2024 but the
PinePhone CPU is old enough that performance could've been affected.
2024-08-12 06:35:50 -04:00
1427bdc4dd phone: Switch from alacritty to kitty
Alacritty has some significant issues that make it a non-starter for me
on the PinePhone, such as neovim not displaying properly over SSH.

As an alternative to no touch support in kitty and no shift modifiers in
squeekboard, tmux can be used instead.
2024-08-11 19:26:10 -04:00
a3a8766ada system: Enable ssh for all systems 2024-08-11 18:47:05 -04:00
f3855a5260 shell: Add nix-update / rustscan
rustscan is a nice alternative to nmap that's easier to use and doesn't
require the usage of sudo in certain situations.

nix-update is a nice script that makes updating the versions and hashes
of packages way easier than editing them by hand.
2024-08-11 18:19:37 -04:00
2e74b21642 packages(all-the-package-names): Run nix-update
Surprisingly easy to update packages in flakes with nix-update.
2024-08-11 16:58:42 -04:00
372f26662c meta: Drop tectonic
It's better to be pragmatic here and not choose tectonic when texlive
works extremely well and without any of the problems one would encounter
with tectonic.

The future of tectonic is unfortunately a mystery as well, due to the
status of the GitHub repository and its dependence on the unmaintained
XeTeX.

See: https://tex.stackexchange.com/questions/593031/what-are-the-downsides-of-using-xetex/593217#593217
2024-08-11 16:18:44 -04:00
7fb98bba38 phone: Show upcoming events on lock screen
This works but causes the time to not be updated if you turn on the
phone with the upcoming events section open.
2024-08-11 15:38:51 -04:00
94c5f8f651 phone: Show calendar in favorites
Unsure if I'll actually use the calendar on here due to how slow it is,
but it seems better than everything else.
2024-08-11 15:36:25 -04:00
4180bd90d2 fish: Drop deno abbreviations
I don't use deno enough to justify having separate abbreviations for it,
and I doubt I will anytime soon due to the vastly superior ecosystem of
npm. Just as an example, `deno task` autocomplete support isn't
implemented, whereas `npm run` does have autocomplete.
2024-08-11 15:21:54 -04:00
a4199be9c0 editorconfig: Drop unused file type settings
The rust editorconfig isn't necessary, and I don't edit the other file
types anymore.
2024-08-11 14:58:05 -04:00
57aa315b21 tmux: Remove unused bindings
The default keybindings should be preferred so it's easier to use tmux
on other machines.
2024-08-11 14:36:29 -04:00
69917c5f99 qutebrowser: Drop unused qute-pass / mpv bindings
These didn't work anyway due to forgetting to remove the ') at the end
of the strings previously.
2024-08-11 14:32:49 -04:00
818f1f559d meta: Move alacritty config to phone
I only use alacritty on the phone due to the superior touch support.
Touch support might be added to kitty later if someone is willing to
patch it. See: https://github.com/kovidgoyal/kitty/issues/5432
2024-08-11 14:08:23 -04:00
2ed939b083 meta: Replace zellij with tmux
Now that tmux works again, it makes sense to choose it over zellij due
to the vastly superior community support around it. Using tmux-256color
makes colors work properly in programs like htop, and neovim benefits
from squiggly lines and italics from kitty as well.
2024-08-11 13:54:32 -04:00
5032717f84 flake: Update stylix to fix startup issues with fish + tmux
Now it's possible to enjoy kitty image previews inside tmux, which is
something that zellij doesn't support.

Although tmux is slightly slower than zellij on startup, it has the
major advantage of a larger community with more time to iron out bugs
like the cursor jumping when scrolling in neovim with zellij.
2024-08-11 12:45:47 -04:00
6c34cce882 treewide(nix): Remove duplicate attribute name usage
Found thanks to nixd showing different colors for these.
2024-08-10 20:55:46 -04:00
6d47500cdc librewolf: Drop removed activity cursor setting
This was unfortunately removed from upstream Firefox in [1] likely from
some sort of cleanup campaign on old code. There are no plans to
introduce it back based on [2], so we'll have to live without it.

[1]: https://bugzilla.mozilla.org/show_bug.cgi?id=1848896
[2]: https://bugzilla.mozilla.org/show_bug.cgi?id=1858801
2024-08-10 19:55:42 -04:00
b74daeaeaf desktop: Drop vagrant (again)
After having to use vagrant again after a while I've decided that it's
better to simply "do things the right way" the first time with the
declarative nature of Nix instead of trying to make install scripts
work.

Notably, the feedback loop between provisioning Vagrant boxes was
lacking compared to rebuilding on NixOS, and the virtual machine
frequently had to be destroyed and provisioned all over again, versus
having already built derivations with Nix.
2024-08-10 19:51:01 -04:00
84e38fc2b1 neovim: Drop chameleon.nvim
Not interested in dealing with fixing the nixf-tidy issue here which
would cause a massive formatting diff with nixfmt-rfc-style. Might
upstream later or find a better solution without chameleon.nvim.
2024-08-09 19:52:32 -04:00
2dba93e179 phone: Move xdg.desktopEntries inside config
Should fix nix flake check.
2024-08-09 19:27:16 -04:00
514ff07848 nixf-tidy: Add missing fish dependency 2024-08-09 19:25:04 -04:00
9bbd7615e1 flake: Update hyprdim/hyprnome for Hyprland v0.42.0 2024-08-09 19:15:18 -04:00
03b91edd4f neovim: Make folded background transparent
Now zM is a lot prettier to use.
2024-08-09 18:09:28 -04:00
0286b818de neovim: Drop pug / ecr
There really isn't a reason to use pug or ecr in 2024 when the
development experience with JSX/TSX is so great, and sticking to
what's popular makes it easier for other people to contribute.
2024-08-09 13:39:07 -04:00
92851019c8 neovim: Drop vue
I haven't used Vue in years and have much more expertise in vanilla
JavaScript/TypeScript with React and JSX/TSX, so there's really no
reason for me to keep it here.
2024-08-09 13:36:20 -04:00
45e7d727a0 chore: Run nix fmt 2024-08-09 13:29:15 -04:00
5101e93c39 specializations: Remove unnecessary options
Enabling xserver is handled by the desktop module.
2024-08-09 12:23:41 -04:00
da29bcbf4d neovim: Remove unnecessary comments
The built-in help and https://neovim.io/doc/user/options.html can be
used instead if an option isn't known at read time.
2024-08-09 11:13:31 -04:00
19bb580cb0 neovim: Remove useless softtabstop option
0 is already the default.
2024-08-09 11:10:42 -04:00
a73678b2a8 git: Prune deleted branches by default
Avoids unnecessary overhead when dealing with lots of branches.
2024-08-08 22:46:52 -04:00
2d0abaa9b3 ci: Add check with nixf-tidy
This should work.
2024-08-08 22:44:02 -04:00
db29d97fe2 packages: Add wrapper script for nixf-tidy
Now it's possible to use this package in the ci.
2024-08-08 22:41:56 -04:00
6e5c2c606b xdg: Only hide desktop icons on phone
It turns out that doing this breaks thunar and possibly some other
stuff, so we'll only hide them on the PinePhone with Phosh.
2024-08-08 22:03:39 -04:00
add2c126fe dwm: Inline picom / dunst configs
This prevents us from having specialization-specific configs in the home
directory, which would be unrelated to the main hyprland environment and
would require explicitly disabling it.

Other nix-configs solve this problem with nested directory structures,
however I enjoy being able to access all files in the nix-config one
directory away.
2024-08-08 21:33:48 -04:00
452bad7db6 specializations: Add base dwm specialization
Sometimes you really need to use a stable and reliable Xorg desktop
system. GNOME crashes when switching workspaces with osu! open, and
Plasma seems like too much for just wanting to run osu! without
having to worry about all the Wayland shenanigans decreasing fps.

I used bspwm for years however development has slowed down recently.
I've always liked dwm from trying it previously, and it is comforting
knowing that your window manager is minimal and will always work the
same way.
2024-08-08 21:26:42 -04:00
f82b999542 neovim: Drop remaining crystal support
As much as I love reading the Crystal programming language, it's clear
that there are more opportunities to be had with prioritizing Rust
instead. The ecosystem for Rust is vastly superior with higher quality
libraries and an LSP that's actually feature-complete, and I'd rather
deal with the known problems I'm aware of with Rust than the problems
I'm aware of with Crystal.

Rust won. Joking aside, the ecosystem for Rust is vastly superior, even
if the language is more difficult.
2024-08-08 20:53:03 -04:00
87adeff650 neovim: Drop unused language servers
Prioritizing Nix / Rust / TypeScript.
2024-08-08 17:48:12 -04:00
7c5f535dff flake: Update to hyprland v0.42.0 2024-08-07 17:12:29 -04:00
2297fb41e3 treewide: Drop usage of inherit (pkgs)
Having to change the package list in two places was a bit redundant. We
can also use `with` patterns now since nixd warns if there are escaping
variables being used.

Note that variables used in multiple places are kept to make it easier
to recognize that those variables must be changed together. Also note
that inherit (pkgs) inside of mkMerge are currently kept to reduce the
diff.
2024-08-07 16:40:58 -04:00