reorganize
This commit is contained in:
parent
894a1cb46d
commit
e163ef937e
22 changed files with 174 additions and 117 deletions
6
.gitignore
vendored
6
.gitignore
vendored
|
@ -1,6 +0,0 @@
|
|||
/firefox/configs
|
||||
/firefox/*.proxy
|
||||
/gcloud
|
||||
/git/github_token
|
||||
/nodejs/.npmrc
|
||||
/ssh
|
99
README.md
99
README.md
|
@ -1,90 +1,17 @@
|
|||
# config
|
||||
|
||||
My config files for various things. Use `config.sh` to automate the setup of several of them.
|
||||
My config files for various things. See the individual readmes below.
|
||||
|
||||
Things that are not checked in but which should live in this directory:
|
||||
- [Windows](win)
|
||||
- [WSL](wsl)
|
||||
- [Bash](bash)
|
||||
- [SSH](ssh)
|
||||
- [Git](git)
|
||||
- [VS Code](vscode)
|
||||
- [Node.js](nodejs)
|
||||
- [Google Cloud SDK](gcloud)
|
||||
- [tmux](tmux)
|
||||
- [Firefox](firefox)
|
||||
- [KeePass](keepass)
|
||||
|
||||
- `firefox/configs/` - files whose names are `+`-separated filenames from `firefox/` - these will be constructed by concatenation from the base files, and will be symlinked to from various profiles' `user.js` files
|
||||
- `firefox/*.proxy` - proxy auto-config files - these too can be referred to in the above `firefox/configs/` files, without the `.proxy` extension
|
||||
- `gcloud/` - Google Cloud SDK configuration files
|
||||
- `git/github_token` - GitHub Personal Access Token with read access to repos
|
||||
- `nodejs/.npmrc` - npm credentials, config, etc.
|
||||
- `ssh/` - SSH keys, config, etc.
|
||||
|
||||
## Bash scripts
|
||||
|
||||
- `2path.sh` - create a symlink to a file or directory from `~/bin`
|
||||
- `syncfiles.sh` - given paths to two or more files, prompt to copy the newest one over each of the older ones
|
||||
|
||||
## WSL setup
|
||||
|
||||
Use `wsl/install.cmd` to set up a new WSL installation. Run without arguments for details.
|
||||
|
||||
## WSL scripts
|
||||
|
||||
- `wsl-apt` - run `apt-get update`/`upgrade`/`install`/`remove`/`autoremove`/`autoclean`
|
||||
- any package names given as arguments are treated as packages to `install`, except any prefixed with a `-` are treated as packages to `remove`
|
||||
- `wsl-expose-ports` - expose one or more ports within WSL to the outside world
|
||||
- this sets up a port proxy and a Windows firewall rule for each exposed port, and removes previous port proxies and firewall rules
|
||||
- multiple ports can be specified, each with an optional external port: `1234` exposes port 1234 as 1234, `1234:5678` exposes port 5678 as 1234
|
||||
- call without arguments to remove port proxies and firewall rules without creating new ones
|
||||
- `wsl-fix-clock` - sync the WSL clock with the Windows clock
|
||||
- `wsl-fix-interop` - fix `WSL_INTEROP` variable when it becomes incorrectly set
|
||||
- `wsl-services` - start useful services not automatically started by WSL
|
||||
- starts `procps` for `sysctl` configuration
|
||||
|
||||
## Firefox
|
||||
|
||||
For each profile:
|
||||
|
||||
- Use the script commands to create a symlink for `user.js`
|
||||
- Change the [default search engine](about:preferences#search) to DuckDuckGo
|
||||
- Current approximate complement of add-ons (varies by profile):
|
||||
- [Buster: Captcha Solver for Humans](https://addons.mozilla.org/addon/buster-captcha-solver/)
|
||||
- [Feedbro](https://addons.mozilla.org/addon/feedbroreader/)
|
||||
- [Greasemonkey](https://addons.mozilla.org/addon/greasemonkey/)
|
||||
- [Kee - Password Manager](https://addons.mozilla.org/addon/keefox/)
|
||||
- [NoScript Security Suite](https://addons.mozilla.org/addon/noscript/)
|
||||
- [RSSPreview](https://addons.mozilla.org/addon/rsspreview/)
|
||||
- [uBlock Origin](https://addons.mozilla.org/addon/ublock-origin/)
|
||||
|
||||
## Git scripts
|
||||
|
||||
- `git clean-branches` - delete local branches which track deleted remote branches
|
||||
- `git clean-config` - unset various local config values, so global config will be used
|
||||
- `git clean-dates` - set commit dates of all commits in the given range to their authoring dates
|
||||
- `git clean-fork` - assuming `origin` and `fork` remotes, resets default branch on `fork` to first commit on `origin`, deletes all other branches on `fork` that are present on `origin`, and deletes all tags on `fork`
|
||||
- `git clean-modes` - reset all file modes to those in the repository
|
||||
- `git clean-mtime` - set a file's mtime to its most recent commit's author date
|
||||
- `git clean-pr` - delete all `pr/` branches created by `git cpr`
|
||||
- `get clean-user` - set author and committer of all commits in the given range to the currently configured identity
|
||||
- `git cpr` - checkout a PR from GitHub by id, and set up the local branch to track the appropriate branch on the appropriate fork
|
||||
- `git download-bundle` - download a bundle file from a remote repository
|
||||
- `git index-list-skip` - list all files that have had `--skip-worktree` set on them
|
||||
- `git index-skip` - set `--skip-worktree` on a given file
|
||||
- `git index-unskip` - set `--no-skip-worktree` on a given file
|
||||
- `git npm-add` - stage precisely the files that would be included in an npm package
|
||||
- `git track` - set current branch to track given remote and branch, defaulting to same branch name
|
||||
- `git turbo-gc` - turbo garbage collect
|
||||
|
||||
## Git Credential Manager Core WSL/Windows interop
|
||||
|
||||
Copy `git/wsl/git-credential-manager` into the root of the Git for Windows installation, and symlink to it from the WSL `PATH`.
|
||||
|
||||
## Node.js/npm scripts
|
||||
|
||||
- `npma.sh` - find the given binaries searching upwards through `node_modules` and output aliases for them, suitable for `>> ~/.bash_aliases`
|
||||
- `npmg.sh` - create a commit for a new version (if there are staged changed), and create and tag an otherwise dangling commit from HEAD that contains all of the files `npm publish` would
|
||||
- `npml.sh` - find the `node_modules` where the given dependencies are used, search up further for directories defining them, and create symlinks
|
||||
|
||||
## tmux keybindings
|
||||
|
||||
The included `.tmux.conf` makes the following changes/additions to the default tmux keybindings:
|
||||
|
||||
- The prefix key is now `ctrl-a` (and `ctrl-a ctrl-a` is used to send `ctrl-a` to the console)
|
||||
- Switching windows is done with `ctrl-alt-left/right` (no prefix key)
|
||||
- Switching panes is done with `alt-left/right/up/down` (no prefix key)
|
||||
- Splitting panes is done with `ctrl-a |` (horizontal) and `ctrl-a -` (vertical)
|
||||
- Reloading `~/.tmux.conf` is done with `ctrl-a shift-r`
|
||||
|
||||
Mouse control is also enabled, and the terminal mode is set to `screen-256color`.
|
||||
Use `config.sh` to automate the setup of a number of things.
|
||||
|
|
|
@ -1,4 +1,9 @@
|
|||
# Bash Config
|
||||
# Bash
|
||||
|
||||
## Scripts
|
||||
|
||||
- [`2path.sh`](scripts/2path.sh) - create a symlink to a file or directory from `~/bin`
|
||||
- [`syncfiles.sh`](scripts/syncfiles.sh) - given paths to two or more files, prompt to copy the newest one over each of the older ones
|
||||
|
||||
## Adding color to root user shells
|
||||
|
||||
|
|
38
config.sh
38
config.sh
|
@ -4,36 +4,37 @@ root_win="$(wslpath -w .)"
|
|||
root_win_slash="$(wslpath -m .)"
|
||||
while :; do
|
||||
action="$(whiptail --menu '' 22 60 15 \
|
||||
wsl- 'WSL' wsl-win ' Create ~/win symlink to %USERPROFILE%' wsl-hosts ' Create /etc/hosts symlink to system' wsl-resolvconf ' Create /etc/resolv.conf' wsl-elevate ' Set up wsl-elevate' wsl-scripts ' Set up WSL helper scripts' \
|
||||
wsl- 'WSL' wsl-resolvconf ' Create /etc/resolv.conf' wsl-hosts ' Create /etc/hosts symlink to system' wsl-elevate ' Set up wsl-elevate' wsl-scripts ' Set up WSL helper scripts' wsl-win ' Create ~/win symlink to %USERPROFILE%' wsl-wsltty ' Create WSLtty config symlinks (Windows)' \
|
||||
bash- 'Bash' bash-profile ' Create ~/.profile symlink' bash-scripts ' Set up util scripts' bash-completion ' Create ~/.bash_completion.d symlink' \
|
||||
ssh- 'SSH' ssh ' Create config symlinks' ssh-win ' Create config symlinks (Windows)' \
|
||||
git- 'Git' git ' Create config symlinks' git-win ' Create config symlinks (Windows)' git-delta ' Install Delta' git-filter-repo ' Install git-filter-repo' git-scripts ' Set up various scripts' \
|
||||
vscode- 'VS Code' vscode-ext ' Install extensions' vscode-linux ' Create config symlinks (Linux) ' vscode-win ' Create config symlinks (Windows)' vscode-local-win ' Create local extension symlink (Windows)' \
|
||||
wsltty- 'WSLtty' wsltty ' Create config symlinks (Windows)' \
|
||||
nodejs- 'Node.js' nodejs-volta ' Install Volta' nodejs-npmrc ' Create .npmrc symlink' nodejs-config ' Create ~/dev/* symlinks to config' nodejs-scripts ' Set up various scripts' \
|
||||
gcloud- 'Google Cloud SDK' gcloud ' Install' gcloud-config ' Create config symlinks' \
|
||||
tmux- 'tmux' tmux ' Create config symlinks' \
|
||||
firefox- 'Firefox' firefox-rebuild-win ' Rebuild configs from templates (Windows)' firefox-link-win ' Create user.js symlinks (Windows)' \
|
||||
win- 'Windows' win-developer-mode ' Enable developer mode' win-scancode-map ' Swap caps lock and context key' \
|
||||
--notags --default-item "$action" 3>&2 2>&1 1>&3-)"
|
||||
case "$action" in
|
||||
wsl-win)
|
||||
rm -rf ~/win &&
|
||||
ln -s "$(wslpath "$(wslvar USERPROFILE)")" ~/win
|
||||
;;
|
||||
wsl-hosts)
|
||||
wsl.exe -d $WSL_DISTRO_NAME -u $(id -un 0) -- ln -fs "$(wslpath "$(wslvar WINDIR)")"/System32/drivers/etc/hosts /etc/hosts
|
||||
;;
|
||||
wsl-resolvconf)
|
||||
wsl.exe -d $WSL_DISTRO_NAME -u $(id -un 0) -- rm /etc/resolv.conf
|
||||
wsl.exe -d $WSL_DISTRO_NAME -u $(id -un 0) -- echo $'nameserver 1.1.1.1\nnameserver 1.0.0.1' \> /etc/resolv.conf
|
||||
;;
|
||||
wsl-hosts)
|
||||
wsl.exe -d $WSL_DISTRO_NAME -u $(id -un 0) -- ln -frs "$(wslpath "$(wslvar WINDIR)")"/System32/drivers/etc/hosts /etc/hosts
|
||||
;;
|
||||
wsl-elevate)
|
||||
wsl.exe -d $WSL_DISTRO_NAME -u $(id -un 0) -- ln -fs $PWD/wsl/wsl-elevate /usr/local/bin/wsl-elevate
|
||||
wsl.exe -d $WSL_DISTRO_NAME -u $(id -un 0) -- ln -frs wsl/wsl-elevate /usr/local/bin/wsl-elevate
|
||||
;;
|
||||
wsl-scripts)
|
||||
bash/scripts/2path.sh wsl/scripts
|
||||
;;
|
||||
wsl-win)
|
||||
rm -rf ~/win &&
|
||||
ln -rs "$(wslpath "$(wslvar USERPROFILE)")" ~/win
|
||||
;;
|
||||
wsl-wsltty)
|
||||
(cmd.exe /c rmdir /s /q "%APPDATA%\wsltty" 2\> nul; cmd.exe /c mklink /d "%APPDATA%\wsltty" "$root_win\wsl\wsltty")
|
||||
;;
|
||||
bash-profile)
|
||||
ln -frs bash/.profile ~/.profile
|
||||
;;
|
||||
|
@ -46,11 +47,11 @@ while :; do
|
|||
;;
|
||||
ssh)
|
||||
rm -rf ~/.ssh &&
|
||||
ln -rs ssh ~/.ssh &&
|
||||
ln -rs ssh/config ~/.ssh &&
|
||||
chmod 600 ~/.ssh/*
|
||||
;;
|
||||
ssh-win)
|
||||
(cmd.exe /c rmdir /s /q "%USERPROFILE%\.ssh" 2\> nul; cmd.exe /c mklink /d "%USERPROFILE%\.ssh" "$root_win\ssh")
|
||||
(cmd.exe /c rmdir /s /q "%USERPROFILE%\.ssh" 2\> nul; cmd.exe /c mklink /d "%USERPROFILE%\.ssh" "$root_win\ssh\config")
|
||||
;;
|
||||
git)
|
||||
ln -frs git/.gitconfig ~/.gitconfig
|
||||
|
@ -87,9 +88,6 @@ while :; do
|
|||
vscode-local-win)
|
||||
(cmd.exe /c rmdir /s /q "%USERPROFILE%\.vscode\extensions\local" 2\> nul; cmd.exe /c mklink /d "%USERPROFILE%\.vscode\extensions\local" "$root_win\vscode\local-extension")
|
||||
;;
|
||||
wsltty)
|
||||
(cmd.exe /c rmdir /s /q "%APPDATA%\wsltty" 2\> nul; cmd.exe /c mklink /d "%APPDATA%\wsltty" "$root_win\wsl\wsltty")
|
||||
;;
|
||||
nodejs-volta)
|
||||
curl https://get.volta.sh | bash -s -- --skip-setup &&
|
||||
bash/scripts/2path.sh ~/.volta/bin
|
||||
|
@ -113,7 +111,7 @@ while :; do
|
|||
gcloud-config)
|
||||
mkdir -p ~/.config &&
|
||||
rm -rf ~/.config/gcloud &&
|
||||
ln -rs gcloud ~/.config/gcloud
|
||||
ln -rs gcloud/config ~/.config/gcloud
|
||||
;;
|
||||
tmux)
|
||||
ln -frs tmux/.tmux.conf ~/.tmux.conf
|
||||
|
@ -146,12 +144,6 @@ while :; do
|
|||
cmd.exe /c mklink %APPDATA%\\Mozilla\\Firefox\\Profiles\\"$profile"\\user.js "$root_win"\\firefox\\configs\\"$config"
|
||||
done
|
||||
;;
|
||||
win-developer-mode)
|
||||
powershell.exe start regedit -verb runas "$root_win\windows\developer-mode.reg"
|
||||
;;
|
||||
win-scancode-map)
|
||||
powershell.exe start regedit -verb runas "$root_win\windows\scancode-map.reg"
|
||||
;;
|
||||
'')
|
||||
break
|
||||
;;
|
||||
|
|
1
firefox/.gitignore
vendored
Normal file
1
firefox/.gitignore
vendored
Normal file
|
@ -0,0 +1 @@
|
|||
/*.proxy
|
30
firefox/README.md
Normal file
30
firefox/README.md
Normal file
|
@ -0,0 +1,30 @@
|
|||
# Firefox
|
||||
|
||||
## `.gitignore`'d
|
||||
|
||||
- `configs/*` - files whose names are `+`-separated filenames of files from this directory - these will be constructed by concatenation from the base files, and will be symlinked to from various Firefox profiles' `user.js` files
|
||||
- `*.proxy` - proxy auto-config files - these too can be referred to in the above `configs/*` files, without the `.proxy` extension
|
||||
|
||||
## `user.js` handling (Windows-specific)
|
||||
|
||||
Create `*.proxy` files containing proxy auto-config files.
|
||||
|
||||
Create empty `configs/*` files whose names are assembled by concatenating the names of templates in this directory (or `*.proxy` files without the `.proxy` extension) separated by `+`s.
|
||||
|
||||
There is a menu option in `config.sh` to generate (or regenerate) the `configs/*` files from their constituent templates, including adding the appropriate configuration to point to a particular `*.proxy` file.
|
||||
|
||||
There is also a menu option in `config.sh` for creating symlinks from various Firefox profiles' `user.js` files to the assembled `configs/*` files.
|
||||
|
||||
## Additional manual setup
|
||||
|
||||
For each profile:
|
||||
|
||||
- Change the [default search engine](about:preferences#search) to DuckDuckGo
|
||||
- Current approximate complement of add-ons (varies by profile):
|
||||
- [Buster: Captcha Solver for Humans](https://addons.mozilla.org/addon/buster-captcha-solver/)
|
||||
- [Feedbro](https://addons.mozilla.org/addon/feedbroreader/)
|
||||
- [Greasemonkey](https://addons.mozilla.org/addon/greasemonkey/)
|
||||
- [Kee - Password Manager](https://addons.mozilla.org/addon/keefox/)
|
||||
- [NoScript Security Suite](https://addons.mozilla.org/addon/noscript/)
|
||||
- [RSSPreview](https://addons.mozilla.org/addon/rsspreview/)
|
||||
- [uBlock Origin](https://addons.mozilla.org/addon/ublock-origin/)
|
2
firefox/configs/.gitignore
vendored
Normal file
2
firefox/configs/.gitignore
vendored
Normal file
|
@ -0,0 +1,2 @@
|
|||
/*
|
||||
!/.gitignore
|
5
gcloud/README.md
Normal file
5
gcloud/README.md
Normal file
|
@ -0,0 +1,5 @@
|
|||
# Google Cloud SDK
|
||||
|
||||
## `.gitignore`'d
|
||||
|
||||
- `config/*` - Google Cloud SDK configuration files
|
2
gcloud/config/.gitignore
vendored
Normal file
2
gcloud/config/.gitignore
vendored
Normal file
|
@ -0,0 +1,2 @@
|
|||
/*
|
||||
!/.gitignore
|
1
git/.gitignore
vendored
Normal file
1
git/.gitignore
vendored
Normal file
|
@ -0,0 +1 @@
|
|||
/github_token
|
28
git/README.md
Normal file
28
git/README.md
Normal file
|
@ -0,0 +1,28 @@
|
|||
# Git
|
||||
|
||||
## `.gitignore`'d
|
||||
|
||||
- `github_token` - GitHub Personal Access Token with read access to repos
|
||||
|
||||
## Scripts
|
||||
|
||||
- [`git clean-branches`](scripts/git-clean-branches) - delete local branches which track deleted remote branches
|
||||
- [`git clean-config`](scripts/git-clean-config) - unset various local config values, so global config will be used
|
||||
- [`git clean-dates`](scripts/git-clean-dates) - set commit dates of all commits in the given range to their authoring dates
|
||||
- [`git clean-fork`](scripts/git-clean-fork) - assuming `origin` and `fork` remotes, resets default branch on `fork` to first commit on `origin`, deletes all other branches on `fork` that are present on `origin`, and deletes all tags on `fork`
|
||||
- [`git clean-modes`](scripts/git-clean-modes) - reset all file modes to those in the repository
|
||||
- [`git clean-mtime`](scripts/git-clean-mtime) - set a file's mtime to its most recent commit's author date
|
||||
- [`git clean-pr`](scripts/git-clean-pr) - delete all `pr/` branches created by `git cpr`
|
||||
- [`git clean-user`](scripts/git-clean-user) - set author and committer of all commits in the given range to the currently configured identity
|
||||
- [`git cpr`](scripts/git-cpr) - checkout a PR from GitHub by id, and set up the local branch to track the appropriate branch on the appropriate fork
|
||||
- [`git download-bundle`](scripts/git-download-bundle) - download a bundle file from a remote repository
|
||||
- [`git index-list-skip`](scripts/git-index-list-skip) - list all files that have had `--skip-worktree` set on them
|
||||
- [`git index-skip`](scripts/git-index-skip) - set `--skip-worktree` on a given file
|
||||
- [`git index-unskip`](scripts/git-index-unskip) - set `--no-skip-worktree` on a given file
|
||||
- [`git npm-add`](scripts/git-npm-add) - stage precisely the files that would be included in an npm package
|
||||
- [`git track`](scripts/git-track) - set current branch to track given remote and branch, defaulting to same branch name
|
||||
- [`git turbo-gc`](scripts/git-turbo-gc) - turbo garbage collect
|
||||
|
||||
## Git Credential Manager Core WSL/Windows interop
|
||||
|
||||
Copy [`wsl/git-credential-manager`](wsl/git-credential-manager) into the root of the Git for Windows installation, and symlink to it from the WSL `PATH`.
|
|
@ -1,4 +1,4 @@
|
|||
# KeePass Config
|
||||
# KeePass
|
||||
|
||||
## Installed plugins
|
||||
|
||||
|
|
1
nodejs/.gitignore
vendored
Normal file
1
nodejs/.gitignore
vendored
Normal file
|
@ -0,0 +1 @@
|
|||
/.npmrc
|
11
nodejs/README.md
Normal file
11
nodejs/README.md
Normal file
|
@ -0,0 +1,11 @@
|
|||
## Node.js
|
||||
|
||||
## `.gitignore`'d
|
||||
|
||||
- `.npmrc` - npm credentials, config, etc.
|
||||
|
||||
## Scripts
|
||||
|
||||
- [`npma.sh`](scripts/npma.sh) - find the given binaries searching upwards through `node_modules` and output aliases for them, suitable for `>> ~/.bash_aliases`
|
||||
- [`npmg.sh`](scripts/npmg.sh) - create a commit for a new version (if there are staged changed), and create and tag an otherwise dangling commit from HEAD that contains all of the files `npm publish` would
|
||||
- [`npml.sh`](scripts/npml.sh) - find the `node_modules` where the given dependencies are used, search up further for directories defining them, and create symlinks
|
5
ssh/README.md
Normal file
5
ssh/README.md
Normal file
|
@ -0,0 +1,5 @@
|
|||
# SSH
|
||||
|
||||
## `.gitignore`'d
|
||||
|
||||
- `config/*` - SSH keys, config, etc.
|
2
ssh/config/.gitignore
vendored
Normal file
2
ssh/config/.gitignore
vendored
Normal file
|
@ -0,0 +1,2 @@
|
|||
/*
|
||||
!/.gitignore
|
13
tmux/README.md
Normal file
13
tmux/README.md
Normal file
|
@ -0,0 +1,13 @@
|
|||
# tmux
|
||||
|
||||
## Keybindings
|
||||
|
||||
The included [`.tmux.conf`](.tmux.conf) makes the following changes/additions to the default tmux keybindings:
|
||||
|
||||
- The prefix key is now `ctrl-a` (and `ctrl-a ctrl-a` is used to send `ctrl-a` to the console)
|
||||
- Switching windows is done with `ctrl-alt-left/right` (no prefix key)
|
||||
- Switching panes is done with `alt-left/right/up/down` (no prefix key)
|
||||
- Splitting panes is done with `ctrl-a |` (horizontal) and `ctrl-a -` (vertical)
|
||||
- Reloading `~/.tmux.conf` is done with `ctrl-a shift-r`
|
||||
|
||||
Mouse control is also enabled, and the terminal mode is set to `screen-256color`.
|
11
vscode/README.md
Normal file
11
vscode/README.md
Normal file
|
@ -0,0 +1,11 @@
|
|||
# VS Code
|
||||
|
||||
## Settings and keybindings
|
||||
|
||||
[`settings.json`](settings.json) and [`keybindings.json`](keybindings.json) are VS Code's configuration files.
|
||||
|
||||
## Local extension
|
||||
|
||||
[`local-extension`](local-extension) contains a local, unpublished extension.
|
||||
|
||||
Currently it contains syntax highlighting for Svelte, separated from the other behavior from the official extension.
|
5
win/README.md
Normal file
5
win/README.md
Normal file
|
@ -0,0 +1,5 @@
|
|||
# Windows
|
||||
|
||||
## Registry entries
|
||||
|
||||
These are `.reg` files for configuration changes to Windows.
|
22
wsl/README.md
Normal file
22
wsl/README.md
Normal file
|
@ -0,0 +1,22 @@
|
|||
# WSL
|
||||
|
||||
## Setup
|
||||
|
||||
Use [`install.cmd`](install.cmd) to set up a new WSL installation. Run without arguments for details.
|
||||
|
||||
# wsl-elevate
|
||||
|
||||
[`wsl-elevate`](wsl-elevate) is a script that should be added to the system's path (not just the current user's path). Sourcing it in a script will result in that script being automatically relaunched as `root`. It's needed for several of the scripts below.
|
||||
|
||||
## Scripts
|
||||
|
||||
- [`wsl-apt`](scripts/wsl-apt) - run `apt update`/`upgrade`/`install`/`remove`/`autoremove`/`autoclean`
|
||||
- any package names given as arguments are treated as packages to `install`, except any prefixed with a `-` are treated as packages to `remove`
|
||||
- [`wsl-expose-ports`](scripts/wsl-expose-ports) - expose one or more ports within WSL to the outside world
|
||||
- this sets up a port proxy and a Windows firewall rule for each exposed port, and removes previous port proxies and firewall rules
|
||||
- multiple ports can be specified, each with an optional external port: `1234` exposes port 1234 as 1234, `1234:5678` exposes port 5678 as 1234
|
||||
- call without arguments to remove port proxies and firewall rules without creating new ones
|
||||
- [`wsl-fix-clock`](scripts/wsl-fix-clock) - sync the WSL clock with the Windows clock
|
||||
- [`wsl-fix-interop`](scripts/wsl-fix-interop) - fix `WSL_INTEROP` variable when it becomes incorrectly set
|
||||
- [`wsl-services`](scripts/wsl-services) - start useful services not automatically started by WSL
|
||||
- starts `procps` for `sysctl` configuration
|
Loading…
Reference in a new issue