summaryrefslogtreecommitdiff
path: root/hosts/muspell
diff options
context:
space:
mode:
Diffstat (limited to 'hosts/muspell')
-rw-r--r--hosts/muspell/default.nix60
1 files changed, 60 insertions, 0 deletions
diff --git a/hosts/muspell/default.nix b/hosts/muspell/default.nix
new file mode 100644
index 0000000..ec3572c
--- /dev/null
+++ b/hosts/muspell/default.nix
@@ -0,0 +1,60 @@
+{ mobile-nixos, lib, pkgs, ... }:
+
+{
+ imports = [
+ (import "${mobile-nixos}/lib/configuration.nix" {
+ device = "pine64-pinephone";
+ })
+ ];
+
+ this.locales.default = "us";
+
+ time.timeZone = "America/Chicago";
+
+ this.pc.enable = true;
+ this.overlays.emacs.enable = lib.mkForce false;
+
+ this.users.enabled = ["simon"];
+
+ this.sets = {
+ cli.tools.full = true;
+ de.utils = true;
+ media.tools = true;
+ net.tools.minimal = true;
+ script.utils = true;
+ sound.tools = true;
+ sys.tools = true;
+ };
+
+ services.xserver = {
+ enable = true;
+ desktopManager.plasma5.mobile.enable = true;
+ displayManager.lightdm = {
+ enable = true;
+ # Workaround for autologin only working at first launch.
+ # A logout or session crashing will show the login screen otherwise.
+ extraSeatDefaults = ''
+ session-cleanup-script=${pkgs.procps}/bin/pkill -P1 -fx ${pkgs.lightdm}/sbin/lightdm
+ '';
+ };
+ };
+ programs.firefox = {
+ enable = true;
+ package = pkgs.firefox-esr;
+ };
+
+ hardware.bluetooth.enable = true;
+ powerManagement.enable = true;
+ services.libinput.enable = true;
+ services.displayManager.defaultSession = "plasma-mobile";
+ services.displayManager.autoLogin.enable = true;
+
+ # Ensures any rndis config from stage-1 is not clobbered by NetworkManager
+ networking.networkmanager.unmanaged = [ "rndis0" "usb0" ];
+
+ # Setup USB gadget networking in initrd...
+ mobile.boot.stage-1.networking.enable = true;
+
+ nixpkgs.hostPlatform = "aarch64-linux";
+ system.stateVersion = "24.11";
+}