answered
2020-02-14 12:04:29 +0200
tl;dr: You have asked for an easy solution, and to be honest: There is none that I am aware of... but if you know what you are doing or if you are open to experimenting, there is a way to modify the user's ambience database in order to modify ambiences that you have created locally...
Edz's answer is very good and working well with preinstalled ambiences... however, if you want to modify / fine tune your own ambiences, you'll need:
- developer mode & root access
- sqlite3
- minor experience with SQL
You would want to devel-su (or sudo) and open the user ambience db, but before you do, you should create a backup:
$ cd ~/.local/share/system/privileged/Ambienced
$ cp ambienced.sqlite ambienced.sqlite.bak
$ sqlite3 ambienced.sqlite
to see table headers, use
sqlite> .headers on
to list all tables, use
sqlite> .tables
there should be an "ambience" table, which is the one you'll want to modify... however, it will not tell you, how the ambiences are called (although you might be able to deduce that from the file name)... but there is a solution: the file table will give you the respective id, but it will do so for all files (ambience images, ringtones, ...), so in order to get just what you need, the best thing would probably be (with an example output):
sqlite> select fileId,displayName from ambience inner join file on file.id = ambience.fileId;
fileId|displayName
1|Zuneigung
2|Luftig
3|Fluss
4|Frische
5|Glazial
6|Harmonie
7|Intensiv
8|Freiheit
9|Party
10|Rollend
11|Sailfish 3
To look at some values, you would select the values (or everything with an asterisk) from the corresponding id entry, e.g.
sqlite> select * from ambience where fileId = 11;
fileId|favorite|colorScheme|homeWallpaper|applicationWallpaper|highlightColor|secondaryHighlightColor|primaryColor|secondaryColor|timestamp|ringerVolume|enabledSounds|partnerSpace|version
11|1|0|/usr/share/ambience/sailfish3/images/ambience_sailfish3.jpg|/home/nemo/.cache/ambienced/com/jolla/components/bgimages/2edc6197ap.jpg|#ff01bcf9|#b001bcf9|#ffffffff|#b0ffffff|2015-01-01T23:00:00|80|-1||2
Color values are ARGB, if I remember correctly... If you, for some reason, wanted to change the highlight color to red, you would do:
sqlite> update ambience set highlightColor='#ffff0000' where fileId=11;
You can change a lot of things... and you can break a lot of things, so I really do recommend you make a backup of the table before modfying anything...
These changes are permanent, on a user basis and theoretically can be moved to another system (of course you would have to move the accessed files as well and put them in the same location or else you might break something).
On might also point out, that it actually seems to be easier to create a "system ambience file" from your own stuff and put that to /usr/share/ambience/ - it all depends on wether you want to modify it in system or user space...