Improving Desktop images
Ideally we would need to establish a desktop UX team.
Desktop Related tasks has low priority, but lots of users.
Identify high-level Areas of Focus for role and recruit from community.
I suggest an option for "soft" integration into the main build system. I have tested this option and so far it works without destroying the main build system (which is currently used by the MASTER branch). I suggest continuing the discussion on the forum, this will allow everyone interested to speak out (and those who do not have access to Jira).
is in our main repository. We should be focusing to merge it for 21.02. Currently its tested only to some degree, focused that current functionality is not broken. Not all features are finished nor included.
Looks like a very interesting solution. Since we cannot offer all the possible combinations of DE’s, software and kernels that users would want, give them the possibility to customize the builds.
On our side, I think we could focus on offering just a few pre-made options that are relevant to the purpose of Armbian. For example, IMO heavy desktops like KDE or Gnome are not appropiate for most SBC’s. Current minimalistic Xfce is a very good example of the way to go, as I see it. We could make some other options along those lines.
For example, I have been experimenting with Weston in a humble RK3328 board, with very good results. I think a minimalistic, lightweight Wayland desktop would be a very interesting addition.
In any case, these are just some ideas. I would like to cooperate with this desktop enhancement project.
For the time being, I am working on the integration of the Legacy multimedia solution (that I used to provide through separate scripts) into the Armbian package set. You can see the progress here: https://armbian.atlassian.net/jira/software/c/projects/AR/issues/AR-151
Well, the menu works fine for focal → XFCE. I’ll try to add actual package lists next week, and test various desktop configurations.
Alright, the whole build system is now able to take multiple desktop configurations, multiple desktop software groups configuration with their own debian and armbian desktop configuration scripts.
The whole idea is that you have :
In each of these folders you have the following files :
packages which provide a list of packages, added the whole "Desktop packages list".
debian/postinst script appended to the postinst script used to generate the Armbian Desktop Debian package
armbian/create_desktop_package.sh script executed before the creation of the Armbian Desktop Debian package
Then you can have affinities/desktop and affinities/boards subfolders which help provide package lists and scripts for specific desktops, boards and boards + desktops configurations.
These subfolders have the same structure (packages, debian/* and armbian/*). The boards subfolders can have an additional affinities subfolder for desktops configuration, but that's it (the madness stops there).
TODO NOW :
Change the affinities name to something that makes more sense, and take less letters to type.
Fill up the packages files accordingly, along with the debian/* and armbian/* scripts.
So far, I tested the whole system with XFCE on my Tinkerboard and it works.
I'm also thinking of replacing desktops "config_" by a global package list with additional features like, for example, in XFCE :
[ ] extras
[ ] xubuntu desktop
I currently only setup the packages files for XFCE on Ubuntu Focal. I still need to do that for Gnome, KDE and others…
However it works, I burned a SD Card, booted a new Armbian and got a XFCE installation with all the programs I asked for.
My branch is here :
My compilation options were :
./compile.sh docker KERNEL_ONLY=no KERNEL_CONFIGURE=no BOARD=tinkerboard KERNEL_TARGET=current BRANCH=current RELEASE=focal BUILD_DESKTOP=yes DESKTOP_ENVIRONMENT=xfce DESKTOP_ENVIRONMENT_CONFIG_NAME=config_full DESKTOP_SOFTWARE_GROUPS_SELECTED="browsers editors programming"
I didn’t retest the menuconfig after my last changes, I’ll see if anything is broken here.
Meanwhile, it works fine with the variables.