From 466f4b12f44724474360147196c43e4591d9f468 Mon Sep 17 00:00:00 2001 From: Kenichi Kamiya Date: Wed, 2 Aug 2023 22:05:47 +0900 Subject: [PATCH] Start to manage macOS specific configurations (#240) * Start to manage darwin specific dependencies * Fix wrong? condition, and dynamic import of color schema * Update from fakehash * Update iterm2 config after imported and enabled OneHalfDark Why modified even in another schema...? * Add note * Fix condition branch and merging for darwin --- .gitignore | 3 + home-manager/darwin.nix | 26 + home-manager/home.nix | 9 +- home-manager/packages.nix | 2 +- .../iterm2/com.googlecode.iterm2.plist | 1356 +++++++++++++++++ 5 files changed, 1392 insertions(+), 4 deletions(-) create mode 100644 home-manager/darwin.nix create mode 100644 home/.config/iterm2/com.googlecode.iterm2.plist diff --git a/.gitignore b/.gitignore index cada4797..439a7846 100644 --- a/.gitignore +++ b/.gitignore @@ -11,3 +11,6 @@ dist/ tmp/ .direnv + +# macOS +**/AppSupport diff --git a/home-manager/darwin.nix b/home-manager/darwin.nix new file mode 100644 index 00000000..f9f74bdc --- /dev/null +++ b/home-manager/darwin.nix @@ -0,0 +1,26 @@ +{ pkgs, lib, ... }: + +# FAQ +# +# A. can not found dot files in macOS finder +# Q. https://apple.stackexchange.com/a/250646, consider to use nix-darwin +# https://github.com/LnL7/nix-darwin/blob/16c07487ac9bc59f58b121d13160c67befa3342e/modules/system/defaults/finder.nix#L8-L14 + +# https://github.com/nix-community/home-manager/issues/414#issuecomment-427163925 +lib.mkMerge [ + (lib.mkIf pkgs.stdenv.isDarwin { + xdg.configFile."iterm2/com.googlecode.iterm2.plist".source = ../home/.config/iterm2/com.googlecode.iterm2.plist; + + # Just putting the refererenced file to easy import, applying should be done via GUI and saving to plist + xdg.configFile."iterm2/OneHalfDark.itermcolors".text = builtins.readFile ( + pkgs.fetchFromGitHub + { + owner = "mbadolato"; + repo = "iTerm2-Color-Schemes"; + rev = "3f8a0791ed9a99c10054026c1a8285459117e0f2"; + sha256 = "sha256-ixryDwSNdVtD1H+V72V+hbFiL/JNLU4qpKXWflPQwrQ="; + } + + "/schemes/OneHalfDark.itermcolors" + ); + }) +] diff --git a/home-manager/home.nix b/home-manager/home.nix index 403b971d..1226ed15 100644 --- a/home-manager/home.nix +++ b/home-manager/home.nix @@ -1,7 +1,9 @@ { config, pkgs, lib, ... }: # FAQ -# - How to get sha256? => assume by `lib.fakeSha256` +# +# A. How to get sha256? +# Q. Assume by `lib.fakeSha256` at first, you can get the hash with an error message { imports = [ @@ -10,11 +12,12 @@ ./zsh.nix ./fish.nix ./git.nix + ./darwin.nix # Omit needless parts for Linux in the file ]; home.username = lib.mkDefault "kachick"; # TODO: How to cover lima? The default is /home/kachick.local - home.homeDirectory = if pkgs.stdenv.hostPlatform.isDarwin then "/Users/${config.home.username}" else "/home/${config.home.username}"; + home.homeDirectory = if pkgs.stdenv.isDarwin then "/Users/${config.home.username}" else "/home/${config.home.username}"; # https://github.com/nix-community/home-manager/blob/master/modules/misc/xdg.nix xdg.enable = true; @@ -55,7 +58,7 @@ # This also changes xdg? Official manual sed this config is better for non NixOS Linux # https://github.com/nix-community/home-manager/blob/559856748982588a9eda6bfb668450ebcf006ccd/modules/targets/generic-linux.nix#L16 - targets.genericLinux.enable = if pkgs.stdenv.hostPlatform.isDarwin then false else true; + targets.genericLinux.enable = if pkgs.stdenv.isDarwin then false else true; # Let Home Manager install and manage itself. programs.home-manager.enable = true; diff --git a/home-manager/packages.nix b/home-manager/packages.nix index 9a0159d0..9fab5a63 100644 --- a/home-manager/packages.nix +++ b/home-manager/packages.nix @@ -92,7 +92,7 @@ # pkgs.img2pdf # pkgs.ocrmypdf ] ++ ( - if pkgs.stdenv.hostPlatform.isDarwin then + if pkgs.stdenv.isDarwin then [ ] else [ diff --git a/home/.config/iterm2/com.googlecode.iterm2.plist b/home/.config/iterm2/com.googlecode.iterm2.plist new file mode 100644 index 00000000..7f1d48b5 --- /dev/null +++ b/home/.config/iterm2/com.googlecode.iterm2.plist @@ -0,0 +1,1356 @@ + + + + + Custom Color Presets + + 00n1f3y57m680k18jbxbks1hjlr6cxvn-hm_iterm2OneHalfDark + + Ansi 0 Color + + Alpha Component + 1 + Blue Component + 0.203921568627 + Color Space + Calibrated + Green Component + 0.17254901960800001 + Red Component + 0.15686274509799999 + + Ansi 1 Color + + Alpha Component + 1 + Blue Component + 0.458823529412 + Color Space + Calibrated + Green Component + 0.42352941176499997 + Red Component + 0.87843137254899994 + + Ansi 10 Color + + Alpha Component + 1 + Blue Component + 0.47450980392199998 + Color Space + Calibrated + Green Component + 0.76470588235299997 + Red Component + 0.59607843137299998 + + Ansi 11 Color + + Alpha Component + 1 + Blue Component + 0.48235294117600003 + Color Space + Calibrated + Green Component + 0.75294117647100001 + Red Component + 0.89803921568599998 + + Ansi 12 Color + + Alpha Component + 1 + Blue Component + 0.93725490196100003 + Color Space + Calibrated + Green Component + 0.68627450980399995 + Red Component + 0.38039215686299999 + + Ansi 13 Color + + Alpha Component + 1 + Blue Component + 0.86666666666699999 + Color Space + Calibrated + Green Component + 0.47058823529400001 + Red Component + 0.77647058823500004 + + Ansi 14 Color + + Alpha Component + 1 + Blue Component + 0.76078431372499999 + Color Space + Calibrated + Green Component + 0.71372549019599996 + Red Component + 0.337254901961 + + Ansi 15 Color + + Alpha Component + 1 + Blue Component + 0.89411764705899999 + Color Space + Calibrated + Green Component + 0.87450980392199995 + Red Component + 0.86274509803900001 + + Ansi 2 Color + + Alpha Component + 1 + Blue Component + 0.47450980392199998 + Color Space + Calibrated + Green Component + 0.76470588235299997 + Red Component + 0.59607843137299998 + + Ansi 3 Color + + Alpha Component + 1 + Blue Component + 0.48235294117600003 + Color Space + Calibrated + Green Component + 0.75294117647100001 + Red Component + 0.89803921568599998 + + Ansi 4 Color + + Alpha Component + 1 + Blue Component + 0.93725490196100003 + Color Space + Calibrated + Green Component + 0.68627450980399995 + Red Component + 0.38039215686299999 + + Ansi 5 Color + + Alpha Component + 1 + Blue Component + 0.86666666666699999 + Color Space + Calibrated + Green Component + 0.47058823529400001 + Red Component + 0.77647058823500004 + + Ansi 6 Color + + Alpha Component + 1 + Blue Component + 0.76078431372499999 + Color Space + Calibrated + Green Component + 0.71372549019599996 + Red Component + 0.337254901961 + + Ansi 7 Color + + Alpha Component + 1 + Blue Component + 0.89411764705899999 + Color Space + Calibrated + Green Component + 0.87450980392199995 + Red Component + 0.86274509803900001 + + Ansi 8 Color + + Alpha Component + 1 + Blue Component + 0.203921568627 + Color Space + Calibrated + Green Component + 0.17254901960800001 + Red Component + 0.15686274509799999 + + Ansi 9 Color + + Alpha Component + 1 + Blue Component + 0.458823529412 + Color Space + Calibrated + Green Component + 0.42352941176499997 + Red Component + 0.87843137254899994 + + Background Color + + Alpha Component + 1 + Blue Component + 0.203921568627 + Color Space + Calibrated + Green Component + 0.17254901960800001 + Red Component + 0.15686274509799999 + + Badge Color + + Alpha Component + 0.5 + Blue Component + 0.0 + Color Space + Calibrated + Green Component + 0.0 + Red Component + 1 + + Bold Color + + Alpha Component + 1 + Blue Component + 0.74901962280273438 + Color Space + Calibrated + Green Component + 0.69803923368453979 + Red Component + 0.67058825492858887 + + Cursor Color + + Alpha Component + 1 + Blue Component + 0.80000000000000004 + Color Space + Calibrated + Green Component + 0.701960784314 + Red Component + 0.63921568627500003 + + Cursor Guide Color + + Alpha Component + 0.25 + Blue Component + 0.25098039215700002 + Color Space + Calibrated + Green Component + 0.211764705882 + Red Component + 0.19215686274499999 + + Cursor Text Color + + Alpha Component + 1 + Blue Component + 0.89411764705899999 + Color Space + Calibrated + Green Component + 0.87450980392199995 + Red Component + 0.86274509803900001 + + Foreground Color + + Alpha Component + 1 + Blue Component + 0.89411764705899999 + Color Space + Calibrated + Green Component + 0.87450980392199995 + Red Component + 0.86274509803900001 + + Link Color + + Alpha Component + 1 + Blue Component + 0.93725490196100003 + Color Space + Calibrated + Green Component + 0.68627450980399995 + Red Component + 0.38039215686299999 + + Selected Text Color + + Alpha Component + 1 + Blue Component + 0.89411764705899999 + Color Space + Calibrated + Green Component + 0.87450980392199995 + Red Component + 0.86274509803900001 + + Selection Color + + Alpha Component + 1 + Blue Component + 0.364705882353 + Color Space + Calibrated + Green Component + 0.30588235294100002 + Red Component + 0.27843137254900002 + + + Japanesque + + Ansi 0 Color + + Blue Component + 0.20856963098049164 + Green Component + 0.22283002734184265 + Red Component + 0.20568123459815979 + + Ansi 1 Color + + Blue Component + 0.38021323084831238 + Green Component + 0.24660280346870422 + Red Component + 0.81089001893997192 + + Ansi 10 Color + + Blue Component + 0.17100538313388824 + Green Component + 0.49610027670860291 + Red Component + 0.46425256133079529 + + Ansi 11 Color + + Blue Component + 0.1833186000585556 + Green Component + 0.35025951266288757 + Red Component + 0.46875584125518799 + + Ansi 12 Color + + Blue Component + 0.47479093074798584 + Green Component + 0.34725069999694824 + Red Component + 0.074933364987373352 + + Ansi 13 Color + + Blue Component + 0.56739711761474609 + Green Component + 0.25756442546844482 + Red Component + 0.37626489996910095 + + Ansi 14 Color + + Blue Component + 0.79221165180206299 + Green Component + 0.73511248826980591 + Red Component + 0.46331635117530823 + + Ansi 15 Color + + Blue Component + 0.68263441324234009 + Green Component + 0.71090340614318848 + Red Component + 0.6965288519859314 + + Ansi 2 Color + + Blue Component + 0.35710996389389038 + Green Component + 0.71854472160339355 + Red Component + 0.48304364085197449 + + Ansi 3 Color + + Blue Component + 0.16496320068836212 + Green Component + 0.70341014862060547 + Red Component + 0.91225624084472656 + + Ansi 4 Color + + Blue Component + 0.82943236827850342 + Green Component + 0.60329484939575195 + Red Component + 0.29914027452468872 + + Ansi 5 Color + + Blue Component + 0.76894307136535645 + Green Component + 0.49908417463302612 + Red Component + 0.64749133586883545 + + Ansi 6 Color + + Blue Component + 0.67739421129226685 + Green Component + 0.60572487115859985 + Red Component + 0.22138151526451111 + + Ansi 7 Color + + Blue Component + 0.96549803018569946 + Green Component + 0.98070180416107178 + Red Component + 0.98026049137115479 + + Ansi 8 Color + + Blue Component + 0.34851333498954773 + Green Component + 0.3565424382686615 + Red Component + 0.34871619939804077 + + Ansi 9 Color + + Blue Component + 0.651419997215271 + Green Component + 0.55888265371322632 + Red Component + 0.81987529993057251 + + Background Color + + Blue Component + 0.11759774386882782 + Green Component + 0.11759574711322784 + Red Component + 0.11759926378726959 + + Bold Color + + Blue Component + 0.98028081655502319 + Green Component + 1 + Red Component + 1 + + Cursor Color + + Blue Component + 0.31030187010765076 + Green Component + 0.81186991930007935 + Red Component + 0.92885816097259521 + + Cursor Text Color + + Blue Component + 0.20856963098049164 + Green Component + 0.22283002734184265 + Red Component + 0.20568123459815979 + + Foreground Color + + Blue Component + 0.9264865517616272 + Green Component + 0.96665072441101074 + Red Component + 0.97033727169036865 + + Selected Text Color + + Blue Component + 0.9264865517616272 + Green Component + 0.96665072441101074 + Red Component + 0.97033727169036865 + + Selection Color + + Blue Component + 0.46659797430038452 + Green Component + 0.34349527955055237 + Red Component + 0.089366093277931213 + + + + Default Bookmark Guid + F0A75BE8-90F9-4262-AB1A-56D8ECAF7055 + HapticFeedbackForEsc + + Hotkey + + HotkeyChar + 32 + HotkeyCode + 49 + HotkeyMigratedFromSingleToMulti + + HotkeyModifiers + 524288 + New Bookmarks + + + ASCII Anti Aliased + + Ambiguous Double Width + + Ansi 0 Color + + Alpha Component + 1 + Blue Component + 0.203921568627 + Color Space + Calibrated + Green Component + 0.17254901960800001 + Red Component + 0.15686274509799999 + + Ansi 1 Color + + Alpha Component + 1 + Blue Component + 0.458823529412 + Color Space + Calibrated + Green Component + 0.42352941176499997 + Red Component + 0.87843137254899994 + + Ansi 10 Color + + Alpha Component + 1 + Blue Component + 0.47450980392199998 + Color Space + Calibrated + Green Component + 0.76470588235299997 + Red Component + 0.59607843137299998 + + Ansi 11 Color + + Alpha Component + 1 + Blue Component + 0.48235294117600003 + Color Space + Calibrated + Green Component + 0.75294117647100001 + Red Component + 0.89803921568599998 + + Ansi 12 Color + + Alpha Component + 1 + Blue Component + 0.93725490196100003 + Color Space + Calibrated + Green Component + 0.68627450980399995 + Red Component + 0.38039215686299999 + + Ansi 13 Color + + Alpha Component + 1 + Blue Component + 0.86666666666699999 + Color Space + Calibrated + Green Component + 0.47058823529400001 + Red Component + 0.77647058823500004 + + Ansi 14 Color + + Alpha Component + 1 + Blue Component + 0.76078431372499999 + Color Space + Calibrated + Green Component + 0.71372549019599996 + Red Component + 0.337254901961 + + Ansi 15 Color + + Alpha Component + 1 + Blue Component + 0.89411764705899999 + Color Space + Calibrated + Green Component + 0.87450980392199995 + Red Component + 0.86274509803900001 + + Ansi 2 Color + + Alpha Component + 1 + Blue Component + 0.47450980392199998 + Color Space + Calibrated + Green Component + 0.76470588235299997 + Red Component + 0.59607843137299998 + + Ansi 3 Color + + Alpha Component + 1 + Blue Component + 0.48235294117600003 + Color Space + Calibrated + Green Component + 0.75294117647100001 + Red Component + 0.89803921568599998 + + Ansi 4 Color + + Alpha Component + 1 + Blue Component + 0.93725490196100003 + Color Space + Calibrated + Green Component + 0.68627450980399995 + Red Component + 0.38039215686299999 + + Ansi 5 Color + + Alpha Component + 1 + Blue Component + 0.86666666666699999 + Color Space + Calibrated + Green Component + 0.47058823529400001 + Red Component + 0.77647058823500004 + + Ansi 6 Color + + Alpha Component + 1 + Blue Component + 0.76078431372499999 + Color Space + Calibrated + Green Component + 0.71372549019599996 + Red Component + 0.337254901961 + + Ansi 7 Color + + Alpha Component + 1 + Blue Component + 0.89411764705899999 + Color Space + Calibrated + Green Component + 0.87450980392199995 + Red Component + 0.86274509803900001 + + Ansi 8 Color + + Alpha Component + 1 + Blue Component + 0.203921568627 + Color Space + Calibrated + Green Component + 0.17254901960800001 + Red Component + 0.15686274509799999 + + Ansi 9 Color + + Alpha Component + 1 + Blue Component + 0.458823529412 + Color Space + Calibrated + Green Component + 0.42352941176499997 + Red Component + 0.87843137254899994 + + BM Growl + + Background Color + + Alpha Component + 1 + Blue Component + 0.203921568627 + Color Space + Calibrated + Green Component + 0.17254901960800001 + Red Component + 0.15686274509799999 + + Background Image Location + + Background Image Mode + 0 + Badge Color + + Alpha Component + 0.5 + Blue Component + 0.0 + Color Space + Calibrated + Green Component + 0.0 + Red Component + 1 + + Blend + 0.50089996780174373 + Blinking Cursor + + Blur + + Bold Color + + Alpha Component + 1 + Blue Component + 0.74901962280273438 + Color Space + Calibrated + Green Component + 0.69803923368453979 + Red Component + 0.67058825492858887 + + Character Encoding + 4 + Close Sessions On End + + Columns + 80 + Command + + Cursor Color + + Alpha Component + 1 + Blue Component + 0.80000000000000004 + Color Space + Calibrated + Green Component + 0.701960784314 + Red Component + 0.63921568627500003 + + Cursor Guide Color + + Alpha Component + 0.25 + Blue Component + 0.25098039215700002 + Color Space + Calibrated + Green Component + 0.211764705882 + Red Component + 0.19215686274499999 + + Cursor Text Color + + Alpha Component + 1 + Blue Component + 0.89411764705899999 + Color Space + Calibrated + Green Component + 0.87450980392199995 + Red Component + 0.86274509803900001 + + Custom Command + No + Custom Directory + No + Default Bookmark + No + Description + Default + Disable Window Resizing + + Flashing Bell + + Foreground Color + + Alpha Component + 1 + Blue Component + 0.89411764705899999 + Color Space + Calibrated + Green Component + 0.87450980392199995 + Red Component + 0.86274509803900001 + + Guid + F0A75BE8-90F9-4262-AB1A-56D8ECAF7055 + Horizontal Spacing + 1 + Idle Code + 0 + Jobs to Ignore + + rlogin + ssh + slogin + telnet + + Keyboard Map + + 0x2d-0x40000 + + Action + 11 + Text + 0x1f + + 0x32-0x40000 + + Action + 11 + Text + 0x00 + + 0x33-0x40000 + + Action + 11 + Text + 0x1b + + 0x34-0x40000 + + Action + 11 + Text + 0x1c + + 0x35-0x40000 + + Action + 11 + Text + 0x1d + + 0x36-0x40000 + + Action + 11 + Text + 0x1e + + 0x37-0x40000 + + Action + 11 + Text + 0x1f + + 0x38-0x40000 + + Action + 11 + Text + 0x7f + + 0xf700-0x220000 + + Action + 10 + Text + [1;2A + + 0xf700-0x240000 + + Action + 10 + Text + [1;5A + + 0xf700-0x260000 + + Action + 10 + Text + [1;6A + + 0xf700-0x280000 + + Action + 11 + Text + 0x1b 0x1b 0x5b 0x41 + + 0xf701-0x220000 + + Action + 10 + Text + [1;2B + + 0xf701-0x240000 + + Action + 10 + Text + [1;5B + + 0xf701-0x260000 + + Action + 10 + Text + [1;6B + + 0xf701-0x280000 + + Action + 11 + Text + 0x1b 0x1b 0x5b 0x42 + + 0xf702-0x220000 + + Action + 10 + Text + [1;2D + + 0xf702-0x240000 + + Action + 10 + Text + [1;5D + + 0xf702-0x260000 + + Action + 10 + Text + [1;6D + + 0xf702-0x280000 + + Action + 11 + Text + 0x1b 0x1b 0x5b 0x44 + + 0xf703-0x220000 + + Action + 10 + Text + [1;2C + + 0xf703-0x240000 + + Action + 10 + Text + [1;5C + + 0xf703-0x260000 + + Action + 10 + Text + [1;6C + + 0xf703-0x280000 + + Action + 11 + Text + 0x1b 0x1b 0x5b 0x43 + + 0xf704-0x20000 + + Action + 10 + Text + [1;2P + + 0xf705-0x20000 + + Action + 10 + Text + [1;2Q + + 0xf706-0x20000 + + Action + 10 + Text + [1;2R + + 0xf707-0x20000 + + Action + 10 + Text + [1;2S + + 0xf708-0x20000 + + Action + 10 + Text + [15;2~ + + 0xf709-0x20000 + + Action + 10 + Text + [17;2~ + + 0xf70a-0x20000 + + Action + 10 + Text + [18;2~ + + 0xf70b-0x20000 + + Action + 10 + Text + [19;2~ + + 0xf70c-0x20000 + + Action + 10 + Text + [20;2~ + + 0xf70d-0x20000 + + Action + 10 + Text + [21;2~ + + 0xf70e-0x20000 + + Action + 10 + Text + [23;2~ + + 0xf70f-0x20000 + + Action + 10 + Text + [24;2~ + + 0xf729-0x20000 + + Action + 10 + Text + [1;2H + + 0xf729-0x40000 + + Action + 10 + Text + [1;5H + + 0xf72b-0x20000 + + Action + 10 + Text + [1;2F + + 0xf72b-0x40000 + + Action + 10 + Text + [1;5F + + + Link Color + + Alpha Component + 1 + Blue Component + 0.93725490196100003 + Color Space + Calibrated + Green Component + 0.68627450980399995 + Red Component + 0.38039215686299999 + + Mouse Reporting + + Name + Default + Non Ascii Font + Monaco 12 + Non-ASCII Anti Aliased + + Normal Font + Menlo-Regular 12 + Option Key Sends + 0 + Prompt Before Closing 2 + + Right Option Key Sends + 0 + Rows + 25 + Screen + -1 + Scrollback Lines + 1000 + Selected Text Color + + Alpha Component + 1 + Blue Component + 0.89411764705899999 + Color Space + Calibrated + Green Component + 0.87450980392199995 + Red Component + 0.86274509803900001 + + Selection Color + + Alpha Component + 1 + Blue Component + 0.364705882353 + Color Space + Calibrated + Green Component + 0.30588235294100002 + Red Component + 0.27843137254900002 + + Send Code When Idle + + Shortcut + + Silence Bell + + Sync Title + + Tags + + Terminal Type + xterm-256color + Transparency + 0.15031527601522843 + Unlimited Scrollback + + Use Bold Font + + Use Bright Bold + + Use Italic Font + + Use Non-ASCII Font + + Vertical Spacing + 1 + Visual Bell + + Window Type + 0 + Working Directory + /Users/kachick + + + OpenArrangementAtStartup + + OpenNoWindowsAtStartup + + PMPrintingExpandedStateForPrint2 + + PointerActions + + Button,1,1,, + + Action + kContextMenuPointerAction + + Button,2,1,, + + Action + kPasteFromClipboardPointerAction + + Gesture,ThreeFingerSwipeDown,, + + Action + kPrevWindowPointerAction + + Gesture,ThreeFingerSwipeLeft,, + + Action + kPrevTabPointerAction + + Gesture,ThreeFingerSwipeRight,, + + Action + kNextTabPointerAction + + Gesture,ThreeFingerSwipeUp,, + + Action + kNextWindowPointerAction + + + Print In Black And White + + ShowFullScreenTabBar + + SoundForEsc + + UseLionStyleFullscreen + + VisualIndicatorForEsc + + WordCharacters + /-+\~_. + findMode_iTerm + 0 + +