diff --git a/modules/applications/nautilus/home/nixos.nix b/modules/applications/nautilus/home/nixos.nix index 26f65d4..a1712a9 100644 --- a/modules/applications/nautilus/home/nixos.nix +++ b/modules/applications/nautilus/home/nixos.nix @@ -25,6 +25,7 @@ in systemd.user.sessionVariables.NAUTILUS_4_EXTENSION_DIR = nautilusExtensionDir; xdg.dataFile."nautilus-python/extensions/open-in-editor.py".text = '' + import os import subprocess from gi.repository import GObject, Nautilus @@ -75,6 +76,12 @@ in return paths + @staticmethod + def get_working_directory(paths): + path = paths[0] + + return path if os.path.isdir(path) else os.path.dirname(path) + @staticmethod def launch(_item, command): subprocess.Popen( @@ -101,6 +108,22 @@ in items.append(item) + item = Nautilus.MenuItem( + name=f"OpenInEditor::{context}::ghostty", + label="Ghostty で開く", + ) + + item.connect( + "activate", + self.launch, + [ + "${lib.getExe pkgs.ghostty}", + f"--working-directory={self.get_working_directory(paths)}", + ], + ) + + items.append(item) + return items def get_file_items(self, files): diff --git a/modules/applications/noctalia/home.nix b/modules/applications/noctalia/home.nix index 14f8a69..38485c0 100644 --- a/modules/applications/noctalia/home.nix +++ b/modules/applications/noctalia/home.nix @@ -193,7 +193,7 @@ in }; wallpaper = { - enabled = true; + enabled = lib.mkDefault true; directory = "~/.wallpapers"; fill_mode = "crop"; automation = {