# Linux Just Standardized Something We All Use

## Метаданные

- **Канал:** Brodie Robertson
- **YouTube:** https://www.youtube.com/watch?v=X_MDhNVN3e0
- **Дата:** 07.05.2026
- **Длительность:** 11:30
- **Просмотры:** 55,361
- **Источник:** https://ekstraktznaniy.ru/video/49776

## Описание

We all make some sort of folder for storing our projects, so if it's such a standard then why not actually standardize it in XDG User dirs and that is exactly what was done.

==========Support The Channel==========
► Patreon: https://brodierobertson.xyz/patreon
► Paypal: https://brodierobertson.xyz/paypal
► Liberapay: https://brodierobertson.xyz/liberapay
► Amazon USA: https://brodierobertson.xyz/amazonusa

==========Resources==========
Gitlab Issue: https://gitlab.freedesktop.org/xdg/xdg-user-dirs/-/work_items/3
Translate Code: https://gitlab.freedesktop.org/xdg/xdg-user-dirs/-/blob/85558b8afbaf404b7d14a5a9d45a94cfdfc863f8/translate.c
Merge Request: https://gitlab.freedesktop.org/xdg/xdg-user-dirs/-/merge_requests/24/diffs?commit_id=217cae71c620ed2b3ed2936256ece68defccc6ab
XDG User Directories Config: https://wiki.archlinux.org/title/XDG_user_directories

=========Video Platforms==========
🎥 React: https://www.youtube.com/@BrodieRobertsonReacts
🎥 Podcast: https://techovertea.xyz/youtu

## Транскрипт

### Segment 1 (00:00 - 05:00) []

Most of us have some sort of folder for things that we're working on. In my case, I have a repos folder for my source code. I have things like the model folder for 3D models. Maybe have a folder for CAD stuff or a folder for game development or 3D modeling or artwork or anything else like that. Most of us have something. If you're doing all your work in a web browser with everything saved in cloud storage, sure maybe you don't, but it's such a standard thing that if I say it, all of you probably have some idea of a thing you use. But if everyone has some sort of folder, then maybe that should be standardized. Maybe there should be a standard folder for projects, for things that we're working on. For instance, desktop icons used to be a far more common thing and this had to be linked to a folder. With that, we get the desktop folder. Most of us have documents. So, you have the documents folder, downloads, the downloads folder, music, pictures, videos, so on and so forth. All of these are standardized folders as part of the free desktop XDG user dur specification with a few others as well. But if you want to know the full list of folders, you can go check that out. Since there's already precedent for standardized folders, someone had the idea, let's just add another one. But this isn't a recent thing. Projects directory created September 15th, 2014 by Bugzilla migration user because this came from the original free desktop Bugzilla. And back then it got literally no attention. The only attention it got was in 2018 with the migration over from the bugzilla. Currently, XDG user does not specify a directory for environment of projects. A weird way to phrase it, but I'm assuming maybe English is not their first language. Anyway, for software projects, these usually include source code, version control, compiled binaries, test artifacts, and downloaded dependencies as they are much more than downloads and usually kept indefinitely. They do not fit in there. The benefit of defining a project folder would be that when writing a readme or install script for a project, one could automatically download the source to the userdefined location, set up the build environment, and install from there. About 6 years later, we got a little bit of feedback. I wanted to propose this myself, but found out there's already this old existing issue. The projects directory is the only directory besides dot files and other XG users in my home folder and has been for years. As the OP describes, I mostly use it for software projects, but I believe it can serve any type of project. I used it for school projects. It didn't necessarily contain software. I imagine it could be used for projects in other professions as well. A few months later, someone noted it would also be useful for flatp packed IDAs. If it's something that has proper access to the file browser portal, that's not an issue. It's going to work totally fine. But for a lot of the proprietary applications which support Linux but don't support the flatp pack format, you need somewhere for them to go because they won't just be able to access everything unless you just ignore the sandbox and give them access to the entire system. So giving them a dedicated folder where everything can be located. This mostly eliminates that issue. But the real attention came with a comment from Raz very recently. It would in addition be very useful for apps like 3D printers. It's basically a catcher when document doesn't apply. He also went and opened up a merge request to get this actually done. I do not know if the original reporter was already aware of this, but there was a projects folder already defined in XDG user does. The issue is they didn't create it. They didn't finish that final bit of hookup to actually use the folder. If we go to this commit here, this is from February 27th, 2007. Initial revision projects is defined in the translate. c file. If we go to PO and go down to sv. po, in this file, we have projects right here. This already existed in the project. The project existed in codebase 19 years ago. What I think is likely to have happened here is somebody thought it was a good idea to have a projects folder. They were working on a projects folder and then they um then they didn't finish the entire chain of things they needed to do to fully implement the folder. So

