mirror of
https://github.com/shokinn/.files.git
synced 2025-10-15 10:48:31 +00:00
Compare commits
8 commits
2885146556
...
6453de1775
Author | SHA1 | Date | |
---|---|---|---|
6453de1775 | |||
2988821da1 | |||
051dba5cf7 | |||
e75e94e770 | |||
881d959c39 | |||
277f988882 | |||
79dea9788e | |||
dd863c24ab |
8 changed files with 177 additions and 321544 deletions
38
README.md
38
README.md
|
@ -6,6 +6,10 @@ I manage my dotfiles using [dotdrop](https://github.com/deadc0de6/dotdrop).
|
|||
|
||||
### Script
|
||||
|
||||
> [!IMPORTANT]
|
||||
> Copy ssh public/private key for age, to encrypt/decrypt files to `~/.ssh/identities/phg-age-dotfiles` and `~/.ssh/identities/phg-age-dotfiles.pub`
|
||||
> Otherwise empty files will be created instead.
|
||||
|
||||
```shell
|
||||
[[ ! $(command -v brew) ]] && /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" \
|
||||
; eval "$(/opt/homebrew/bin/brew shellenv)" \
|
||||
|
@ -30,21 +34,49 @@ I manage my dotfiles using [dotdrop](https://github.com/deadc0de6/dotdrop).
|
|||
### Manual
|
||||
|
||||
1. Install [Homebrew](https://brew.sh/)
|
||||
2. Install `coreutils`, `fzf`, `libmagic`, `mas`, `uv` and `zsh` via Homebrew.
|
||||
2. Install `age`, `coreutils`, `fzf`, `libmagic`, `mas`, `uv` and `zsh` via Homebrew.
|
||||
```shell
|
||||
brew bundle install --file=~/.files/bootstrap/Brewfile
|
||||
```
|
||||
3. Install `drotdrop` via `uv` (`uv tool install --allow-python-downloads --python 3.11 dotdrop`).
|
||||
4. Clone dotfiles, install dependencies for dotdrop and install dotfiles.
|
||||
4. Copy ssh public/private key for age, to encrypt/decrypt files to `~/.ssh/identities/phg-age-dotfiles` and `~/.ssh/identities/phg-age-dotfiles.pub`
|
||||
5. Clone dotfiles, install dependencies for dotdrop and install dotfiles.
|
||||
```shell
|
||||
git clone https://github.com/shokinn/.files ~/.files \
|
||||
&& ~/.local/bin/dotdrop --cfg=~/.files/config.yaml install
|
||||
```
|
||||
5. Install my default set of tools:
|
||||
6. Install my default set of tools:
|
||||
```shell
|
||||
brew bundle install --file=~/.files/config/brew/Brewfile
|
||||
```
|
||||
|
||||
## Encrypted files
|
||||
|
||||
### Initially import a dot file as encrypted file
|
||||
|
||||
```shell
|
||||
dotdrop import --transw=_encrypt --transr=_decrypt <file>
|
||||
```
|
||||
|
||||
Installs/updates will now be automatically decrypted/encrypted.
|
||||
|
||||
### Decrypt a dotfile manually
|
||||
|
||||
```shell
|
||||
age --decrypt -i ~/.ssh/identities/phg-age-dotfiles -o <ouput paht for decrypted file> <path to encrypted file>
|
||||
```
|
||||
|
||||
### Encrypt a dotfile manually
|
||||
|
||||
```shell
|
||||
cat <path to plain file> | age -R ~/.ssh/identities/phg-age-dotfiles.pub > <path to encrypted file>
|
||||
```
|
||||
|
||||
### Edit an encrypted dotfile
|
||||
|
||||
TBD
|
||||
|
||||
|
||||
## Backup/Restore settings for macOS native user preferences
|
||||
|
||||
See here for a defaults documentation: <https://macos-defaults.com/>
|
||||
|
|
|
@ -1,3 +1,4 @@
|
|||
brew "age"
|
||||
brew "coreutils"
|
||||
brew "fzf"
|
||||
brew "libmagic"
|
||||
|
|
17
config.yaml
17
config.yaml
|
@ -2,6 +2,16 @@ config:
|
|||
backup: true
|
||||
create: true
|
||||
dotpath: dotfiles
|
||||
variables:
|
||||
ageidentity: ${{HOME}}/.ssh/identities/phg-age-dotfiles
|
||||
SHELL_ERR_MESSAGE: '\033[41;30m'
|
||||
SHELL_RESET_COLOR: '\033[0m'
|
||||
trans_install:
|
||||
_decrypt: |
|
||||
[[ -f {{@@ ageidentity @@}} ]] && age --decrypt -i {{@@ ageidentity @@}} -o {1} {0} || ([[ ! -f {{@@ _dotfile_abs_dst @@}} ]] && (echo "{{@@ SHELL_ERR_MESSAGE @@}}Missing age identity file {{@@ ageidentity @@}}, cannot decrypt {0}, creating empty file instead{{@@ SHELL_RESET_COLOR @@}}"; echo "" > {1}) || (echo "{{@@ SHELL_ERR_MESSAGE @@}}Missing age identity file {{@@ ageidentity @@}}, cannot decrypt {0}{{@@ SHELL_RESET_COLOR @@}}"; cp {{@@ _dotfile_abs_dst @@}} {1}))
|
||||
trans_update:
|
||||
_encrypt: |
|
||||
[[ -f {{@@ ageidentity @@}}.pub ]] && cat {0} | age -R {{@@ ageidentity @@}}.pub > {1} || echo "{{@@ SHELL_ERR_MESSAGE @@}}Missing age identity file {{@@ ageidentity @@}}.pub, cannot encrypt {0}{{@@ SHELL_RESET_COLOR @@}}"
|
||||
actions:
|
||||
oh-my-zsh: |
|
||||
[[ ! -d ${{HOME}}/.oh-my-zsh ]] && sh -c "$(curl -fsSL https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)" "" --unattended || echo "do nothing" >/dev/null
|
||||
|
@ -148,6 +158,11 @@ dotfiles:
|
|||
f_p10k_mise:
|
||||
dst: ~/.config/zsh/p10k.mise.zsh
|
||||
src: config/zsh/p10k.mise.zsh
|
||||
f_finicky.js:
|
||||
src: finicky.js
|
||||
dst: ~/.finicky.js
|
||||
trans_install: _decrypt
|
||||
trans_update: _encrypt
|
||||
profiles:
|
||||
meta_base:
|
||||
variables:
|
||||
|
@ -161,7 +176,6 @@ profiles:
|
|||
- f_config
|
||||
- f_p10k_mise
|
||||
- f_powerlevel10krc
|
||||
- f_rmquarantine
|
||||
- f_secretfiles
|
||||
- f_vimrc
|
||||
- f_zprofile
|
||||
|
@ -193,6 +207,7 @@ profiles:
|
|||
- meta_base
|
||||
dotfiles:
|
||||
- f_rmquarantine
|
||||
- f_finicky.js
|
||||
os_ubuntu:
|
||||
variables:
|
||||
distro: ubuntu
|
||||
|
|
123
config/Firefox/CAD_CoreSettings_2025-10-02_15.33.44.json
Normal file
123
config/Firefox/CAD_CoreSettings_2025-10-02_15.33.44.json
Normal file
|
@ -0,0 +1,123 @@
|
|||
{
|
||||
"settings": [
|
||||
{
|
||||
"name": "activeMode",
|
||||
"value": true
|
||||
},
|
||||
{
|
||||
"name": "cacheCleanup",
|
||||
"value": false
|
||||
},
|
||||
{
|
||||
"name": "cleanCookiesFromOpenTabsOnStartup",
|
||||
"value": true
|
||||
},
|
||||
{
|
||||
"name": "cleanExpiredCookies",
|
||||
"value": true
|
||||
},
|
||||
{
|
||||
"name": "contextMenus",
|
||||
"value": true
|
||||
},
|
||||
{
|
||||
"name": "contextualIdentities",
|
||||
"value": true
|
||||
},
|
||||
{
|
||||
"name": "contextualIdentitiesAutoRemove",
|
||||
"value": true
|
||||
},
|
||||
{
|
||||
"name": "debugMode",
|
||||
"value": false
|
||||
},
|
||||
{
|
||||
"name": "delayBeforeClean",
|
||||
"value": 15
|
||||
},
|
||||
{
|
||||
"name": "discardedCleanup",
|
||||
"value": false
|
||||
},
|
||||
{
|
||||
"name": "domainChangeCleanup",
|
||||
"value": true
|
||||
},
|
||||
{
|
||||
"name": "enableGreyListCleanup",
|
||||
"value": true
|
||||
},
|
||||
{
|
||||
"name": "enableNewVersionPopup",
|
||||
"value": false
|
||||
},
|
||||
{
|
||||
"id": "DEPRECATED - use default expressions",
|
||||
"name": "greyCleanLocalstorage",
|
||||
"value": false
|
||||
},
|
||||
{
|
||||
"name": "indexedDBCleanup",
|
||||
"value": false
|
||||
},
|
||||
{
|
||||
"name": "keepDefaultIcon",
|
||||
"value": false
|
||||
},
|
||||
{
|
||||
"id": "DEPRECATED - use localStorageCleanup",
|
||||
"name": "localstorageCleanup",
|
||||
"value": false
|
||||
},
|
||||
{
|
||||
"name": "localStorageCleanup",
|
||||
"value": false
|
||||
},
|
||||
{
|
||||
"name": "manualNotifications",
|
||||
"value": true
|
||||
},
|
||||
{
|
||||
"name": "notificationOnScreen",
|
||||
"value": 3
|
||||
},
|
||||
{
|
||||
"name": "pluginDataCleanup",
|
||||
"value": false
|
||||
},
|
||||
{
|
||||
"name": "serviceWorkersCleanup",
|
||||
"value": false
|
||||
},
|
||||
{
|
||||
"name": "showNotificationAfterCleanup",
|
||||
"value": true
|
||||
},
|
||||
{
|
||||
"name": "showNumOfCookiesInIcon",
|
||||
"value": true
|
||||
},
|
||||
{
|
||||
"name": "siteDataEmptyOnEnable",
|
||||
"value": true
|
||||
},
|
||||
{
|
||||
"name": "sizePopup",
|
||||
"value": 16
|
||||
},
|
||||
{
|
||||
"name": "sizeSetting",
|
||||
"value": 16
|
||||
},
|
||||
{
|
||||
"name": "statLogging",
|
||||
"value": true
|
||||
},
|
||||
{
|
||||
"id": "DEPRECATED - use default expressions",
|
||||
"name": "whiteCleanLocalstorage",
|
||||
"value": false
|
||||
}
|
||||
]
|
||||
}
|
BIN
config/Firefox/sidebery-data-2025.10.02-18.02.01.json.age
Normal file
BIN
config/Firefox/sidebery-data-2025.10.02-18.02.01.json.age
Normal file
Binary file not shown.
File diff suppressed because it is too large
Load diff
|
@ -60,6 +60,8 @@ cask "browserino", args: { no_quarantine: true }
|
|||
cask "bruno"
|
||||
cask "crossover"
|
||||
cask "crystalfetch"
|
||||
cask "firefox"
|
||||
cask "firefox@developer-edition"
|
||||
cask "finicky"
|
||||
cask "iina"
|
||||
cask "istat-menus"
|
||||
|
@ -77,7 +79,6 @@ cask "snagit"
|
|||
cask "soundsource"
|
||||
cask "sublime-text"
|
||||
cask "visual-studio-code"
|
||||
cask "zen"
|
||||
mas "AdGuard for Safari", id: 1440147259
|
||||
mas "Amphetamine", id: 937984704
|
||||
mas "AusweisApp", id: 948660805
|
||||
|
|
BIN
dotfiles/finicky.js
Normal file
BIN
dotfiles/finicky.js
Normal file
Binary file not shown.
Loading…
Add table
Add a link
Reference in a new issue