No description
| config | ||
| firefox | ||
| firefox.png | ||
| foxyproxy.png | ||
| install.txt | ||
| README.md | ||
| tree.html | ||
[tutorial v1.1_101)] A choice variable
Screenshot
Clone and install
To test this tutorial, you need to download this repository and install Rougail:
git clone -b 1.1 https://forge.cloud.silique.fr/stove/rougail-tutorials.git
cd rougail-tutorials
python -m venv venv_rougail
. venv_rougail/bin/activate
pip install rougail-cli rougail-output-exporter rougail-output-doc rougail-user-data-yaml
Then switch to the tutorial page:
git switch --detach v1.1_101
Structure
.
└── firefox
├── 00-proxy.yml
├── 10-manual.yml
├── 20-manual.yml
├── 30-auto.yml
├── 40-no_proxy.yml
├── 50-prompt_authentication.yml
├── 55-proxy_dns_socks5.yml
└── 60-dns_over_https.yml
Contents of the firefox/60-dns_over_https.yml file
%YAML 1.2
---
version: 1.1
dns_over_https: # DNS over HTTPS
enable_dns_over_https: false # Enable DNS over HTTPS
provider:
description: Use Provider
choices:
- Cloudflare
- NextDNS
- Custom
default: Cloudflare
disabled:
variable: _.enable_dns_over_https
when: false
...
Let's generate the documentation
rougail -m firefox/ --modes_level basic standard advanced -o doc
| Variable | Description |
|---|---|
proxy_modechoice standard mandatory |
Configure Proxy Access to the Internet. Choices: - No proxy ← (default) - Auto-detect proxy settings for this network - Use system proxy settings - Manual proxy configuration - Automatic proxy configuration URL |
Manual proxy configuration
manual
basic disabled
Disabled: when the variable "proxy_mode" hasn't the value "Manual proxy configuration"
HTTP Proxy
manual.http_proxy
basic
| Variable | Description |
|---|---|
manual.http_proxy.addressdomainname basic mandatory |
HTTP address. Validator: the domain name can be an IP |
manual.http_proxy.portport standard mandatory |
HTTP Port. Validators: - well-known ports (1 to 1023) are allowed - registred ports (1024 to 49151) are allowed - private ports (greater than 49152) are allowed Default: 8080 |
| Variable | Description |
|---|---|
manual.use_for_httpsboolean standard mandatory |
Also use this proxy for HTTPS. Default: true |
HTTPS Proxy or SOCKS Proxy
This family builds families dynamically
manual.https_proxy
manual.socks_proxy
standard hidden
Hidden: in HTTPS case if "_.use_for_https" is set to "true"
Identifiers:
- HTTPS
- SOCKS
| Variable | Description |
|---|---|
| manual.https_proxy.address manual.socks_proxy.address domainname standard mandatory |
HTTPS or SOCKS address. Validator: the domain name can be an IP Default: the value of the variable "manual.http_proxy.address" |
| manual.https_proxy.port manual.socks_proxy.port port standard mandatory |
HTTPS or SOCKS port. Validators: - well-known ports (1 to 1023) are allowed - registred ports (1024 to 49151) are allowed - private ports (greater than 49152) are allowed Default: the value of the variable "manual.http_proxy.port" |
| manual.https_proxy.version manual.socks_proxy.version choice standard mandatory disabled |
SOCKS host version used by proxy. Choices: - v4 - v5 ← (default) Disabled: when the identifier is "HTTPS" |
| Variable | Description |
|---|---|
autoweb_address basic mandatory disabled |
Automatic proxy configuration URL. Validator: the domain name in web address can be only a hostname Disabled: when the variable "proxy_mode" hasn't the value "Automatic proxy configuration URL" |
no_proxydomainname standard disabled unique multiple |
Address for which proxy will be desactivated. Connections to localhost, 127.0.0.1/8 and ::1 are never proxied. Validators: - the domain name can starts by a dot - the domain name can be a hostname - the domain name can be an IP - the domain name can be network in CIDR format Examples: - .mozilla.org - .net.nz - 192.168.1.0/24 Disabled: when the variable "proxy_mode" has the value "No proxy" |
prompt_authenticationboolean standard mandatory disabled |
Prompt for authentication if password is saved. Default: true Disabled: when the variable "proxy_mode" has the value "No proxy" |
proxy_dns_socks5boolean advanced mandatory disabled |
Use proxy DNS when using SOCKS v5. Default: false Disabled: if "firefox.proxy_mode" is not "Manual proxy configuration" |
| or "firefox.manual.socks_proxy.version" is "v4" |
DNS over HTTPS
dns_over_https
standard
| Variable | Description |
|---|---|
dns_over_https.enable_dns_over_httpsboolean standard mandatory |
Enable DNS over HTTPS. Default: false |
dns_over_https.providerchoice standard mandatory disabled |
Use Provider. Choices: - Cloudflare ← (default) - NextDNS - Custom Disabled: when the variable "dns_over_https.enable_dns_over_https" has the value "false" |
Let's generate the changelog
rougail -m firefox/ --modes_level basic standard advanced -o doc --doc.contents changelog
New variable
| Variable | Description |
|---|---|
dns_over_https.providerchoice standard mandatory disabled |
Use Provider. Choices: - Cloudflare ← (default) - NextDNS - Custom Disabled: when the variable "dns_over_https.enable_dns_over_https" has the value "false" |
User datas
Example 1
config/01/config.yml
---
Output
rougail -m firefox/ --modes_level basic standard advanced -u yaml -yf config/01/config.yml
╭─────── Caption ────────╮ │ Variable Default value │ ╰────────────────────────╯ Variables: ┣━━ 📓 Configure Proxy Access to the Internet: No proxy ┗━━ 📂 DNS over HTTPS ┗━━ 📓 Enable DNS over HTTPS: false
Example 2
config/02/config.yml
---
dns_over_https:
enable_dns_over_https: true
Output
rougail -m firefox/ --modes_level basic standard advanced -u yaml -yf config/02/config.yml
╭────────────── Caption ───────────────╮ │ Variable Default value │ │ Modified value │ │ (⏳ Original default value) │ ╰──────────────────────────────────────╯ Variables: ┣━━ 📓 Configure Proxy Access to the Internet: No proxy ┗━━ 📂 DNS over HTTPS ┣━━ 📓 Enable DNS over HTTPS: true ◀ loaded from the YAML file "config/02/config.yml" (⏳ false) ┗━━ 📓 Use Provider: Cloudflare