86 lines
3.6 KiB
Markdown
86 lines
3.6 KiB
Markdown
# dot
|
|
|
|
## Description
|
|
Personal dotfiles and configuration guide.
|
|
|
|
## Table of Contents
|
|
|
|
- [Description](#description)
|
|
- [Read](#read)
|
|
- [TLDR](#tldr)
|
|
- [Credits / Resources](#credits--resources)
|
|
- [License](#license)
|
|
|
|
## Read
|
|
We will be following [Free Desktop Specifications](https://www.freedesktop.org/wiki/Specifications/).
|
|
|
|
One of the tools we need to know about is `xdg-user-dirs`.[Arch Wiki](https://wiki.archlinux.org/title/XDG_user_directories)
|
|
|
|
Make sure this is installed with `sudo apt install xdg-user-dirs`
|
|
|
|
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.
|
|
|
|
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.
|
|
|
|
**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.**
|
|
|
|
$(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.
|
|
|
|
You can find the original user.dirs.defaults [HERE](https://myrepos.dev/Randy-Jordan/eg/raw/branch/main/dot/xdg/user-dirs.defaults)
|
|
|
|
You can find the custom one I use [HERE](https://myrepos.dev/Randy-Jordan/eg/raw/branch/main/dot/xdg/user-dirs.custom)
|
|
|
|
Some of these are their own repositories, and I will include a link below with
|
|
an explanation and purpose of the directory.
|
|
|
|
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` [REPO](https://myrepos.dev/Randy-Jordan/eg)<br>
|
|
MARKDOWN=md `Guides and notes written in markdown.` (https://myrepos.dev)<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.` (https://myrepos.dev)<br>
|
|
REPO=repo `All my developement repos` (https://myrepos.dev) <br>
|
|
SCRIPTS=sh `Shell/Python scripts etc` [REPO](https://myrepos.dev/Randy-Jordan/sh)<br>
|
|
VIRTUALMACHINES=vm `Virtual Machines / Dockerfiles etc.` (https://myrepos.dev)<br>
|
|
|
|
`curl https://myrepos.dev/Randy-Jordan/eg/raw/branch/main/dot/xdg/user-dirs.custom -o /etc/xdg/user.dirs.defaults`<br>
|
|
|
|
## TLDR
|
|
`sudo apt update`
|
|
`sudo apt dist-upgrade`
|
|
`sudo apt autoremove`
|
|
`curl home dirs`
|
|
`xdg-user-dirs-update`
|
|
`apt package install link.`
|
|
`curl dotfiles link`
|
|
|
|
|
|
## 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
|