是否可以在OS X上运行Nautilus?


Answers:


15

看起来它在MacPorts中可用,因此您可以安装MacPorts,然后使用该端口安装Nautilus:

sudo port install nautilus  

然后,您应该可以使用nautilusterminal命令运行它。


在安装过程中,您可能会看到以下内容:

############################################################################
# Startup items have been generated that will aid in
# starting dbus with launchd. They are disabled
# by default. Execute the following command to start them,
# and to cause them to launch at startup:
#
# sudo launchctl load -w /Library/LaunchDaemons/org.freedesktop.dbus-system.plist
# launchctl load -w /Library/LaunchAgents/org.freedesktop.dbus-session.plist
############################################################################

手动运行命令应该足以nautilus在安装后直接运行(无需重新引导)。


它告诉我Error: Port nautilus not found
Ben Leggiero

@ BenC.R.Leggiero 有关如何在MacPorts上获得支持的信息,请参见trac.macports.org
nohillside

在OSX 10.12 Sierra上它告诉您Error: Failed to build gstreamer1-gst-plugins-bad
AnthonyB

嗯,不确定为什么是@AnthonyB。这个答案已经超过6年了。gstreamer1-gst-plugins-bad如果有一个配置选项可以排除构建错误,则可能要查看构建错误的原因,或者更好。
乔什(Josh)

我发表评论主要是为了通知其他用户它可能无法在OSX 10.12上运行。我没想到我的评论会有答案,但是感谢@Josh。似乎gstreamer1-gst-plugins-bad不再被维护。我有一个错误代码CHILDSTATUS 660 2。我将进行更深入的搜索,以便能够在OSX 10.12上安装nautilus。
AnthonyB

10

[编辑] 当我最初写这个答案时,还有另一个答案和一些评论,它们涉及运行Nautilus 而不是 Finder的问题:换句话说,如何防止Finder完全运行。在这种情况下,我以原始形式写的答案得到了澄清和/或提供了一种替代方法。

原来的作者似乎已经删除了该答案和相关评论。没有该答案来提供上下文,我将无法理解我原来的答案似乎是从哪儿冒出来的(因此请投下赞成票?)。我将尝试对其进行重做,以提供删除后的答案有助于创建的必要上下文。

乔什(Josh)关于MacPorts的答案解决了如何安装nautilus,但没有解决如何“代替Finder”运行它。

在其他答案中,关于是否有可能阻止Finder运行似乎有些困惑。

与Dock等应用程序不同,Finder不被视为“必需”应用程序。例如,如果您要编写一个AppleScript tell application "Dock" to quit"并运行它,登录窗口将立即重新启动Dock,因为它假定Dock必须一直在运行。但是,只要使用Finder,只要您以允许OS X知道有明确意图这样做的方式退出它,登录窗口就不会重新启动它。

为此,您要做的就是简单地告诉Finder退出而不是试图杀死它。当您通过使用Force-Quit选项或在Terminal中使用kill或强行终止Finder时killallloginwindow(或launchd对于您的用户帐户)将立即尝试重新启动它,因为它发现它“意外地”终止了。

告诉Finder通过Apple Event退出不会导致它自动重新启动。

可以在登录时运行如下所示的AppleScript来退出Finder:

property runningApps : {}
property assureQuitMenuItem : true

tell application "System Events" to set runningApps to name of every application process

if (runningApps contains "Finder") then
    tell application "Finder" to quit
end if

if (assureQuitMenuItem) then
    set quitMenuItem to missing value
    try
        set quitMenuItem to (do shell script "/usr/bin/defaults read com.apple.finder QuitMenuItem")
    on error
        set quitMenuItem to "0"
    end try
    if quitMenuItem = "0" then
        do shell script "/usr/bin/defaults write com.apple.finder QuitMenuItem 1"
    end if
end if

申请表中此内容的保存版本为:QuitFinder.zip

(您可以通过将脚本应用程序图标拖动到AppleScript Editor的应用程序图标上,在AppleScript Editor中打开该应用程序以查看其内容)。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.