Take the 2-minute tour ×
Ask Different is a question and answer site for power users of Apple hardware and software. It's 100% free, no registration required.

For whatever perverse reasons I wish to rename the Downloads folder to Temp. I would also be happy with a way of making it appear to me, in both the GUI and the CLI, as Temp. I am aware I can do this via Terminal with root privileges, but the fact that I need root privileges to do so suggests to me that something might break. Will something indeed break if I rename the folder, and if not, is there a gentler way of renaming it thansudo mv Downloads Temp?

I will also be happy (though less so) with confirmation that making Downloads into a symbolic link to a different folder won't break anything.

share|improve this question
1  
I wouldn't bother with that. As soon as you rename the folder and reboot (or even logout/login), OS X will recreate the Downloads folder. It has actually been listed as "required" folder under Lion (try deleting it through the Finder). You are going to have to live with it I'm afraid. –  cksum Sep 5 '11 at 5:29
    
The proposed solution by @Daniel below is an elegant workaround. –  user479 Sep 5 '11 at 6:29
add comment

3 Answers

up vote 9 down vote accepted

To extend the idea raised by cksum in a comment already:

  • Create a symbolic link to Downloads with the name you want: ln -s ~/Downloads ~/Temp
  • Hide the real Downloads folder from the Finder: chflags hidden ~/Downloads

All browsers etc. will still save to Downloads (so you don't have to reconfigure anything) but you can access your files in Temp without having to bother with Downloads any longer.

share|improve this answer
1  
That's a very cool way to do it! –  daviesgeek Sep 5 '11 at 16:04
    
Does this solve the tab completion ambiguity between Do_cuments and Do_wnloads in Terminal, if either Documents or Downloads is hidden? For some reason I would doubt it. –  Jared Updike Sep 11 '11 at 23:47
    
Downloads is only hidden from Finder, not from bash (running in Terminal), so the completion ambiguity on Do remains. –  patrix Sep 12 '11 at 8:01
add comment

You can create a new folder named "Temp" in your home directory, then in Safari, select Preferences (Command ,) enter image description here

and select "Other" from the drop-down menu for "Save downloaded files to:" enter image description here

Select your newly created Temp folder. If you want a stack for it in the Dock, or you want it in the Finder sidebar, drag it to the appropriate places.

If you want the Downloads folder to disappear, in Terminal, you can run the command

  chflags hidden ~/Downloads
share|improve this answer
    
This is an elegant solution. +1 for you. –  user479 Sep 5 '11 at 6:29
    
But this will only work for Safari, right? Or do other applications also check this setting? –  Thilo Sep 5 '11 at 7:14
    
@Thilo, yes, any app that can download a file to your Mac will have an option on where you'd like the files initially stored (not just browsers). –  cksum Sep 5 '11 at 7:28
2  
@Daniel, I just had a flash, maybe you can add it to your answer: Do what Daniel suggests, and then run "chflags hidden Downloads" to hide the download folder in Finder (will still show up in Terminal I'm afraid). OS X should respect your hidden flag, probably only resetting it on OS X point revision updates. For all intents and purposes, that should be as close as you can get to removing Downloads and getting a "Temp" folder. –  cksum Sep 5 '11 at 7:30
1  
So it's a separate setting for every app? That's unfortunate. –  Thilo Sep 5 '11 at 7:46
add comment

Here's a way you can do it without actually creating a new folder or mucking around with symlinks.

In an editor like TextWrangler or BBEdit, open this file:

/System/Library/CoreServices/SystemFolderLocalizations/en.lproj/SystemFolderLocalizations.strings

Inside, you'll see stuff like this:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>Applications</key>
    <string>Applications</string>
    <key>Compositions</key>
    <string>Compositions</string>
    <key>Deleted Users</key>
    <string>Deleted Users</string>
    <key>Desktop</key>
    <string>Desktop</string>
    <key>Documents</key>
    <string>Documents</string>
    <key>Downloads</key>
    <string>Downloads</string>
    <key>Drop Box</key>
    <string>Drop Box</string>
    ...
</dict>
</plist>

This is how the system knows how to translate folder names. Since this is the "en.lproj" ("English language project"), you can alter the values in this file to be what you want. (Alternatively, if you run Mac OS X in Spanish, you'd use the version of the file inside the "es.lproj" folder) So, for example, you might change:

    <key>Downloads</key>
    <string>Downloads</string>

To be:

    <key>Downloads</key>
    <string>Downloaded Stuff</string>

Save the file (you'll probably have to type in an administrator password to do so), and then pop open Terminal and type killall Finder. When Finder finishes relaunching, you'll see that your Downloads folder now has the name "Downloaded Stuff".

This is the much safer way to do it, because some apps may be hardcoding a path to the downloads folder as @"~/Downloads" and then expanding the tilde. Depending on what they're doing, this may or may not work with symlinks (meaning the apps may not work properly). With the method above, you haven't changed the folder at all. It's still called "Downloads", but it just gets shown as something else. (However, if you ls your home directory in Terminal, it will still show "Downloads" and not "Downloaded Stuff")

The downside of this approach is that you're altering a system file, which means this could get reverted when you update your system, etc.

(Source: http://hints.macworld.com/article.php?story=20020926061746306)

share|improve this answer
1  
I like your solution Dave, it's the cleanest but it's not any safer. Since the download folder is just hidden and the symlink points to it (not the other way around), there'll never any conflicts, hardcoding or not. Your solution is just a lot cleaner ;) –  cksum Sep 6 '11 at 1:08
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.