lomiri-system-settings
-
Hi all,
I want to change the look and feel of system settings I believe this is the repo
https://gitlab.com/ubports/development/core/lomiri-system-settingsJust trying to understand what would be the flow of the process
Do we build a click package and install it on the phone to see our changes?
plesae advise
thanks
update: I tried the command
CLICKABLE_FRAMEWORK=ubuntu-sdk-20.04 clickable desktop
but it gave me following errors==================== Checking for one of the modules 'upower-glib' CMake Error at /usr/share/cmake-3.16/Modules/FindPkgConfig.cmake:707 (message): None of the required 'upower-glib' found Call Stack (most recent call first): CMakeLists.txt:49 (pkg_search_module) -- Checking for one of the modules 'accountsservice' CMake Error at /usr/share/cmake-3.16/Modules/FindPkgConfig.cmake:707 (message): None of the required 'accountsservice' found Call Stack (most recent call first): CMakeLists.txt:50 (pkg_search_module) -- Checking for one of the modules 'geonames' CMake Error at /usr/share/cmake-3.16/Modules/FindPkgConfig.cmake:707 (message): None of the required 'geonames' found Call Stack (most recent call first): CMakeLists.txt:51 (pkg_search_module) -- Checking for one of the modules 'icu-i18n' -- Checking for one of the modules 'libandroid-properties' -- Checking for one of the modules 'click-0.4' CMake Error at /usr/share/cmake-3.16/Modules/FindPkgConfig.cmake:707 (message): None of the required 'click-0.4' found Call Stack (most recent call first): CMakeLists.txt:54 (pkg_search_module) -- Checking for module 'gsettings-qt' -- No package 'gsettings-qt' found
-
@nibzy26 as you noticed, the repo doesn't contain any clickable files, which means it is not installable as a click package.
see https://docs.ubports.com/en/latest/systemdev/testing-locally.html to be able to install a local version.
-
@lduboeuf Thanks
I followed the guide and using the option "Building packages in a chroot using sbuild" and doing a native build so that I can test it on my ubuntu PC but getting this error
=======================
nsyed@nsyed-HP-Laptop-15-bs1xx:~/Documents/lomiri-system-settings/lomiri-system-settings$ sbuild -d ${chroot_distro}
dh clean --with python3,migrations
dh: error: unable to load addon python3: Can't locate Debian/Debhelper/Sequence/python3.pm in @INC (you may need to install the Debian::Debhelper::Sequence::python3 module) (@INC contains: /etc/perl /usr/local/lib/x86_64-linux-gnu/perl/5.30.0 /usr/local/share/perl/5.30.0 /usr/lib/x86_64-linux-gnu/perl5/5.30 /usr/share/perl5 /usr/lib/x86_64-linux-gnu/perl/5.30 /usr/share/perl/5.30 /usr/local/lib/site_perl /usr/lib/x86_64-linux-gnu/perl-base) at (eval 16) line 1.
BEGIN failed--compilation aborted at (eval 16) line 1.Did i miss something and need to install a required package on the host ? I am on ubuntu 2.04 host.
please advise
thanks
-
@nibzy26 I don't know sorry, nevdr tried with sbuild...
-
Ok searched the internet and found this option to use with sbuild --no-clean-source
Now it built the deb packages in the parent directory.out of these many deb packages there is one called lomiri-system-settings_1.0.2_amd64.deb I guess this is the one to use.
Now a theoretical question: this package was built for my host amd64 architecture meaning I can install and run it on my PC ?
Then i will make changes in qml files , build it again and see the changes on my PC ?
After that I will just copy modified qml src files to my phone .
I hope this process flow is correct ??
-
@nibzy26 said in lomiri-system-settings:
Ok searched the internet and found this option to use with sbuild --no-clean-source
Now it built the deb packages in the parent directory.out of these many deb packages there is one called lomiri-system-settings_1.0.2_amd64.deb I guess this is the one to use.
Now a theoretical question: this package was built for my host amd64 architecture meaning I can install and run it on my PC ?
Then i will make changes in qml files , build it again and see the changes on my PC ?
After that I will just copy modified qml src files to my phone .
I hope this process flow is correct ??
Your deb package should be targeted to your device architecture ( arm64 i guess), so that you can install it via
dpkg -i
on it.
Unfortunatly you can't modify directly on your device Lomiri System Settings since it packages qml files into qrc. So only way is to build the deb package and install it.This is not the case for other Lomiri System Settings subcomponents, where qml files are available on the device. e.g:
dpkg -L lomiri-system-settings-update
so you can modify them directly ( after making partition rw ) -
@lduboeuf Thanks
Actually I used the native option and not the arm64 because I wanted to test my changes locally on the PC before making a deb package for the phone.
So I guess the flow would bemake changes locally ,
build amd64 package
install and run it in chroot environment (if its possible )
once happy with the changes build a deb package for the phone -
I tried to do dpkg -i lomiri-system-settings_1.0.2_amd64.deb
and it complained about missing dependency packages which were under depends: section in the control file like
Depends:
accountsservice,
accountsservice-ubuntu-schemas (>= 0.0.7),
bluez (>= 5.23),
click | ubuntu-snappy-cli,I thought these required packages are automatically installed in chroot during build process No ?
the goal is to test my changes locally first
-
@nibzy26 said in lomiri-system-settings:
I tried to do dpkg -i lomiri-system-settings_1.0.2_amd64.deb
and it complained about missing dependency packages which were under depends: section in the control file like
Depends:
accountsservice,
accountsservice-ubuntu-schemas (>= 0.0.7),
bluez (>= 5.23),
click | ubuntu-snappy-cli,I thought these required packages are automatically installed in chroot during build process No ?
the goal is to test my changes locally first
humm, you don't start with the easiest thing
If you start trying to install that package on your host, you will end up installing the whole UT :).
Not and easy way.For lomiri system settings, there are not plenty of way.
Either build and install on your device or maybe use the PDK https://github.com/ubports/ubports-pdk ( i never tried that personnaly ) -
@lduboeuf Thanks
Actually I tried to install it in chroot environment not directly on my host and it complained about missing dependencies.
Is this not the right way to do ? as the title of this link
https://docs.ubports.com/en/latest/systemdev/testing-locally.html
says "making changes and testing them locally " -
@nibzy26 maybe there is a way to auto install dependencies via dpkg, idk.
btw how will you test UI in your build environment ? -
@lduboeuf Thanks
well I dont have any answers at the moment just questions
I though this lomiri system settings will be a stand alone app with just the UI and no hardware/device connection .
Actually I just want to change the background ,foreground colors and some icons only so just cosmetics changes and dont intend to change functionality -
@nibzy26 said in lomiri-system-settings:
@lduboeuf Thanks
well I dont have any answers at the moment just questions
I though this lomiri system settings will be a stand alone app with just the UI and no hardware/device connection .It loads all settings plugins and have some shared QML components in
Actually I just want to change the background ,foreground colors and some icons only so just cosmetics changes and dont intend to change functionality
colors and icon are defined in Theme, which is system wide. system settings use default ones. You can still hardcore colors of course for your own playground.
-
I personally use Crossbuilder, but i test it directly on the device, not able to test anything on local host for UI things for that kind of app.
-
Thanks. lets see what I can accomplish under the circumstances.
I am running the pdk VM now and as first step I am just trying to transfer files from my host pc and the pdk VM.
so trying to get ssh and scp commands to work. what is the ip address of the VM ??. I can see two interfaces likeens5: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 10.0.2.15 netmask 255.255.255.0 broadcast 10.0.2.255
inet6 fec0::71ee:d2dc:6283:2b08 prefixlen 64 scopeid 0x40<site>
inet6 fe80::e294:f17d:2325:bfc3 prefixlen 64 scopeid 0x20<link>
inet6 fec0::13fc:fa48:cc7f:13ea prefixlen 64 scopeid 0x40<site>
ether 52:54:00:12:34:56 txqueuelen 1000 (Ethernet)
RX packets 73912 bytes 107573944 (107.5 MB)
RX errors 0 dropped 50 overruns 0 frame 0
TX packets 10300 bytes 612779 (612.7 KB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 50634lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 1000 (Local Loopback)
RX packets 290 bytes 24209 (24.2 KB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 290 bytes 24209 (24.2 KB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0lxcbr0: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500
inet 10.0.3.1 netmask 255.255.255.0 broadcast 10.0.3.255
ether 00:16:3e:00:00:00 txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0phablet@ubuntu-phablet:/pdk/sources$
-
@nibzy26 if I recall correctly the pdk shows up as a device of you do
adb devices
on your host with the pdk running. -
@arubislander Thanks
Yes I can see it .
So I guess I can use adb shell and setup ssh using ssh keys as per the documentation
https://docs.ubports.com/en/latest/userguide/advanceduse/ssh.html -
okay I managed to build the lomiri-systems-settings-1.0.2.deb package and installed it.
Now for some reason I cant open any of the apps like calculator, phone, system-settings when i click on them inside the VM ?
wonder whats wrong
I have restarted the VM but still cant run any appNote: It was not building the systems-settings package and was complaining about these packages
libqt5quick5-gles
libqt5gui5-glesso I removed these packages and it built fine.
Question#2: Can we run this pdk VM inside another Ubuntu VM ?
-
It seems that these packages have conflict
libqt5quick5-gles with libqt5quick5
libqt5gui5-gles with libqt5gui5 -
Can i edit files directly on the phone ?
I checked under /usr/share/lomiri-system-settings
some files are present in qml-plugin but some src files are not there ?