2025-12-06 11:37:26 -06:00
|
|
|
# dot
|
|
|
|
|
|
|
|
|
|
## Description
|
|
|
|
|
Personal dotfiles and configuration guide.
|
|
|
|
|
|
|
|
|
|
## Table of Contents
|
|
|
|
|
|
|
|
|
|
- [Description](#description)
|
|
|
|
|
- [Features](#features)
|
|
|
|
|
- [Usage](#usage)
|
|
|
|
|
- [Credits / Resources](#credits--resources)
|
|
|
|
|
- [License](#license)
|
|
|
|
|
|
|
|
|
|
## Features
|
|
|
|
|
// TODO Add links for download scripts
|
|
|
|
|
|
|
|
|
|
## Usage
|
|
|
|
|
Above you should see quick links for downloading and setup. Below I will discuss
|
2025-12-06 11:44:35 -06:00
|
|
|
how I approach setting up my $HOME directory. We will be following [Free Desktop Specifications](https://www.freedesktop.org/wiki/Specifications/).
|
2025-12-06 11:48:14 -06:00
|
|
|
|
2025-12-06 12:06:14 -06:00
|
|
|
One of the tools we need to know about is `xdg-user-dirs`.
|
2025-12-06 11:48:14 -06:00
|
|
|
|
2025-12-06 11:44:35 -06:00
|
|
|
Make sure this is installed with `sudo apt install xdg-user-dirs`
|
2025-12-06 11:48:14 -06:00
|
|
|
|
2025-12-06 12:06:14 -06:00
|
|
|
xdg-user-dirs is a tool to help manage "well known" user directories like the
|
|
|
|
|
desktop folder and the music folder. It also handles localization
|
|
|
|
|
(i.e. translation) of the filenames.
|
2025-12-06 11:48:14 -06:00
|
|
|
|
2025-12-06 12:06:14 -06:00
|
|
|
The way it works is that xdg-user-dirs-update is run very early in the login
|
|
|
|
|
phase. This program reads a configuration file, and a set of default
|
|
|
|
|
directories. It then creates localized versions of these directories in the
|
|
|
|
|
users home directory and sets up a config file in
|
|
|
|
|
$(XDG_CONFIG_HOME)/user-dirs.dirs (XDG_CONFIG_HOME defaults to ~/.config)
|
|
|
|
|
that applications can read to find these directories.
|
2025-12-06 11:49:41 -06:00
|
|
|
|
2025-12-06 12:06:14 -06:00
|
|
|
**Sysadmins can configure things by editing /etc/xdg/user-dirs.conf.
|
|
|
|
|
At the moment there are only two settings, you can disable the whole thing,
|
|
|
|
|
and you can specify the charset encoding used for filenames. They can also
|
|
|
|
|
set or change the default directories and their initial values in
|
|
|
|
|
/etc/xdg/user-dirs.defaults.**
|
2025-12-06 11:49:41 -06:00
|
|
|
|
2025-12-06 12:06:14 -06:00
|
|
|
$(XDG_CONFIG_HOME)/user-dirs.dirs specifies the current set of directories
|
|
|
|
|
for the user. This file is in a shell format, so its easy to access from a
|
|
|
|
|
shell script. This file can also be modified by users (manually or via
|
|
|
|
|
applications) to change the directories used. Note: To disable a directory,
|
|
|
|
|
point it to the homedir. If you delete it it will be recreated on the next
|
|
|
|
|
login.
|
|
|
|
|
|
2025-12-06 12:18:58 -06:00
|
|
|
You can find the original user.dirs.defaults[HERE]() // TODO add link.
|
2025-12-06 12:06:14 -06:00
|
|
|
|
2025-12-06 12:18:58 -06:00
|
|
|
You can find the custom one I use [HERE]() // TODO add link.
|
2025-12-06 12:06:14 -06:00
|
|
|
|
|
|
|
|
Some of these are their own repositories, and I will include a link below with
|
|
|
|
|
an explanation and purpose of the directory.
|
2025-12-06 12:18:58 -06:00
|
|
|
|
|
|
|
|
DESKTOP=gui `Default desktop directory (if applicable)`<br>
|
|
|
|
|
DOWNLOAD=dl `Default download directory for firefox etc`<br>
|
|
|
|
|
TEMPLATES=eg `Default directory for file click/create capability on desktops` `TODO ADD LINK`<br>
|
|
|
|
|
MARKDOWN=md `Guides and notes written in markdown.` `TODO ADD LINK`<br>
|
|
|
|
|
PUBLICSHARE=pub `Local sharing folder` <br>
|
|
|
|
|
DOCUMENTS=media/docs `Documents` <br>
|
|
|
|
|
MUSIC=media/music
|
|
|
|
|
PICTURES=media/pics
|
|
|
|
|
VIDEOS=media/vids
|
|
|
|
|
PDF=media/pdf <br>
|
|
|
|
|
CAD=cad `CAD repo with resources and links to library etc.`<br>
|
|
|
|
|
REPO=repo `All my developement repos` `https://myrepos.dev` <br>
|
|
|
|
|
SCRIPTS=sh `Shell/Python scripts etc` `TODO ADD LINK` <br>
|
|
|
|
|
VIRTUALMACHINES=vm `Virtual Machines / Dockerfiles etc.` `TODO ADD LINK`<br>
|
|
|
|
|
|
2025-12-06 11:48:14 -06:00
|
|
|
|
2025-12-06 11:37:26 -06:00
|
|
|
|
|
|
|
|
## Credits / Resources
|
|
|
|
|
[Atlassian - How to store Dotfiles](https://www.atlassian.com/git/tutorials/dotfiles)<br>
|
|
|
|
|
[Tom Preston-Werner README Driven Development](https://tom.preston-werner.com/2010/08/23/readme-driven-development)<br>
|
|
|
|
|
[Make a README](https://www.makeareadme.com/)<br>
|
|
|
|
|
[Choose a LICENSE](https://choosealicense.com/)<br>
|
|
|
|
|
|
|
|
|
|
## License
|