Certain snaps, such as those providing a background service, expose configuration options that can be viewed and changed.
The commands for viewing and changing these configuration options are snap get
, snap set
and snap unset
.
For example, to see the configuration options exposed by an installed snap, enter snap get <snap name>
:
$ sudo snap get nextcloud
Key Value
mode production
nextcloud {...}
php {...}
ports {...}
private {...}
The {...}
in the output indicates that there are further options beneath the current key name level.
To explore configuration options, append the key name to the get command:
$ sudo snap get nextcloud ports
Key Value
ports.http 80
ports.https 443
Alternatively, the entire set of configuration options can be dumped as JSON by adding the -d
option:
$ sudo snap get -d nextcloud
{
"http": {
"compression": false
},
"mode": "production",
"nextcloud": {
"cron-interval": "5m"
},
"php": {
"memory-limit": "512M"
},
"ports": {
"http": 80,
"https": 443
},
"private": {
"http": {
"compression": false
},
"mode": "production",
"nextcloud": {
"cron-interval": "5m"
},
"php": {
"memory-limit": "512M"
},
"ports": {
"http": 80,
"https": 443
}
}
}
Use the set command to change a configuration option:
$ sudo snap set nextcloud ports.http=81
$ sudo snap get nextcloud ports
Key Value
ports.http 81
ports.https 443
To clear and return a value to its default state, use the unset command (from snapd 2.41+):
$ sudo snap unset nextcloud ports.http
# sudo snap get nextcloud ports
Key Value
ports.http 80
ports.https 443
Adding an exclamation mark (!
) to the end of an option name also clears its value:
$ sudo snap set nextcloud ports.http!
Un-setting with an exclamation mark can be mixed with setting other options at the same time:
$ sudo snap set nextcloud ports.https! ports.http=81
The update process will test the validity of the configuration options. If any errors are detected, the overall change is cancelled and the previous configuration reinstated.
Similarly, if the configuration update process takes longer than a reasonable amount of time, currently 5 minutes, the update is forcefully aborted and the once again the configuration is rolled back.
For background details on how snap developers set configuration options, see Adding snap configuration and The configure hook.
Last updated 1 year, 4 months ago.