### Segment 2 (05:00 - 10:00) [5:00]

99% of it was already in the codebase and pretty much all it required was just um defining it as a default. Now the folder exists. This got merged with literally no hassle because it's a single line change. All the code was already there. It was just using the code that had already been defined. And then someone got a little bit impatient when they saw the merge was actually done. Flatback still has no idea what XG project is if you add it to the file systems override. It needs some time to get shipped by distros. Definitely more than being in git for 10 minutes. It was in git for about 24 minutes at this point. I understand you want to use it, but it's not going to ship out that quickly. And very shortly after this, a change also opened up in Gibb. This currently still sits open. I assume there's still some code changes they need to do to make that work and that'll probably happen with the like next major release of Gnome I would assume. Especially so if this is going to happen what will happen to the folders design in Nautilus/files? Will it get a custom icon like the other folders? Doing icon design, doing any sort of design does take a bit of time. You have to go through design review and make sure it fits the style and guidelines, things like that. So, it will probably get merged, I would assume, in a couple of weeks, maybe a couple of months. However, it turns out the discussion was being had back in 2022. They thought it was a default folder. It actually wasn't. So, this was probably being created by their DRO because some dros did go and create it and it was generally a good idea to have. But now that this is the default, the discussion here has been reopened. And again, something is probably going to happen here. But if you want to use this today, if you're on a rolling release dro like I am, you likely already have a projects folder that exists. I don't know if any of the point releases have it yet. I think the change was probably made a little bit too close to when they came out for that to actually be merged in. But do check for yourself. Maybe you already have it. At the end of the day, why does this even matter to begin with? If you have your own folder, can't you just keep using the folder? Yes. Yes, you can keep doing exactly that. You don't have to use the projects folder. But by defining a standard, by defining a default, it encourages application developers to actually go and use the default. Not just dump things in your home directory, dump things in the specific default directory that projects go into. Because quite a few projects, one of those being Android Studio, like to go and make folders in your home directory just for themselves. Here's your Android Studio projects. Here are your other various projects. Here's your other ones. And that gets really, really messy. Now, one of these is fine. And you can obviously always go and just move the files elsewhere and then access them like that. But there are some applications which expect their default folder to exist. And if it doesn't exist, they will remake it every time you open the app. But wouldn't it be nice if that didn't happen? You open up an app for the first time and it goes and makes its subdirectory inside the projects folder. That is totally fine. Keep the work segregated from the rest of the work, but it does it in the projects folder. However, okay, I do live in reality and I understand that even though config has been defined in XDG user probably since the very start of the project and has existed and a lot of applications do make use of it. There are still apps which spam their configs in the home directory or they spam their data files in the home directory even though there is a defined data directory assuming apps are actually using it correctly and not just hard coding the project path which some of them do for config. You also get control. The power of XDG user ders is you can go and redefine the directory into a new location. So if you don't want these in your home directory, you can put them into their own subdirectory. anywhere you want on your system that they're going to have read and write access to. Again, like config though, there are applications which use config, but they don't actually use the XDG setting. All

### Segment 3 (10:00 - 11:00) [10:00]

they do is hardcode the path. So, you change it and all they do is just make their own config folder again. But even though there are apps that are not going to use it, it's still a good change because it sets the pathway for things to improve, for things to get better. If you don't set that path, then nothing is going to change. So, let me know your thoughts. Do you care about the existence of a project directory? Is this something you're going to use? Is this something you are already using? or do you already have a workflow set around your own custom folders and that's just what you're going to keep doing? I would love to know. So, if you like the video, go like the video. If you really like the video and you want to become one of these amazing people over here, check out the Patreon subscribe steer bar linked in the description down below. That's going to be it for me and defaults. ain't playing at your best. If it don't involve money, then I don't accept. If it don't
