diff --git a/emmathorpe b/emmathorpe deleted file mode 160000 index c28d5f2..0000000 --- a/emmathorpe +++ /dev/null @@ -1 +0,0 @@ -Subproject commit c28d5f2b8bb6554c9a6b9990420f080af654b0b5 diff --git a/emmathorpe/home.nix b/emmathorpe/home.nix new file mode 100644 index 0000000..3573257 --- /dev/null +++ b/emmathorpe/home.nix @@ -0,0 +1,66 @@ +{ config, pkgs, inputs, lib, ... }: + +{ + programs.zsh = { + enable = true; + enableCompletion = true; + enableVteIntegration = true; + autosuggestion.enable = true; + historySubstringSearch.enable = true; + history.append = true; + oh-my-zsh = { + enable = true; + plugins = [ "git" "man" "history-substring-search" ]; + theme = "robbyrussell"; + }; + syntaxHighlighting.enable = true; + initContent = lib.mkOrder 1500 '' + if [ -z $DISPLAY ] && [ "$(tty)" = "/dev/tty1" ]; then + exec sway + fi + if [ "$SSH_CLIENT" ] || [ "$SSH_TTY" ]; then + export PS1=%M\ $PS1 + fi + ''; + envExtra = '' + export EDITOR=vim + alias cls=clear + ''; + }; + programs.tmux = { + enable = true; + reverseSplit = true; + terminal = "tmux-direct"; + newSession = true; + keyMode = "vi"; + historyLimit = 50000; + extraConfig = '' + # Enable mouse support + set -g mouse on + # Set pane navigation + bind -n M-Left select-pane -L + bind -n M-Right select-pane -R + bind -n M-Up select-pane -U + bind -n M-Down select-pane -D + ''; + }; + home.stateVersion = "25.05"; + home.pointerCursor = { + gtk.enable = true; + x11 = { + enable = true; + defaultCursor = "Adwaita"; + }; + package = pkgs.adwaita-icon-theme; + name = "Adwaita"; + size = 24; + }; + home.packages = [ + pkgs.element-desktop + ]; + home.sessionVariables = { + MOZ_USE_XINPUT2 = "1"; + # only needed for Sway + XDG_CURRENT_DESKTOP = "sway"; + }; +} diff --git a/emmathorpe/shell.nix b/emmathorpe/shell.nix new file mode 100644 index 0000000..d447d0c --- /dev/null +++ b/emmathorpe/shell.nix @@ -0,0 +1,31 @@ +{ config, lib, pkgs, ... }: + +{ + #programs.zsh = { + # enable = true; + # ohMyZsh = { + # enable = true; + # plugins = [ "git" "man" "history-substring-search" ]; + # theme = "robbyrussell"; + # }; + # syntaxHighlighting.enable = true; + # autosuggestions.enable = true; + #}; + #programs.tmux = { + # enable = true; + # reverseSplit = true; + # terminal = "tmux-direct"; + # newSession = true; + # keyMode = "vi"; + # historyLimit = 50000; + # extraConfig = '' + # # Enable mouse support + # set -g mouse on + # # Set pane navigation + # bind -n M-Left select-pane -L + # bind -n M-Right select-pane -R + # bind -n M-Up select-pane -U + # bind -n M-Down select-pane -D + # ''; + #}; +} diff --git a/emmathorpe/swaywm.nix b/emmathorpe/swaywm.nix new file mode 100644 index 0000000..e319278 --- /dev/null +++ b/emmathorpe/swaywm.nix @@ -0,0 +1,36 @@ +{ config, lib, options, pkgs, ... }: + +let + cfg = config.features.swayDesktop; +in +{ + options = { + features.swayDesktop.enable = lib.mkEnableOption "Enable Sway Desktop"; + }; + config = lib.mkIf cfg.enable { + programs.sway = { + enable = true; + wrapperFeatures.gtk = true; + extraSessionCommands = '' + # QT + export QT_QPA_PLATFORM="wayland;xcb" + export QT_QPA_PLATFORMTHEME=qt5ct + # SDL + export SDL_VIDEODRIVER=wayland + # Java + export _JAVA_AWT_WM_NONREPARENTING=1 + # Misc + export CLUTTER_BACKEND=wayland + export WINIT_UNIX_BACKEND=x11 + export MOZ_ENABLE_WAYLAND=1 + ''; + extraPackages = with pkgs; [ brightnessctl foot grim swayidle swaylock i3status-rust sway-launcher-desktop dunst ]; + }; + fonts.packages = with pkgs; [ + noto-fonts + noto-fonts-emoji + font-awesome + ]; + }; + +} diff --git a/emmathorpe/user.nix b/emmathorpe/user.nix new file mode 100644 index 0000000..42e5db4 --- /dev/null +++ b/emmathorpe/user.nix @@ -0,0 +1,23 @@ +{ config, pkgs, inputs, lib, ... }: + +{ + programs.zsh.enable = true; + users.users.emmathorpe = { + isNormalUser = true; + home = "/home/emmathorpe"; + description = "Emma Thorpe"; + extraGroups = [ "wheel" ]; + shell = pkgs.zsh; + packages = lib.mkIf (config.features.swayDesktop.enable == true) [ + pkgs.legcord + #pkgs.plex-desktop + #pkgs.plexamp + ]; + }; + programs.firefox = lib.mkIf(config.features.swayDesktop.enable == true) { + enable = true; + }; + programs.thunderbird = lib.mkIf(config.features.swayDesktop.enable == true) { + enable = true; + }; +} diff --git a/system/machine/MBP-Asahi/configuration.nix b/system/machine/MBP-Asahi/configuration.nix index 87ae610..911e055 100644 --- a/system/machine/MBP-Asahi/configuration.nix +++ b/system/machine/MBP-Asahi/configuration.nix @@ -8,7 +8,7 @@ imports = [ # Include the results of the hardware scan. ./hardware-configuration.nix - ../modules/apple-silicon-support + ../../modules/apple-silicon-support ]; # Use the systemd-boot EFI boot loader.