diff options
| author | Ricardo Pinto <hessian_loom_0u@icloud.com> | 2024-05-15 07:49:00 +0100 |
|---|---|---|
| committer | Ricardo Pinto <hessian_loom_0u@icloud.com> | 2024-05-15 07:49:00 +0100 |
| commit | 93913d14a310efc40fc84d58d278b96c73c37c65 (patch) | |
| tree | d6c4265c778b4fbd393e9f1141fc10a91375c082 | |
| parent | e1cacc63e6e324ae95e65e8aaea62dec74686208 (diff) | |
Add file or directory tile to Dock persistent others
| -rw-r--r-- | modules/system/defaults/dock.nix | 2 | ||||
| -rw-r--r-- | tests/fixtures/system-defaults-write/activate-user.txt | 8 | ||||
| -rw-r--r-- | tests/system-defaults-write.nix | 2 |
3 files changed, 8 insertions, 4 deletions
diff --git a/modules/system/defaults/dock.nix b/modules/system/defaults/dock.nix index 8c9741c..1e8797f 100644 --- a/modules/system/defaults/dock.nix +++ b/modules/system/defaults/dock.nix @@ -146,7 +146,7 @@ in { apply = value: if !(isList value) then value - else map (folder: { tile-data = { file-data = { _CFURLString = folder; _CFURLStringType = 15; }; }; }) value; + else map (folder: { tile-data = { file-data = { _CFURLString = "file://" + folder; _CFURLStringType = 15; }; }; tile-type = if strings.hasInfix "." (last (splitString "/" folder)) then "file-tile" else "directory-tile"; }) value; }; system.defaults.dock.show-process-indicators = mkOption { diff --git a/tests/fixtures/system-defaults-write/activate-user.txt b/tests/fixtures/system-defaults-write/activate-user.txt index 5fa5952..1650e21 100644 --- a/tests/fixtures/system-defaults-write/activate-user.txt +++ b/tests/fixtures/system-defaults-write/activate-user.txt @@ -265,11 +265,13 @@ defaults write com.apple.dock 'persistent-others' $'<?xml version="1.0" encoding <key>file-data</key> <dict> <key>_CFURLString</key> - <string>~/Documents</string> + <string>file://~/Documents</string> <key>_CFURLStringType</key> <integer>15</integer> </dict> </dict> + <key>tile-type</key> + <string>directory-tile</string> </dict> <dict> <key>tile-data</key> @@ -277,11 +279,13 @@ defaults write com.apple.dock 'persistent-others' $'<?xml version="1.0" encoding <key>file-data</key> <dict> <key>_CFURLString</key> - <string>~/Downloads</string> + <string>file://~/Downloads/file.txt</string> <key>_CFURLStringType</key> <integer>15</integer> </dict> </dict> + <key>tile-type</key> + <string>file-tile</string> </dict> </array> </plist>' diff --git a/tests/system-defaults-write.nix b/tests/system-defaults-write.nix index e17d950..7624bba 100644 --- a/tests/system-defaults-write.nix +++ b/tests/system-defaults-write.nix @@ -47,7 +47,7 @@ system.defaults.dock.autohide-delay = 0.24; system.defaults.dock.orientation = "left"; system.defaults.dock.persistent-apps = ["MyApp.app" "Cool.app"]; - system.defaults.dock.persistent-others = ["~/Documents" "~/Downloads"]; + system.defaults.dock.persistent-others = ["~/Documents" "~/Downloads/file.txt"]; system.defaults.screencapture.location = "/tmp"; system.defaults.screensaver.askForPassword = true; system.defaults.screensaver.askForPasswordDelay = 5; |
