# | category | config | source |
---|---|---|---|
1 | operating_system | change hostname | https://github.com/RPi-Distro/raspi-config |
2 | operating_system | add user | https://www.digitalocean.com/community/tutorials/how-to-add-and-delete-users-on-ubuntu-18-04 |
3 | operating_system | delete user | https://www.digitalocean.com/community/tutorials/how-to-add-and-delete-users-on-ubuntu-18-04 |
4 | operating_system | change password | https://github.com/RPi-Distro/raspi-config |
-
regex on the front-end to have a well formatted hostname
RFCs mandate that a hostname's labels may contain only the ASCII letters 'a' through 'z' (case-insensitive), the digits '0' through '9', and the hyphen. Hostname labels cannot begin or end with a hyphen.No other symbols, punctuation characters, or blank spaces are permitted.
-
change hostname: POST /configure/changehostname?hostname=hostname
-
reboot
-
check if user exists: GET /humanusers
The user name should follow the following regex: ^[a-z-][a-z0-9-]{1,31}$
-
add or delete depending on the result: POST /configure/adduser?username=username&password=password
- check if user exists: GET /humanusers
- add or delete depending on the result: POST /configure/deleteuser?username=username
- check if user exists: GET /humanusers
- change password : POST /configure/changepassword?password=password&username=username
- no reboot needed
# | category | config | source |
---|---|---|---|
1 | package_management | update | https://www.cyberciti.biz/faq/how-do-i-update-ubuntu-linux-softwares/ |
2 | package_management | upgrade | https://www.cyberciti.biz/faq/how-do-i-update-ubuntu-linux-softwares/ |
3 | package_management | update & upgrade | https://www.cyberciti.biz/faq/how-do-i-update-ubuntu-linux-softwares/ |
- check lastUpdate in Firestore: GET .
- update depending on the result: POST /configure/update
- check lastUpgrade in Firestore: GET .
- upgrade depending on the result: POST /configure/upgrade
- check lastUpgrade in Firestore: GET .
- update & upgrade depending on the result: POST /configure/updateupgrade
# | category | config | source |
---|---|---|---|
1 | network | SSH | https://github.com/RPi-Distro/raspi-config |
2 | network | wifi country | https://github.com/RPi-Distro/raspi-config |
3 | network | wait for network at boot | https://github.com/RPi-Distro/raspi-config |
4 | network | VNC | https://github.com/RPi-Distro/raspi-config |
- check isSSHKeyGenerating: GET /rpinterfaces.
- if true, try later
- check isSSH: GET /rpinterfaces
- depending on the result: POST /configure/ssh?action=[enable/disable]
- check isWifiInterfaces and isWpaSupCom for a given [iface]: GET /rpinterfaces.
- change wifi country for wireless network: POST /configure/wificountry?iface=[iface]&country=[code]
- reboot
- check if isWaitForNetworkAtBoot: GET /boots
no need to check GET /configfiles because GET /boots does that
- depending on that enable or disable: POST /configure/waitfornetworkatboot?action=[enable/disable]
- no reboot needed
- check isVNCInstalled: GET /softwares. CAUTION: isVNCInstalled is verified by two commands in raspi-config. Here I verified with the one option only.
- if true, continue
- check isVNC: GET /rpinterfaces
- depending on the result: POST /configure/vnc?action=[enable/disable]
# | category | config | source |
---|---|---|---|
1 | screen | overscan | https://github.com/RPi-Distro/raspi-config |
2 | screen | blanking | https://github.com/RPi-Distro/raspi-config |
- check if file exists: GET /configfiles
- if file exists, check isOverscan: GET /displays
- depending on that enable or disable: POST /configure/overscan?action=[enable/disable]
- reboot
- check if file exists: GET /configfiles
- if file exists, check isXscreenSaverInstalled and isBlanking: GET /displays
- if isXscreenSaverInstalled = true, it will override the raspi-config blanking config: ABORT here
- if isXscreenSaverInstalled = false, then continue
- enable or disable depending on isBlanking: POST /configure/blanking?action=[enable/disable] PS: it will fail it try to enable while it is already enabled - same with disable status & disable
- reboot
# | category | config | source |
---|---|---|---|
1 | interface | camera | https://github.com/RPi-Distro/raspi-config |
2 | interface | SPI | https://github.com/RPi-Distro/raspi-config |
3 | interface | I2C | https://github.com/RPi-Distro/raspi-config |
4 | interface | one wire | https://github.com/RPi-Distro/raspi-config |
5 | interface | remote gpio | https://github.com/RPi-Distro/raspi-config |
- check isStartXElf: GET /rpinterfaces.
- if false, update firmware
- check isCamera: GET /rpinterfaces
- depending on the result: POST /configure/camera?action=[enable/disable]
- check isSPI: GET /rpinterfaces.
- depending on the result: POST /configure/spi?action=[enable/disable]
- reboot
- check isSPI: GET /rpinterfaces.
- depending on the result: POST /configure/i2c?action=[enable/disable]
- reboot
- check isOneWire: GET /rpinterfaces.
- depending on the result: POST /configure/onewire?action=[enable/disable]
- reboot
- check isRemoteGpio: GET /rpinterfaces.
- depending on the result: POST /configure/rgpio?action=[enable/disable]
- reboot