summaryrefslogtreecommitdiff
path: root/darwin.nix
diff options
context:
space:
mode:
authorGrace Yoder <grace_yoder@outlook.com>2026-09-03 15:36:32 -0400
committerGrace Yoder <grace_yoder@outlook.com>2026-09-03 15:37:10 -0400
commit22b6712c240fea0643cfc01acfce1fda1f125b8a (patch)
treefb8ac2302793c76d3640aab7d3f74f7a57c01933 /darwin.nix
nix init
Diffstat (limited to 'darwin.nix')
-rw-r--r--darwin.nix113
1 files changed, 113 insertions, 0 deletions
diff --git a/darwin.nix b/darwin.nix
new file mode 100644
index 0000000..7224d49
--- /dev/null
+++ b/darwin.nix
@@ -0,0 +1,113 @@
+{ config, lib, pkgs, ... }:
+
+let
+ paneru = builtins.getFlake
+ "github:karinushka/paneru/bcf248ef60aa4c0b49002161b97bc6e268b05aa7";
+ hostName = "turing";
+ primaryUser = if lib.hasSuffix "cs.purdue.edu" hostName then "yoder177" else "grace";
+in
+{
+ imports = [ paneru.darwinModules.paneru ];
+
+ nixpkgs.config.allowUnfree = true;
+ nixpkgs.hostPlatform = "aarch64-darwin";
+ networking.hostName = hostName;
+
+ environment.systemPackages = [ pkgs.raycast pkgs.thaw ];
+
+ system = {
+ primaryUser = primaryUser;
+ stateVersion = 7;
+ };
+
+ users.users.${config.system.primaryUser} = {
+ name = config.system.primaryUser;
+ home = "/Users/${config.system.primaryUser}";
+ shell = pkgs.fish;
+ };
+
+ programs.fish.enable = true;
+
+ services.paneru = {
+ enable = true;
+
+ settings = {
+ options = {
+ disable_native_tabs = true;
+ focus_follows_mouse = false;
+ mouse_follows_focus = false;
+
+ animation_speed = 12.0;
+
+ preset_column_widths = [ 0.45 0.65 0.9 ];
+ window_resize_cycle = true;
+ create_virtual_workspace_automatically = true;
+ virtual_workspace_animations = true;
+
+ };
+
+ swipe = {
+ sensitivity = 0.35;
+ deceleration = 4.0;
+ continuous = true;
+
+ gesture = {
+ fingers_count = 3;
+ direction = "Natural";
+ vertical = false;
+ };
+ };
+
+ padding = {
+ top = 5;
+ bottom = 5;
+ left = 5;
+ right = 5;
+ };
+
+ windows.all = {
+ title = ".*";
+ horizontal_padding = 5;
+ vertical_padding = 5;
+ };
+
+ windows.todoist_quick_add = {
+ bundle_id = "com.todoist.mac.Todoist";
+ title = "^Todoist$";
+ floating = true;
+ };
+
+ bindings = {
+ window_focus_west = "cmd + shift - h";
+ window_focus_east = "cmd + shift - l";
+
+ window_swap_west = "cmd + shift + ctrl - h";
+ window_swap_east = "cmd + shift + ctrl - l";
+
+ # window_virtual_south = "cmd - j";
+ # window_virtual_north = "cmd - k";
+
+ window_center = "alt - c";
+ window_resize = "cmd + shift - f";
+ window_balance = "alt - b";
+
+ quit = "ctrl + alt - q";
+ };
+ };
+ };
+ system.defaults.CustomUserPreferences = {
+ "com.apple.symbolichotkeys" = {
+ AppleSymbolicHotKeys = {
+ "64" = {
+ enabled = false;
+ };
+ };
+ };
+
+ "com.raycast.macos" = {
+ raycastGlobalHotkey = "Command-49";
+ };
+ };
+
+ security.pam.services.sudo_local.touchIdAuth = true;
+}