23
votes
Ask Tildes: How do you organize the files on your computer?
I thought it'd be fun to see how some of you keep your computer organized. Do you follow some general scheme, keep it arbitrary, throw everything on the Desktop or in Downloads or just abuse the search bar?
Feel free to go as general or as in-depth as you want.
I'll link my answer (and others) from this question last year.
https://tildes.net/~tech/kcl#comment-4c6a
I'll start off. My home directory is separated into eight folders, each with their own hierarchies and conventions.
Occasionally (read: very often) my home folder is also used as a staging ground for whatever I'm currently working on. Notes, some software packages, configuration files, and Raspberry Pi images frequently find their way there before being moved to the perpetual mess that is
~/Downloads
.I have a few specialized dirs right off
~
, but also these general dirs:~/large
for things to be excluded from backup. That means almost all video files, git repos, exported lossless audio (from audio production),tmp
,download
,unpack
(for unpacking zips and tarballs), and a few other things. For "raws" (files which come from physical recording devices), I store them in this dir tree by date of file transfer (offload from physical media).~/notes
for.txt
and.md
files, most of which are in the formtopicname-YYYY-mm-dd.md
. When I phone service providers or vendors (e.g. ISP, bank, utilities), I take notes of every call in here.~/etc
and a~/usr/**/*
tree, for when I want tomake install
as non-root~/bin
for some convenience.sh
scripts~/orgname
dirs named after organizations I'm a part of~/career
~/music
for compositions and songwriting. Chords, lyrics, sheet music.~/.*
dirs made by various appsI also keep
/home
on a separate disk (HDD) than the main/
filesystem (SSD). I recently had a disk begin failing, and this separation made recovery from backup pretty smooth. More or less the only thing needing backup on/
is/etc
.I also use separate users and homedirs for certain kinds of work/clients. This also affords completely separate browser profile dirs and SSH keys.
Steam is installed in a chroot, also with its own
/home/steam
dir within the chroot, totally separate from my main/home/*
dirs.That’s one thing that I genuinely hate about current Linux platforms is all the dotfiles and folders that litter my home directory. I wish everything respected a ~/.conf/ directory at the very least.
The Arch Wiki has a list of workarounds for specific programs, to configure them to support the XDG standards (
.config
,.local
,.cache
, etc.). Though, there are a fair few programs, where the devs don't implement any support (even just to add the option), for various reasons, both good and bad.Thanks for the link. I know XDG is entirely configurable but even the defaults frustrate me — why do I need a .local, .config etc. in my top level home folder? What I want is either a single top-level folder in my home directory — or better yet /etc/${user} that’s writeable by the user.
I could spend time setting up XDG to my liking but like you say it’s kind of up to each application dev whether or not they respect it.
Well, "organise" is a very strong word.
Some things are organised better than others. I have hundreds of GB of photos dating back to pre-digital days, which are organised by camera/year/month. Occasionally camera/year/event (eg: wedding, holiday, etc, which may also contain some sub-structure). I'm vaguely hoping that one day I'll be able to point some software, perhaps ML/AI based, at my photos directory and have it make some sort of sense of things for me.
My Music directory on my NAS is ridiculous. There's a top level directory labelled "sorted" which has sorted/a, sorted/b, etc. then letter/artist/album/song.mp3. But there's also unsortedX where X = 1-200 or so. Each unsorted directory may contain multiple subdirectories before you get to any artist/album structure, if there's even anything like that - some of them are just a few hundred files. Additionally there's a bunch of directories called things like "psytrance" and "techno bangers" and I have no idea what's in there, apart from the obvious. This mess dates back to student days when any suitably equipped visitor to the house plugged in their external drive or laptop and we cross-copied each other's mp3 collections. I do know it runs to about 250GB, I don't know what's in there and I don't touch it any more. Streaming has saved me from having to address the issue.
My home directory is mostly just various scratch dirs like ~/downloads ~/projects ~/books for stuff I haven't dealt with/finished, until things get moved into ~/backup/ which is where syncing to cloud/NAS/etc happens mostly automatically. This folder contains, to my shame, multiple subdirectories of the format documents/backup/upback/old/, some going back to last century. They are at least backed up.
On-disk organisation is very similar to how my physical work and living spaces are organised, small areas of high organisation - eg, my ~/backup/scripts and my ~/current-work dirs are very well structured - but overall it's just a loose shambles which I mostly just remember my way around. I'm better at remembering physical stuff (ask me where any tool I own is) than virtual but I can still tell you where most things are from memory. Music folder notwithstanding.
Neat question. I generally use the default macOS directory structure with a few tweaks:
Note that the
Desktop/
folder doesn't actually appear on the desktop; I use a hidden setting for it to not show anything.I'd be interested to see what people think of my directory structure. It comes as the result of many years of re-organising, never fully satisfactory but I can maintain it, which is the most important thing.
/inbox: the approved mess zone i.e. unsorted downloads and resources. Temporary folders of low importance that I need but will eventually move or delete when done. Contains sync folders, namely megasync and syncthing which I use for:
/codex: also synced to my phone with a ton of ignore patterns and folder exclusions to reduce the size down to primarily plaintext.
/media: music collection and other fun things. I run a local media server (minidlna) to stream to our phones or tv, samba share to handle books.
/data: Not synced and never will be, ideally. Photo albums, backups, mailboxes, and softcopy of important records and documents. Thinking about it now, perhaps photo albums should be moved to media as a samba share...
/home: I keep my personal data (above) in a big separate partition, and reserve /home for program installations, namely games and some scripts. Learnt to do this back on Windows, because C: drive is a mess, but it makes sense on Linux too.
I don't understand people having stuff on the desktop. My Mac has exactly zero things on it, for years now. On my Windows PC, random apps and Windows itself keep throwing stuff in the corner but it's still like 5 program links as soon as I get around deleting stuff.
For my "files", I must admit I've become dependent on Dropbox. I've looked at just about every backup/cloud solution available and eventually had to give in, buying a yearly subscription of the default 1TB offer (now 2TB, actually). It handles everything so seamlessly it's basically invisible, yet I can quickly share large PDFs per link over mail and such. I hate each and every attempt by Dropbox to be "more" than syncing a folder in the background and actively have to fight it off. I hope it never discontinues "just running in the background" mode. The folder structure itself is basically just a huge "Dropbox/work/" folder (which I actually bought it for) and a few others for miscellaneous stuff (like recently, "Dropbox/programming/advent_of_code_2020/").
I guess the only regular folder I still actively use is "Downloads/". I try and empty it every couple of weeks but it has a few files from a client still sitting on it I don't really need but don't quite dare to delete yet.
(Speaking for myself): I just don't like the idea of putting potentially sensitive data up in the cloud, even encrypted. Anything that goes outside the home network is something I'm [relatively] okay with getting compromised/exposed.
For a Dropbox alternative, I host my own Nextcloud, and it has been working well for me and the people I interact with, across multiple devices and platforms. Both for sending and receiving files.
I think he was talking about the desktop where icons go, not having files offline.
I almost never put stuff online too. I backup to an external HDD and some sensitive files are on google drive, but i encrypt before uploading.
Ah I see that you're probably right. He said:
I treat my desktop like I treat the top of my desk. It houses things that I need to sort that I may be working on, but haven't dealt with. With some frequency, I move sort and move things into their required folders / places. This is not how I deal with work related things which are always in a repository and in a particular folder.
Much like the top of a desk, it's convenient to keep things there that haven't made it to their final organized location.
My windows desktop machine, for example, has 2 icons on it: Recycle Bin and "wall_tile_bricks_28385.png" which is... probably going into the recycle bin right now.
My work desktop has about a hundred things on it, mostly screen shots, but there are a couple of other photoshop files for personal stuff, and a few folders of test data for some projects.
The desktop as a link collector made more sense when the only way to open a program was to click on the start button > programs > whatever the name of the publisher was > the actual program > the program start icon. This has vastly improved in the latter versions of windows but there is no need to remove the functionality.
It also serves as an ad space of sorts "You have installed software from us, let us put icons everywhere to improve brand awareness"
I have large folders broken down into smaller folders. Nothing really too special. All my OS stuff and bigger programs are on an m.2 ssd and the rest is on a separate 1tb hdd. Back up stuff on a 500gb hdd.
On my desktop I have
_Convert is pretty much only for converting files (video, audio), and _Process is my working directory; pretty much all temporary stuff.
On my NAS, _Projects, its all organized by Client/YYYY-MM-Project Name. Within every folder is a _Process subfolder for working in (not temporary), and a _Final directory for finalized stuff. If I have to work away from home (rare), I copy down the relevant folders to the local _Projects directory, then sync up when I get home.
All of my personal documents are also in _Projects under _Personal, then sorted in the same way.
I don't keep anything of value on this or any of my systems.
All media is sorted off by type on the ol NAS. TV has TV (current shows), TV-Other (stuff I'll eventually watch), and TV-Watch (older stuff I want to watch right away), Movies has the same structure. All music is Artist/Date Album/No. Title
... and that about sums it up. Pretty much everything is one of two structures. Not very exciting.
I don't have any photos or videos, but if I did, I'd probably sort them YYYY-MM-Event or something.
This is how my home folder is organized:
And this is my "NAS" (read: old computer with a 1TB drive from another old computer)
I have a ""proper"" categorization and naming system on my NAS, but I haven't been able to use it enough for it to matter. Apparently I don't have as much data to hoard as I expected.
I recently adopted a similar strategy to your /snip idea. i happen to call mine /dev since 99% of the snippets pertain to something that i'm developing...but the idea is exactly the same as yours. Its funny how i used to keep scraps and snippets of stuff all over the place (besides the usual ~/Downloads areas)...but now using this single arrea for snippets helps me to remind myself to come back to whatever it is that i was thinking about. I won't go so far as to say that it is like a to-do list, but it has helped me. Neat to see that i'm not the only one with a /snip-like area! :-)
Laptop:
Server is mildly more interesting. I use
/srv
as my catch-all directory to build out the server functionsEverything is converted to lowercase with exception to what is in seeding, which has to maintain the same format.
Ocasionally a ~/cell folder pops up if i mount my smartphone and a ~/convert folder when i convert flacs to mp3/opus.
I have an external 2TB HDD that i run a script to rsync specific folders for backup.
I'm not creative, and we'll just ignore %USER%\Desktop folder in Windows on my desktop, which is the victim of years of "I'll chuck this here for a minute." I just cleared 113 GB from my Downloads folder, even, and had been abusing the hell out the Explorer search feature to find important things I need to re-download.
I use the default stuff, Pictures, Music, Documents, what have you, but sometimes what looks like one is another, like music samples that go to Documents\Samples\SampleLibraryName, or wallpaper projects in Documents\ProjectName (I dabble in inkscape making flat wallpapers to match whichever distro/desktop theme I'm using). I keep my programming stuff in Documents\Programming\Language, GIT-repo sourced stuff in Documents\git, because it's still just storage, even if it's a repo I'm working in.
If I have programs that are user-specific with no installers, I'll sort them by program: (Documents\Renoise\rns_<version>.exe, DOSBox\Game(launch_scripts | c_folder | disk_image(s).format), and follow the same convention across operating systems so I know where it is.
My external drive I put the big stuff on is sort of similar. ROMS, ISOs, Downloads (important torrents/downloads that aren't the previous two), Games (with GOG and other installers I think to nab from my online library), Music (my family's music catalog from over the years), sorted, organized versions of tracks I upload to Soundcloud so I know what's been published, with which art, etc.
Using
dev
,lib
, etc. in this way might seem stupid but for whatever reason, I like misappropriating system folder names in $HOME.I try to keep my desktop and downloads folders clean, so this is the sctructure of my
$HOME
folder:Applications/
: I really don't save apps on my home folder, I'll delete this if I could.bin/
: on here I add shell scripts which are too specific for my dotfiles, this folder is added to my $PATHBox Sync/
: Folder to sync with Box, here I save raw photos from my camera.Desktop/
: More of this below.Documents/
: I really don't save anything here, just OS stuff like iTunes library and stuff like that.dotfiles/
: my dotfiles which I'm proud of. https://github.com/hersonhn/dotfilesDownloads/
: I keep this folder clean, the only subfolder that's always there is one to save torrentsDropbox/
: on dropbox I save files that I like too keep but are not *that* important, like notes to configure postgres, or videogames assets, the only thing important here is my resume.Games/
: just random roms I download to see how the games look, I really don't play games here.Manga/
: mangas that I read using YAC.MEGAsync/
: this is just for downloads, I don't keep anything here.Movies/
: On here I keep movies that I will watch and series I'm currently watching, after I watch them I delete them to keep my computer clean.Music/
: Music that is not on spotify.Pictures/
: Wallpapers, and photos from my iphones, for the photos I keep them chronologically with the time as a prefix in the filename and just keep important photos (removing duplicates and memes and anything unimportant).Playground/
: This is where Icd
when I need to do some work on the terminal (to keep my~
folder free of junk.)Projects/
: repos of projects I'm working on, separated in amine/
and awork/
folders.Public/
: idk system stuff.On my desktop:
screenshots/
: where the screenshots get saved to keep the desktop clean.stuff/
: just random stuff, files that I don't know if I'll keep or delete.Most of my files are separated into directories by the month of creation, and then updates and modifications are saved into the appropriate month afterwards.
I keep separate directories for focused things such as music, books, and projects (usually quick dev tests). I try to keep a fairly simple structure after trying a thousand convoluted complex systems.
It's a mess mostly (been keeping my files for like 20 years) but I mostly organize things by partitions/disk. I try to keep my system SSD clean, then I have another drive for applications, a partition for music and one for photos & videos.
For the most part, everything is in random folders everywhere. My downloads folder gets cleaned out once a year when I sort oldest to newest. My desktop is the worst. I have years of where I throw a bunch of stuff on my desktop, it gets cluttered, so I make a folder called "Desktop Old" and throw everything in there.
Then when I get another messy desktop, everything goes into "Desktop Old v2", and so on. Its like mining decades of my life history when I dive into each folder layer, like layers in the Earth's crust. I am just terrible at keeping stuff organized and following a scheme. Same story in real life too. It's like I have "organized chaos".
Type of media/ Source of media/ Year or Genre or Random categorization that seemed to make sense at the time
~/Dropbox/
|--- apps
||||||||||--- websites that i manage, local apps that i build, scripts, etc.
|--- drafts (meeting notes and journal/diary notes, before archiving them into a YEAR in ~/ops section below)
|--- finances (financial-related files)
|--- hr (my resume, job applications for all jobs that i apply to, work-related healthcare files, 401k, etc.)
|--- library (reference material)
||||||||||--- my own man pages and other knowledge base content (e.g. command line references/how tos)
||||||||||--- creative writings (e.g. poems, short stories, etc.)
|--- logs
||||||||||--- misc. reports (in cases where they don't live with a specific project)
|--- media
||||||||||--- img (avatars, logos, photos)
||||||||||--- audio-video (collection of music, videos)
|--- ops (all my projects under relevant YEAR which i refer to as "operations" live under here because sometimes they're product work, or actual projects, or ongoing program work, or sometimes events management...hence my use of the generic term "ops". Also, after the NEW YEAR, i move stuff from the "Drafts" folder to appropriate sub-dir. here.)
|||||||||||--- 2020
|||||||||||||||||||||--- project-ABC
|||||||||||||||||||||--- project-XYZ
|||||||||||--- 2019
|||||||||||||||||||||--- project-CDF
|||||||||||||||||||||--- project-LMNOP
I've been using Dropbox for the last several years, and it works quite well...But i really would like to eventually use something open source like nextcloud...really my above hierarchy goes with me everywhere because of dropbox. I rarely use the default home directory for my linux personal machines (or work Windows machines)...and just live out of my organized dropbox folder. So as awesome as nextcloud is (and i already do use it for other stuff)...my beloved nextcloud just isn't as reliable as dropbox...at least not yet...but eventually, yes, i'll be able to drop the proprietary dropbox!
EDITED: for the formating.