This commit is contained in:
Brian Zalewski 2023-03-18 04:20:43 -04:00
parent 0595b23ae7
commit 5f89d92dd0
30 changed files with 33080 additions and 169 deletions

View file

@ -2,4 +2,4 @@
<center><h1 align="center">Contributing Guide</h1></center>
</div>
First of all, thanks for visiting this page 😊 ❤️ ! We are *stoked* that you may be considering contributing to this project. You should read this guide if you are considering creating a pull request or plan to modify the code for your own purposes.
First of all, thanks for visiting this page 😊 ❤️ ! We are _stoked_ that you may be considering contributing to this project. You should read this guide if you are considering creating a pull request or plan to modify the code for your own purposes.

View file

@ -6,11 +6,11 @@ All code projects have their own style. Coding style will vary from coder to cod
Style guides are generally written for a specific language but a great place to start learning about the best coding practices is on [Google Style Guides](https://google.github.io/styleguide/). Follow the link and you will see style guides for most popular languages. We also recommend that you look through the following style guides, depending on what language you are coding with:
* [Airbnb JavaScript Style Guide](https://github.com/airbnb/javascript)
* [Angular Style Guide](https://angular.io/guide/styleguide)
* [Effective Go](https://go.dev/doc/effective_go)
* [PEP 8 Python Style Guide](https://www.python.org/dev/peps/pep-0008/)
* [Git Style Guide](https://github.com/agis/git-style-guide)
- [Airbnb JavaScript Style Guide](https://github.com/airbnb/javascript)
- [Angular Style Guide](https://angular.io/guide/styleguide)
- [Effective Go](https://go.dev/doc/effective_go)
- [PEP 8 Python Style Guide](https://www.python.org/dev/peps/pep-0008/)
- [Git Style Guide](https://github.com/agis/git-style-guide)
For more informative links, refer to the [GitHub Awesome Guidelines List](https://github.com/Kristories/awesome-guidelines).

File diff suppressed because one or more lines are too long

View file

@ -4,7 +4,7 @@ Welcome to a new way of doing things. Born out of complete paranoia and a relent
Gas Station a collection of Ansible playbooks, configurations, scripts, and roles meant to provision computers and networks with the "best of GitHub". By leveraging Ansible, you can provision your whole network relatively fast in the event of a disaster or scheduled network reset. This project is also intended to increase the security of your network by allowing you to frequently wipe, reinstall, and re-provision your network, bringing it back to its original state. This is done by backing up container storage volumes (like database files and Docker volumes) to encrypted S3 buckets, storing configurations in encrypted git repositories, and leveraging GitHub-sourced power tools to make the job easy-peasy.
This project started when a certain somebody changed their desktop wallpaper to an _cute_ picture of a cat 🐱 when, all of a sudden, their computer meowed. Well, it actually started before that but no one believes someone who claims that time travelers hacked them on a regular basis. *Tip: If you are stuck in spiritual darkness involving time travelers, save yourself some headaches by adopting an other-people first mentality that may include volunteering, tithing, and surrendering to Jesus Christ.* Anyway, enough preaching!
This project started when a certain somebody changed their desktop wallpaper to an _cute_ picture of a cat 🐱 when, all of a sudden, their computer meowed. Well, it actually started before that but no one believes someone who claims that time travelers hacked them on a regular basis. _Tip: If you are stuck in spiritual darkness involving time travelers, save yourself some headaches by adopting an other-people first mentality that may include volunteering, tithing, and surrendering to Jesus Christ._ Anyway, enough preaching!
Gas Station is:

View file

@ -1,4 +1,4 @@
[flake8]
exclude = .autodoc, .cache, .common, .config, .git, .modules, .npm, .pnpm-store, .shared, .task, .venv, .vscode, build, dist, node_modules, roles, venv
ignore = E402
exclude = ".autodoc, .cache, .common, .config, .git, .modules, .npm, .pnpm-store, .shared, .task, .venv, .vscode, build, dist, node_modules, roles, venv"
ignore = "E402"
max-line-length = 120

View file

@ -256,6 +256,11 @@ tasks:
- >
readme generate --headingPrefix '{}' --silent --config .variables.json
--input ".config/docs/{{.README_TEMPLATE}}"
- |
if [ -f docs/img/logo-full.png ]; then
sed -i 's/\/-\/raw\/master\/logo.png/\/-\/raw\/master\/docs\/img\/logo-full.png/' README.md
sed -i 's/width="148" height="148"/height="69"/' README.md
fi
- task: markdown:scrub
vars:
SCRUB_FILE: README.md

View file

@ -88,6 +88,9 @@ tasks:
# remote_ref -> refs/heads/master
# remote_sha -> 9901a2eb2f34d5744276a80c4b339a88a92a7b53
REMOTE_BRANCH="$(echo $remote_ref | sed 's/^[^\/]*\/[^\/]*\///')"
if [ "$(echo "$HOST" | cut -c1-8)" == 'https://' ]; then
HOST="$(echo "$HOST" | cut -c8)"
fi
.config/log star "Repository -----> https://$HOST/$ORG/$PROJECT"
if [ "$HOST" == 'gitlab.com' ]; then
if [ "$REMOTE_BRANCH" != 'master' ]; then

View file

@ -70,14 +70,14 @@ tasks:
- git init
- git remote add origin "{{.GITLAB_REPO}}"
- git add --all
- git commit --quiet -m "🧐 refactor(submodule): Adding folder/project to its own git repository."
- git commit --quiet -m "🧐 refactor(submodule) Adding folder/project to its own git repository."
- git push --quiet -u --no-progress origin master
- cd .. && rm -rf {{.BASENAME}}
- cd .. && git add {{.BASENAME}}
- cd .. && git commit --quiet -m "🧐 refactor(submodule): Removing folder which will now be a submodule."
- git commit --quiet -m "🧐 refactor(submodule) Removing folder which will now be a submodule."
- cd .. && git submodule add -b master "{{.GITLAB_REPO}}" {{.BASENAME}}
- cd .. && git add {{.BASENAME}}
- cd .. && git commit --quiet -m "🧐 refactor(submodule): Adding new submodule which was previously a directory."
- cd .. && git commit --quiet -m "🧐 refactor(submodule) Adding new submodule which was previously a directory."
- cd .. && git push --quiet -u --no-progress origin HEAD
preconditions:
- sh: '[[ ! $(git rev-parse --git-dir) =~ ".git/modules" ]]'

View file

@ -16,7 +16,7 @@ To use a fork (if you made modifications to the original project), set this equa
2. Your GitHub username / slug if you changed it from `install.doctor` (e.g. `ProfessorManhattan/install.doctor`)
3. A git remote URL (e.g. `git@gitlab.com:megabyte-labs/install.doctor`)
* Environment variable: `START_REPO`
- Environment variable: `START_REPO`
Note, this variable is used by the `bash <(curl -sSL https://install.doctor/start)` command and is not used anywhere in the project itself.
@ -26,113 +26,113 @@ Set to true if you would like all prompts to be bypassed. If you have not alread
your encryption keys, then the encryption process will be bypassed and default fallback
files will be used. Set to any value to perform a headless installation.
* Environment variable: `HEADLESS_INSTALL`
- Environment variable: `HEADLESS_INSTALL`
### Work Environment
Set to true if you are setting up a work environment where things like Tor should
not be installed.
* Environment variable: `WORK_ENVIRONMENT`
- Environment variable: `WORK_ENVIRONMENT`
### Restricted Environment
Set to true if you are setting up an environment that should not use sudo / administrator
privileges. This is a WIP.
* Environment variable: `RESTRICTED_ENVIRONMENT`
- Environment variable: `RESTRICTED_ENVIRONMENT`
### Software Group
The category you select for software group will determine which list of software should be
installed. The lists are configurable by modifying `~/.local/share/chezmoi/software.yml`.
* Environment variable: `SOFTWARE_GROUP`
- Environment variable: `SOFTWARE_GROUP`
### Name
Enter your full name as you would like it to appear in configuration files such as the Git
configuration.
* Environment variable: `FULL_NAME`
- Environment variable: `FULL_NAME`
### E-mail
Enter your primary e-mail address.
* Environment variable: `PRIMARY_EMAIL`
- Environment variable: `PRIMARY_EMAIL`
### Public GPG Key ID
**Environment Variable Only** If you have a public GPG key available on the Ubuntu or MIT keyservers, then you can enter it
so that it is automatically imported.
* Environment variable: `KEYID`
- Environment variable: `KEYID`
### Timezone
Enter your timezone in the format of `America/New_York`. It should be available in the TZ database.
* Environment variable: `TIMEZONE`
- Environment variable: `TIMEZONE`
### Domain
The domain address you would like to use for any part of the deployment that involves launching
a publicly web service.
* Environment variable: `PUBLIC_SERVICES_DOMAIN`
- Environment variable: `PUBLIC_SERVICES_DOMAIN`
### CloudFlare API Token
The API token is used to automatically configure various web services that rely on public DNS
records.
* Environment variable: `CLOUDFLARE_API_TOKEN`
- Environment variable: `CLOUDFLARE_API_TOKEN`
### GitHub Gist Token
**Environment Variable Only** Pass in a GitHub token with the `gist` scope to be able to use the `gist` CLI tool without having to authenticate.
* Environment variable: `GITHUB_GIST_TOKEN`
- Environment variable: `GITHUB_GIST_TOKEN`
### GitHub Read-Only Token
**Environment Variable Only** Pass in a GitHub read-only token linked to your account to automatically save a backup of your
GitHub repositories. For more information, see [this link](https://github.com/gabrie30/ghorg#scm-provider-setup).
* Environment variable: `GITHUB_READ_TOKEN`
- Environment variable: `GITHUB_READ_TOKEN`
### GitLab Read-Only Token
**Environment Variable Only** Pass in a GitLab read-only token linked to your account to automatically save a backup of your
GitLab repositories. For more information, see [this link](https://github.com/gabrie30/ghorg#scm-provider-setup).
* Environment variable: `GITLAB_READ_TOKEN`
- Environment variable: `GITLAB_READ_TOKEN`
### G-mail Address
**Environment Variable Only** Add a G-mail address which you would like to use as the handler for outgoing SMTP mail.
* Environment variable: `GMAIL_ADDRESS`
- Environment variable: `GMAIL_ADDRESS`
### G-mail App Password
**Environment Variable Only** Add the app password to your G-mail address so that outgoing mail can be handled by G-mail.
* Environment variable: `GMAIL_APP_PASSWORD`
- Environment variable: `GMAIL_APP_PASSWORD`
### Ngrok Authentication Token
**Environment Variable Only** Add your Ngrok authentication token so that the configuration file can be automatically
generated.
* Environment Variable: `NGROK_AUTH_TOKEN`
- Environment Variable: `NGROK_AUTH_TOKEN`
### Slack API Token
**Environment Variable Only** Add your Slack API token so that `slackterm` can be automatically set up.
* Environment Variable: `SLACK_API_TOKEN`
- Environment Variable: `SLACK_API_TOKEN`
### Surge.sh Username
@ -143,29 +143,28 @@ in `.chezmoitemplates/secrets/key-surgesh-password` to leverage this functionali
**Environment Variable Only** Add a Tailscale authentication key so that Tailscale can be automatically connected to your Tailscale network.
* Environment Variable: `TAILSCALE_AUTH_KEY`
- Environment Variable: `TAILSCALE_AUTH_KEY`
### OpenVPN Username
* Environment Variable: `OVPN_USERNAME`
- Environment Variable: `OVPN_USERNAME`
### OpenVPN Password
* Environment Variable: `OVPN_PASSWORD`
- Environment Variable: `OVPN_PASSWORD`
### VMWare Workstation Key
* Environment Variable: `VMWARE_WORKSTATION_LICENSE_KEY`
- Environment Variable: `VMWARE_WORKSTATION_LICENSE_KEY`
### Google Cloud SDK Default E-mail
* Environment Variable: `GCE_SERVICE_ACCOUNT_EMAIL`
- Environment Variable: `GCE_SERVICE_ACCOUNT_EMAIL`
### Google Cloud SDK Default Project
* Environment Variable: `CLOUDSDK_CORE_PROJECT`
- Environment Variable: `CLOUDSDK_CORE_PROJECT`
### Snapcraft E-mail
* `SNAPCRAFT_EMAIL`
- `SNAPCRAFT_EMAIL`

View file

@ -13,6 +13,6 @@ This project incorporates design patterns from the [Megabyte Labs](https://megab
There are currently boilerplates and templates written in the following languages:
* TypeScript (primary language)
* Python
* Go
- TypeScript (primary language)
- Python
- Go

View file

@ -13,4 +13,4 @@ The script has finished provisioning. Enjoy! You can review the installation log
**bZ out**
*Note: Some of the settings / applications might require a reboot (or at the very least, a terminal reload).*
_Note: Some of the settings / applications might require a reboot (or at the very least, a terminal reload)._

View file

@ -5,139 +5,189 @@ https://github.com/QaidVoid/Complete-Single-GPU-Passthrough
https://github.com/dosyago/DiskerNet
https://github.com/mldangelo/personal-site
https://github.com/rigoneri/Syte3
ERROR Gsettings Failed to apply gsetting
✖ ERROR Gsettings Failed to apply gsetting
Error: Command failed: gsettings set org.gnome.desktop.interface color-scheme prefer-dark
No such key “color-scheme”
CLOUDFLARE_API_TOKEN
GMAIL_APP_PASSWORD
### Ensure these PATHs are added on Windows
add to PATH:
'%ProgramFiles(x86)%\mitmproxy\bin'
'%ProgramFiles(x86)%\juju'
# https://github.com/graysky2/profile-cleaner
# https://github.com/chifflier/ff_create_profile/blob/master/ff_create_profile
# https://addons.mozilla.org/en-US/firefox/addon/duckduckgo-for-firefox/
### POSSIBLY USEFUL SOFTWARE
https://hackjutsu.com/Lepton/
* Incorporate /home/linuxbrew/.linuxbrew/etc/bash_completion.d
* https://docs.brew.sh/Shell-Completion
- Incorporate /home/linuxbrew/.linuxbrew/etc/bash_completion.d
- https://docs.brew.sh/Shell-Completion
### WINDOWS MISSING PACKAGES
# FOLLOWING SOFTWARE IS IN Brewfile.terminal but not in Scoop.terminal or Chocolatey.terminal
# TODO: Find replacements or alternatives
# It's possible some are available via other installation methods - please research and figure out which ones
# we can install via NPM, Go etc.
# LSD used instead of exa for Windows
# Glances not on Windows
# ASDF not on Windows
# autorestic not on windows
# gist not on Windows
# git-secret not on Windows
# nb not on Windows
# zsh not on Windows
# bandwhich
# nnn not on Windows
# rm-improved not on Windows
# hey not on Windows
# pass not on Windows
# sysbench not on Windows
# teller not on Windows
# ssh-vault not on Windows
# automake not on windows
# zx --- needs npm?
# pywhat --- ???
# mycli --- ?
# litecli --- ?
# yj --- ?
# choose --- ?
# tmux not on Windows
# mcfly
# t-rec
# whalebrew
# ots
### WINDOWS MISSING FROM DEV environment
# bun
# codeclimate
# minio mc
# dockle
# git-subrepo
# oq
# sdkman
# sshpass
# goofys
# tfenv
# shc
# bun
# codeclimate
# minio mc
# dockle
# git-subrepo
# oq
# sdkman
# sshpass
# goofys
# tfenv
# shc
{{ if not $headless -}}
age:
identity: "{{ .chezmoi.homeDir }}/.config/age/key.txt"
recipient: "age16kxd4ljclq9ksnxvl2ee7a5xnj744kwyv04p04ka0n3rzxdpl5nsq52svl"
identity: "{{ .chezmoi.homeDir }}/.config/age/key.txt"
recipient: "age16kxd4ljclq9ksnxvl2ee7a5xnj744kwyv04p04ka0n3rzxdpl5nsq52svl"
{{- end }}
## Figure out where these go
### Restic
RESTIC_REPOSITORY_FILE Name of file containing the repository location (replaces --repository-file)
RESTIC_REPOSITORY Location of repository (replaces -r)
RESTIC_PASSWORD_FILE Location of password file (replaces --password-file)
RESTIC_PASSWORD The actual password for the repository
RESTIC_PASSWORD_COMMAND Command printing the password for the repository to stdout
RESTIC_KEY_HINT ID of key to try decrypting first, before other keys
RESTIC_CACHE_DIR Location of the cache directory
RESTIC_COMPRESSION Compression mode (only available for repository format version 2)
RESTIC_PROGRESS_FPS Frames per second by which the progress bar is updated
RESTIC_PACK_SIZE Target size for pack files
TMPDIR Location for temporary files
RESTIC_REPOSITORY_FILE Name of file containing the repository location (replaces --repository-file)
RESTIC_REPOSITORY Location of repository (replaces -r)
RESTIC_PASSWORD_FILE Location of password file (replaces --password-file)
RESTIC_PASSWORD The actual password for the repository
RESTIC_PASSWORD_COMMAND Command printing the password for the repository to stdout
RESTIC_KEY_HINT ID of key to try decrypting first, before other keys
RESTIC_CACHE_DIR Location of the cache directory
RESTIC_COMPRESSION Compression mode (only available for repository format version 2)
RESTIC_PROGRESS_FPS Frames per second by which the progress bar is updated
RESTIC_PACK_SIZE Target size for pack files
AWS_ACCESS_KEY_ID Amazon S3 access key ID
AWS_SECRET_ACCESS_KEY Amazon S3 secret access key
AWS_SESSION_TOKEN Amazon S3 temporary session token
AWS_DEFAULT_REGION Amazon S3 default region
AWS_PROFILE Amazon credentials profile (alternative to specifying key and region)
AWS_SHARED_CREDENTIALS_FILE Location of the AWS CLI shared credentials file (default: ~/.aws/credentials)
TMPDIR Location for temporary files
ST_AUTH Auth URL for keystone v1 authentication
ST_USER Username for keystone v1 authentication
ST_KEY Password for keystone v1 authentication
AWS_ACCESS_KEY_ID Amazon S3 access key ID
AWS_SECRET_ACCESS_KEY Amazon S3 secret access key
AWS_SESSION_TOKEN Amazon S3 temporary session token
AWS_DEFAULT_REGION Amazon S3 default region
AWS_PROFILE Amazon credentials profile (alternative to specifying key and region)
AWS_SHARED_CREDENTIALS_FILE Location of the AWS CLI shared credentials file (default: ~/.aws/credentials)
OS_AUTH_URL Auth URL for keystone authentication
OS_REGION_NAME Region name for keystone authentication
OS_USERNAME Username for keystone authentication
OS_USER_ID User ID for keystone v3 authentication
OS_PASSWORD Password for keystone authentication
OS_TENANT_ID Tenant ID for keystone v2 authentication
OS_TENANT_NAME Tenant name for keystone v2 authentication
ST_AUTH Auth URL for keystone v1 authentication
ST_USER Username for keystone v1 authentication
ST_KEY Password for keystone v1 authentication
OS_USER_DOMAIN_NAME User domain name for keystone authentication
OS_USER_DOMAIN_ID User domain ID for keystone v3 authentication
OS_PROJECT_NAME Project name for keystone authentication
OS_PROJECT_DOMAIN_NAME Project domain name for keystone authentication
OS_PROJECT_DOMAIN_ID Project domain ID for keystone v3 authentication
OS_TRUST_ID Trust ID for keystone v3 authentication
OS_AUTH_URL Auth URL for keystone authentication
OS_REGION_NAME Region name for keystone authentication
OS_USERNAME Username for keystone authentication
OS_USER_ID User ID for keystone v3 authentication
OS_PASSWORD Password for keystone authentication
OS_TENANT_ID Tenant ID for keystone v2 authentication
OS_TENANT_NAME Tenant name for keystone v2 authentication
OS_APPLICATION_CREDENTIAL_ID Application Credential ID (keystone v3)
OS_APPLICATION_CREDENTIAL_NAME Application Credential Name (keystone v3)
OS_APPLICATION_CREDENTIAL_SECRET Application Credential Secret (keystone v3)
OS_USER_DOMAIN_NAME User domain name for keystone authentication
OS_USER_DOMAIN_ID User domain ID for keystone v3 authentication
OS_PROJECT_NAME Project name for keystone authentication
OS_PROJECT_DOMAIN_NAME Project domain name for keystone authentication
OS_PROJECT_DOMAIN_ID Project domain ID for keystone v3 authentication
OS_TRUST_ID Trust ID for keystone v3 authentication
OS_STORAGE_URL Storage URL for token authentication
OS_AUTH_TOKEN Auth token for token authentication
OS_APPLICATION_CREDENTIAL_ID Application Credential ID (keystone v3)
OS_APPLICATION_CREDENTIAL_NAME Application Credential Name (keystone v3)
OS_APPLICATION_CREDENTIAL_SECRET Application Credential Secret (keystone v3)
B2_ACCOUNT_ID Account ID or applicationKeyId for Backblaze B2
B2_ACCOUNT_KEY Account Key or applicationKey for Backblaze B2
OS_STORAGE_URL Storage URL for token authentication
OS_AUTH_TOKEN Auth token for token authentication
AZURE_ACCOUNT_NAME Account name for Azure
AZURE_ACCOUNT_KEY Account key for Azure
AZURE_ACCOUNT_SAS Shared access signatures (SAS) for Azure
B2_ACCOUNT_ID Account ID or applicationKeyId for Backblaze B2
B2_ACCOUNT_KEY Account Key or applicationKey for Backblaze B2
GOOGLE_PROJECT_ID Project ID for Google Cloud Storage
GOOGLE_APPLICATION_CREDENTIALS Application Credentials for Google Cloud Storage (e.g. $HOME/.config/gs-secret-restic-key.json)
AZURE_ACCOUNT_NAME Account name for Azure
AZURE_ACCOUNT_KEY Account key for Azure
AZURE_ACCOUNT_SAS Shared access signatures (SAS) for Azure
RCLONE_BWLIMIT rclone bandwidth limit
GOOGLE_PROJECT_ID Project ID for Google Cloud Storage
GOOGLE_APPLICATION_CREDENTIALS Application Credentials for Google Cloud Storage (e.g. $HOME/.config/gs-secret-restic-key.json)
RCLONE_BWLIMIT rclone bandwidth limit
### Wazuh
@ -170,8 +220,7 @@ Assigns the agent to one or more existing groups (separated by commas). See agen
ENROLLMENT_DELAY
Assigns the time that agentd should wait after a successful registration. See delay_after_enrollment.
### Docker
https://github.com/filebrowser/filebrowser
https://github.com/coder/code-server

View file

@ -29,10 +29,10 @@ START_REPO=git@gitlab.com:megabyte-labs/install.doctor.git bash <(curl -sSL http
### Quick Start Notes
* The quick start script is tested on the latest versions of Archlinux, CentOS, Debian, Fedora, macOS, and Ubuntu
* The quick start script is the preferred method of using this project to provision your system
* The script can be configured to be completely headless by specifying environment variables which are detailed below
* _Windows support is on the roadmap._
- The quick start script is tested on the latest versions of Archlinux, CentOS, Debian, Fedora, macOS, and Ubuntu
- The quick start script is the preferred method of using this project to provision your system
- The script can be configured to be completely headless by specifying environment variables which are detailed below
- _Windows support is on the roadmap._
## Chezmoi-Based

View file

@ -23,14 +23,14 @@ config:
gpg: https://raw.githubusercontent.com/drduh/config/master/gpg.conf
docker:
healthchecks:
allowedHosts: "*"
allowedHosts: '*'
defaultFromEmail: no-reply@megabyte.space
siteLogoUrl: https://gitlab.com/megabyte-labs/misc/assets/-/raw/master/logo/color3@10x.png
siteName: Megabyte Labs Healthchecks
siteRoot: "/"
siteRoot: '/'
portainer:
siteLogoUrl: https://gitlab.com/megabyte-labs/misc/assets/-/raw/master/logo/color3@10x.png
templatesUrl: ""
templatesUrl: ''
statping:
description: Uptime monitoring for Megabyte Labs managed web services
name: Megabyte Labs Uptime Monitoring

View file

@ -0,0 +1,4 @@
{
"tabWidth": 2,
"useTabs": false
}

View file

@ -0,0 +1,121 @@
{
"private": false,
"name": "install-doctor-vscode-libs",
"version": "0.0.1",
"description": "Configuration for supporting Node.js packages depended on by the VSCode configuration",
"license": "MIT",
"author": "Brian Zalewski <brian@megabyte.space> (https://megabyte.space)",
"homepage": "https://megabyte.space",
"config": {
"commitizen": {
"path": "node_modules/git-cz-emoji"
}
},
"peerDependenciesMeta": {
"eslint": {
"optional": true
}
},
"devDependencies": {
"@commitlint/config-conventional": "latest",
"eslint-config-strict-mode": "latest",
"git-cz-emoji": "latest",
"handlebars-helpers": "latest",
"jest-preset-ts": "latest",
"prettier": "^2.4.1",
"prettier-config-sexy-mode": "latest",
"semantic-release-config": "latest",
"typescript": "^4.5.5"
},
"keywords": [
"vscode",
"plugins",
"extensions",
"prettier",
"eslint"
],
"engines": {
"node": ">=18.4.0"
},
"changelog": {
"displayTypes": [
"feat",
"fix",
"perf",
"refactor",
"revert"
],
"showAuthor": true
},
"commitlint": {
"extends": [
"@commitlint/config-conventional"
],
"helpUrl": "https://megabyte.space/docs/contributing/commits"
},
"eslintConfig": {
"extends": "eslint-config-strict-mode"
},
"funding": [
{
"type": "opencollective",
"url": "https://opencollective.com/megabytelabs"
},
{
"type": "patreon",
"url": "https://www.patreon.com/ProfessorManhattan"
}
],
"jest": {
"preset": "jest-preset-ts",
"reporters": [
"default",
[
"jest-html-reporters",
{
"filename": "index.html",
"logoImgPath": "./.config/assets/logo-jest-report.png",
"openReport": true,
"pageTitle": "Code Coverage Report",
"publicPath": "./coverage"
}
]
]
},
"pnpm": {
"allowedVersions": {
"@typescript-eslint/eslint-plugin": "5",
"eslint": "8",
"typescript": "4"
},
"neverBuiltDependencies": [
"core-js",
"core-js-pure",
"highlight.js"
],
"peerDependencyRules": {
"ignoreMissing": [
"eslint",
"prettier",
"puppeteer"
]
}
},
"prettier": "prettier-config-sexy-mode",
"release": {
"branches": [
"main",
"master",
"next",
{
"name": "beta",
"prerelease": true
}
],
"extends": "semantic-release-config"
},
"volta": {
"node": "18.4.0",
"yarn": "1.22.19"
}
}

View file

@ -20,6 +20,9 @@
"[markdown]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[scss]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[toml]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},

View file

@ -1,4 +1,3 @@
{
"external_update_url": "https://clients2.google.com/service/update2/crx"
"external_update_url": "https://clients2.google.com/service/update2/crx"
}

View file

@ -1,4 +1,3 @@
{
"MetricsReportingEnabled": false
"MetricsReportingEnabled": false
}

View file

@ -1,6 +1,6 @@
{
"DefaultBrowserSettingEnabled": true,
"PasswordManagerEnabled": false,
"SafeBrowsingEnabled": true,
"TranslateEnabled": true
"DefaultBrowserSettingEnabled": true,
"PasswordManagerEnabled": false,
"SafeBrowsingEnabled": true,
"TranslateEnabled": true
}

View file

@ -1,4 +1,4 @@
{
"windowFocusWorkaround": false,
"darkMode": true
"windowFocusWorkaround": false,
"darkMode": true
}

View file

@ -6,13 +6,11 @@ email-listing-page-size = 50
[gmail]
default = true
email = "{{ .user.gmail.email }}"
backend = "imap"
imap-host = "imap.gmail.com"
imap-port = 993
imap-login = "{{ .user.gmail.email }}"
imap-passwd-cmd = "pass show gmail"
sender = "smtp"
smtp-host = "smtp.gmail.com"
smtp-port = 465

View file

@ -1,3 +1,3 @@
{
"disable-root-redirector": true
"disable-root-redirector": true
}

View file

@ -1,23 +1,22 @@
{
"backup_device_uuid": "",
"btrfs_mode": "true",
"count_boot": "0",
"count_daily": "4",
"count_hourly": "8",
"count_monthly": "0",
"count_weekly": "2",
"do_first_run": "true",
"exclude": [],
"exclude-apps": [],
"include_btrfs_home": "false",
"parent_device_uuid": "",
"schedule_boot": "false",
"schedule_daily": "false",
"schedule_hourly": "false",
"schedule_monthly": "false",
"schedule_weekly": "false",
"snapshot_count": "0",
"snapshot_size": "0",
"stop_cron_emails": "true"
"backup_device_uuid": "",
"btrfs_mode": "true",
"count_boot": "0",
"count_daily": "4",
"count_hourly": "8",
"count_monthly": "0",
"count_weekly": "2",
"do_first_run": "true",
"exclude": [],
"exclude-apps": [],
"include_btrfs_home": "false",
"parent_device_uuid": "",
"schedule_boot": "false",
"schedule_daily": "false",
"schedule_hourly": "false",
"schedule_monthly": "false",
"schedule_weekly": "false",
"snapshot_count": "0",
"snapshot_size": "0",
"stop_cron_emails": "true"
}

View file

@ -1,9 +1,7 @@
{
"allowed_extensions": [
"profile-switcher-ff@nd.ax"
],
"description": "Profile Switcher for Firefox",
"name": "ax.nd.profile_switcher_ff",
"path": "PATH_PLACEHOLDER/ff-pswitch-connector",
"type": "stdio"
"allowed_extensions": ["profile-switcher-ff@nd.ax"],
"description": "Profile Switcher for Firefox",
"name": "ax.nd.profile_switcher_ff",
"path": "PATH_PLACEHOLDER/ff-pswitch-connector",
"type": "stdio"
}

22100
local/package-lock.json generated

File diff suppressed because one or more lines are too long

View file

@ -315,7 +315,9 @@
]
}
},
"prettier": "prettier-config-sexy-mode",
"prettier": {
"extends": "prettier-config-sexy-mode"
},
"release": {
"branches": [
"main",