84 lines
3.2 KiB
Markdown
84 lines
3.2 KiB
Markdown
# Dot Files
|
|
systemctl --user start activitywatch.target
|
|
|
|
This repo contains:
|
|
|
|
* My home-manager configuration as a nix flake
|
|
* My dotfiles and various configs
|
|
* A [dockerfile](./dev.Dockerfile) that builds an isolated development container with home-manager, nix, and my dotfiles in various flavors
|
|
|
|
Are these really just dotfiles anymore...?
|
|
|
|
## Guiding Principles
|
|
|
|
* **Linking** - Symlinks over copying
|
|
* **Public** - Private keys and licenses are separate.
|
|
* **Reproducible** - `home-manager` does so much heavy lifting and there's only a few manual tweaks.
|
|
* **Multi-environment** - There are multiple `home-manager` profiles that can be used
|
|
|
|
## Software
|
|
|
|
Deep configurations for:
|
|
* [micro-editor](https://micro-editor.github.io/) (instead of Sublime Text)
|
|
* [git](https://git-scm.com/)
|
|
* bash
|
|
* [firefox](https://firefox.com)
|
|
* [fd](https://github.com/sharkdp/fd)
|
|
|
|
Other installed software:
|
|
* [flameshot](https://flameshot.org/)
|
|
* [ffmpeg](https://www.ffmpeg.org/)
|
|
* [activitywatch](https://activitywatch.net/)
|
|
|
|
## Usage (from a bare system)
|
|
```bash
|
|
cd ~
|
|
sudo apt update && sudo apt install git
|
|
git clone https://github.com/Cobertos/dotfiles.git
|
|
cd dotfiles
|
|
|
|
# Installs nix
|
|
./dev.sh
|
|
# Run home-manager (replace <flavor> with one of "bare","home", etc...)
|
|
nix run home-manager/master -- switch -b backup --flake .#<flavor>
|
|
# Run activitywatch target if not relogging
|
|
systemctl --user start activitywatch.target
|
|
```
|
|
|
|
## Manual steps
|
|
* Firefox
|
|
* Install extensions
|
|
* Migrate from old computer
|
|
* Insomnia configs (all the sqlite databases in Insomnia's home directory)
|
|
* .ssh keys
|
|
* Any environment variables holding keys
|
|
* Firefox/Chrome/wherever history
|
|
* Setup filesystem favorites
|
|
|
|
### Linux specific manually
|
|
* Configure Linux Mint Desktop
|
|
* Change the theme to Dark (for Window borders, controls, and desktop)
|
|
* Change wallpapers/backgrouns to the folder that has them all in it
|
|
* Add a panel to every monitor, without grouped list applet merging and with window titles
|
|
* Change the Linux Mint start menu icon
|
|
|
|
## TODO: Future Support
|
|
* Blender
|
|
* OBS (and prefs to record into Seafile?)
|
|
* Voicemeeter Banana (Linux / Ubuntu equivalent?)
|
|
* Setup correct file associations (for .xml, .html, etc...)
|
|
* VLC Plugins
|
|
* Audacity and configurations
|
|
* Make sure that Chrome/Firefox syncs settings for refined GitHub (looks like it worked)
|
|
* /etc/hosts and C:\Windows\System32\drivers\etc\hosts or wherever it is in Windows
|
|
* Seafile notifications disabling?
|
|
* Configure keybindings (like for flameshot)
|
|
* Add a little indicator to PS1 when dotfiles is out of date
|
|
* Make `findcode` better/nicer. Can we have some sort of indexing search?
|
|
* Put Userscripts for Tampermonkey in here (or maybe submodule? would be nice to use their WebDAV interface)
|
|
* Switch pip over to use the --user flag, or make it an option? Not sure what pipx needs?
|
|
|
|
## Historical versions of the dotfiles
|
|
* My dotfiles [when they worked using a custom Python library](https://github.com/Cobertos/dotfiles/tree/departing-python)
|
|
* My dotfiles [when they were all Ansible](https://github.com/Cobertos/dotfiles/tree/ansible)
|
|
* My dotfiles [when they were mainly Windows-based dotfiles](https://github.com/Cobertos/dotfiles/tree/windows-df-old)
|