You are not logged in.
I've configured my os in the way I had ideally wanted, how do I turn this into a package that I can install so i don't have to manually reconfigure when I upgrade to newer Q4OS version and I want to release it as well.
What configurations do I have to export for this? So far I got the kcsrc and qtcurve files. Those too, I have no idea on how to install automatically. Any guidance would help,
Thankyou!
Last edited by theasmitkid (2025-09-13 14:32)
Coding & Robotics Enthusiast | Brave & Spck Editor @ Lenovo Tab 4 8 · Android 8.1 · 2GB · 16GB
Offline
As a starting point, we would recommend you to explore existing code of some theme first. Just download "lswthemes-debonaire-trinity" package, extract the deb and inspect the code. All is human readable. Ask here for more specific help as you explore the source code.
Last edited by q4osteam (2025-09-13 09:38)
Offline
You can also publish your code, so we can check it and make some suggestions for you.
Offline
This has gotten unnecessarily complicated.. Main things I've made are
- qtcurve theme
- kcsrc color scheme
- icewm theme
- kate/kwrite theme
- kmenu modifications
- kicker configurations
- konqueror configurations
Gtk2->use my tde style in gtk2 applications
Gtk3->use another style: Breeze-Dark
There are too many residual config files that tde doesn't cleanup after i remove the applet, etc. so having a hard time understanding what should I add and what should I not..
Here's the code
https://codeberg.org/Setuzuna/Timir
Coding & Robotics Enthusiast | Brave & Spck Editor @ Lenovo Tab 4 8 · Android 8.1 · 2GB · 16GB
Offline
I had the same problem. I have themed so many things in my q4os trinity installation, and there's no real integrated mechanism to save/restore everything. That's exactly why I started working on q4xpack, to re install everything theming related I have set in place on reinstall, just like I want. Although this is imperfect and not complete yet, I intent to complete a new version (already started to work on it), much more customizable, and much more ergonomic. But this is related only to my "win10" theme now...
Maybe this will be a good project to create something that can save/restore aboslutely everything (ar at least with selectables items to choose what to save/restore) related to theme (general theme+apps theming) and the eventual apps who are part of the theme (for example, I use my win10 sidebar and some apps to complete the win10 "feeling", I need it installed if I use this theme - and want it to be removed when I test another theme for example. Maybe you want a dock , kooldock for example in a theme, and not in another theme etc...)
Something to add to our todo list maybe ;-)
TIP: I used this (and continue to use it) a lot to create the q4Xpack:
inotifywait -r -m -e modify /home/ | while read file_path file_event file_name; do echo ${file_path} ${file_name} event: ${file_event}; done
This command allow you to watch everything that is modified/created/removed when you set an option (you need to adapt the path, it's an example), it's very usefull to understand what option in rc files are related to GUI settings. (and much more)
Last edited by seb3773 (2025-09-13 15:58)
Debian & Q4OS (TDE!!), low-level C, ASM (z80/68k/x86/ARM64), embedded systems, CPU architectures (RISC-V, binary formats, assembly), retro-computing, metal music, guitar and sci-fi.
Offline
... there's no real integrated mechanism to save/restore everything.
If you would create a new visual theme, you can make the theme applicable using Lookswitcher. It's only needed to pack it the right way. It's not quite complicated. If you would need some assistance on this just ask, we can try to help here. We can also make changes in the Lookswitcher code to support more configurations, if needed.
Offline
Oh thanks seb! I will surely use this after i install Q4OS 6 (waiting for install cd)
Coding & Robotics Enthusiast | Brave & Spck Editor @ Lenovo Tab 4 8 · Android 8.1 · 2GB · 16GB
Offline
seb3773 wrote:... there's no real integrated mechanism to save/restore everything.
If you would create a new visual theme, you can make the theme applicable using Lookswitcher. It's only needed to pack it the right way. It's not quite complicated. If you would need some assistance on this just ask, we can try to help here. We can also make changes in the Lookswitcher code to support more configurations, if needed.
Not really for visual theme.. but I'd really appreciate it if you could maybe create a configuration remover
/opt/trinity/lib/tdeconf_update_bin/khotkeys_update --id setuzuna_xakarInstalls Khotkeys config but there is no uninstaller
Update: Implemented in Xakar v4.1
Last edited by theasmitkid (2025-09-14 14:27)
Coding & Robotics Enthusiast | Brave & Spck Editor @ Lenovo Tab 4 8 · Android 8.1 · 2GB · 16GB
Offline
@q4osteam could you test this deb package out?
(unable to upload big files here so had to use external source)
i've also written a seperate python script to install dark schema for kate, kwrite, konsole. as well as embedded konsole (konsolepart<-test in kate) and embedded kate (konqueror, ark, krusader<-test via "Preview in Embedded Advanced Text Editor"). Plus Dark Mode Syntax Highlighting for normal text & python (so far) for all of these apps.
Coding & Robotics Enthusiast | Brave & Spck Editor @ Lenovo Tab 4 8 · Android 8.1 · 2GB · 16GB
Offline
Oh seems like I didn't compress a file properly.. I've updated the file, so please download it again and try again
Last edited by theasmitkid (2025-09-14 16:10)
Coding & Robotics Enthusiast | Brave & Spck Editor @ Lenovo Tab 4 8 · Android 8.1 · 2GB · 16GB
Offline
You can just install Lookswitcher and apply the theme. We do not have the development capacity to test partial versions.
Offline
This one's finished, just need to set the python script as postinstall script that I have no idea on how to.. also Is it possible to create theme such that it installs without needing the tar.gz archive (like having the contents pre extracted)
Coding & Robotics Enthusiast | Brave & Spck Editor @ Lenovo Tab 4 8 · Android 8.1 · 2GB · 16GB
Offline
@q4osteam the v1 is complete and almost ready to release, however I am encountering an issue. How do I run a (python) script after the user selects the theme in Lookswitcher/Theme Manager? The XML file provides a way to decompress a tar.gz files which overrides the existing configurations.
Please note that the configurations I am doing via python, cannot be overridden and need to be run after user applies the theme, so i cannot run it as deb postinstall.
@seb3773 if you have any ideas then it'd help too.
Thankyou!
Coding & Robotics Enthusiast | Brave & Spck Editor @ Lenovo Tab 4 8 · Android 8.1 · 2GB · 16GB
Offline
How do I run a (python) script after the user selects the theme in Lookswitcher/Theme Manager?
You can define post-apply bash script in the "theme.xml" file just bellow "pre_uncompress" entry this way:
...
</keyboard>
<pre_uncompress filename="/opt/trinity/share/apps/kthememanager/themes/some_archive_name.tar.gz" />
<lsw_postscript scriptname="/opt/trinity/share/apps/kthememanager/themes/some_script_name.sh" />
</ktheme>
...Call an arbitrary python code or binaries from that bash script, the "some_script_name.sh" script will be executed just after the theme change.
Offline
Thanks!
Coding & Robotics Enthusiast | Brave & Spck Editor @ Lenovo Tab 4 8 · Android 8.1 · 2GB · 16GB
Offline
If you need additional Lookswitcher features to properly save and use your custom themes, just ask. We can make code changes as needed.
Offline
Oh umm.. how about
- being able to pass the kcsrc file as colour scheme instead of defining it in the XML
- being able to override configs without needing to compress the file
These two would be very useful.. and also if it's not possible currently then being able to run python script directly (without needing a .sh wrapper) would be pretty nice
- backup and restore system for themes (using timeshift over n over again breaks stuff.. and pretty inconvenience)
Coding & Robotics Enthusiast | Brave & Spck Editor @ Lenovo Tab 4 8 · Android 8.1 · 2GB · 16GB
Offline
- being able to pass the kcsrc file as colour scheme instead of defining it in the XML
- being able to override configs without needing to compress the file
You can easily achieve these by yourself at package compile time. We would recommend you to create some source directory structure and a simple script to compile package from .kcsrc and tar.gz from the extracted config files.
backup and restore system for themes (using timeshift over n over again breaks stuff.. and pretty inconvenience)
Yes, it would be useful, but it would require a lot of work. We've added it to the feature request list.
Offline
theasmitkid wrote:- being able to pass the kcsrc file as colour scheme instead of defining it in the XML
- being able to override configs without needing to compress the fileYou can easily achieve these by yourself at package compile time. We would recommend you to create some source directory structure and a simple script to compile package from .kcsrc and tar.gz from the extracted config files.
Yeah i guess I'd have to do this.. but would've preferred if there was a way to atleast use kcsrc theme provided, currently the kcsrc is just installed and then the colours are loaded from xml into "current theme"..
For configs, I'd just extend my config.py..
Okay, is there a like dcop command to set the kcsrc theme so i could set it via postinstall script?
theasmitkid wrote:backup and restore system for themes (using timeshift over n over again breaks stuff.. and pretty inconvenience)
Yes, it would be useful, but it would require a lot of work. We've added it to the feature request list.
I'd really like this to be a part of Q4OS, my postinstall script does backup some parts of themes.. maybe I'd extend that to backup completely and also add a restoring feature
Coding & Robotics Enthusiast | Brave & Spck Editor @ Lenovo Tab 4 8 · Android 8.1 · 2GB · 16GB
Offline
@q4osteam can you confirm whether ~/.configtde/qtcurve/stylerc is the location to store the "current" qtcurve theme.
like installing the darkonaire theme it installs /opt/trinity/share/apps/QtCurve/Darkonair.qtcurve and also a ~/.configtde/qtcurve/stylerc in the pre_uncompress,
so is it okay install /opt/trinity/share/apps/QtCurve/Darkonair.qtcurve as ~/.configtde/qtcurve/stylerc ?
Okay, is there a like dcop command to set the kcsrc theme so i could set it via postinstall script?
well i suppose the answer is no for this one
Last edited by theasmitkid (2025-09-19 18:11)
Coding & Robotics Enthusiast | Brave & Spck Editor @ Lenovo Tab 4 8 · Android 8.1 · 2GB · 16GB
Offline
... is it okay install /opt/trinity/share/apps/QtCurve/Darkonair.qtcurve as ~/.configtde/qtcurve/stylerc ?
Yes, that should work.
is there a like dcop command to set the kcsrc theme so i could set it via postinstall script?
No. as far as we know.
Offline
thanks
Coding & Robotics Enthusiast | Brave & Spck Editor @ Lenovo Tab 4 8 · Android 8.1 · 2GB · 16GB
Offline
@q4osteam can you also confirm that changing the colors (tdecmshell colors) only changes the following part of ~/.qt/qtrc (and not any other file?)
[KWinPalette]
activeBackground=#302f2f
activeBlend=#2f2929
activeForeground=#ffffff
activeTitleBtnBg=#96bff0
frame=#201f1f
inactiveBackground=#403f3e
inactiveBlend=#403f3e
inactiveForeground=#ffffff
inactiveFrame=#201f1f
inactiveTitleBtnBg=#4c4c4c
[Palette]
active=#e0dedb^e#403f3e^e#343738^e#2b2d2e^e#0c0d0d^e#212223^e#d4d2cf^e#343738^e#e8e6e3^e#201f1f^e#27292a^e#000000^e#184880^e#ffffff^e#508ed8^e#8e79a5^e
disabled=#464544^e#403f3e^e#343738^e#2b2d2e^e#0c0d0d^e#212223^e#212223^e#343738^e#484747^e#201f1f^e#27292a^e#000000^e#143c6a^e#ffffff^e#508ed8^e#8e79a5^e
inactive=#e0dedb^e#403f3e^e#343738^e#2b2d2e^e#0c0d0d^e#212223^e#d4d2cf^e#343738^e#e8e6e3^e#201f1f^e#27292a^e#000000^e#184880^e#ffffff^e#508ed8^e#8e79a5^eLast edited by theasmitkid (2025-09-19 18:40)
Coding & Robotics Enthusiast | Brave & Spck Editor @ Lenovo Tab 4 8 · Android 8.1 · 2GB · 16GB
Offline
As far as we know more files are affected by this action, for example "kdeglobals" and maybe others ? We would recommend you compare your $HOME directory before and after the change.
Offline