Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Customizing Plasma 5 in Kubuntu

Customizing Plasma 5 in Kubuntu

My talk in Akademy 2017, talking about the problem I met when customizing Plasma 5 into our ezgo.

Franklin Weng

July 23, 2017
Tweet

More Decks by Franklin Weng

Other Decks in Technology

Transcript

  1. 5 Mandriva Ubuntu Fedora Suse Debian ... X Window Gnome

    KDE LXDE ... The Concept of ezgo Mandriva Ubuntu Fedora Suse Debian ... Gnome KDE LXDE ... M enu Diversity is a good feature of open source world, but it also confuses newbies. So for the system/desktop layer, we choose for them.
  2. 中華民國軟體自由協會 Application Menu • In Unity and Gnome3, the application

    menu was gone. • We decided to change the desktop from Gnome to KDE Plasma4. • ezgoX, ezgo11 and ezgo12 were based on Kubuntu 12.04, 13.04 and 14.04.
  3. 中華民國軟體自由協會 ezgo X: No Cross, No Crown. Only when we

    screw up our courage to go across the barrier, we can see new views and fnd out new possibilities.
  4. 中華民國軟體自由協會 ezgo11: Choose one get one FREE. People should know

    that they have different choices. Also, they need to have the ability to choose.
  5. 中華民國軟體自由協會 ezgo12: Time Proves. Many people question and challenge us.

    However, we believe that time will prove our insistence, about promoting FOSS, especially in schools.
  6. 中華民國軟體自由協會 "Customizing" • The "customizing" here does not mean to

    make up a personal desktop environment. • It means to make up "system default environment", i.e., the default environment any newly created user (including live user) would have.
  7. 中華民國軟體自由協會 Before ezgo11: Dirty Hack • The way to customize

    is to extract the iso file and squashfs, change or replace the system file directly, then recreate the iso file. • For example, we directly change the content of /usr/share/kde4/apps/plasma-desktop/init/00- defaultLayout.js to replace the desktop background and the plasmoids in the default activity.
  8. 中華民國軟體自由協會 Since ezgo12 • While studying Skolelinux (Debian-edu), I found

    a better (and should be correct) way to customize. • For example: /etc/X11/Xsession.d/30ezgo-artwork: KDEDIRS="/usr/share/ezgo/ezgo-kde/kde-profiles:$KDEDIRS" export KDEDIRS /etc/X11/Xsession.d/33ezgo-menu: XDG_MENU_PREFIX=ezgo- XDG_CONFIG_DIRS=/etc/xdg/ezgo:/etc/xdg:$XDG_CONFIG_DIRS XDG_DATA_DIRS=/usr/share/ezgo/ezgo-menu:$XDG_DATA_DIRS Important !!
  9. 中華民國軟體自由協會 Debian-ezgo • I reactivated the debian-ezgo pure blend and

    generate different debian packages for ezgo. • ezgo-artwork includes all the artwork like desktop background, dm background, icons, …, etc. • ezgo-kde includes all the files necessary to customize system default in KDE plasma4, like /usr/share/kde4/apps/plasma-desktop/init/30-ezgo.js which would run after 00-defaultLayout.js and would override the setting.
  10. 中華民國軟體自由協會 Debian-ezgo • My goal is to create ezgo-* debian

    packages so that after installing native Debian series distributions, like Debian, Kubuntu or even Mint, I just need to install ezgo-* and Plasma customization will be done. • Same apply to other desktop system like XFCE, LXDE, … etc.
  11. 中華民國軟體自由協會 Happy Ever After, Until... • Until we start to

    customize for ezgo13 (based on Kubuntu 16.04, Plasma5). • The first thing that struck me is: ezgo-menu didn't work. – No matter how I set the XDG_MENU_PREFIX, it always used kf5-applications.menu. – I have no way but to dirty-hack again: ln -s ezgo-applications.menu kf5-applications.menu
  12. 中華民國軟體自由協會 /etc/kde4rc? /etc/kde5rc? • According to the source code, the

    profile path should be set at /etc/kde5rc. • The following content didn't work as it used to be in ezgo12, i.e. Plasma4: [Directories-default] prefixes=/usr/share/ezgo/ezgo-kde/kde-profile • /etc/kde4rc, /etc/kderc, or /etc/kde5rc all didn't work.
  13. 中華民國軟體自由協會 Plasma.desktop layout.js • I cannot override layout.js using serial

    number, but have to dirty-hack the file again. – Violate the debian package policies
  14. 中華民國軟體自由協會 Next: KDE Neon? • Beautiful and great work! Just

    that... • I wish the next version of ezgo still uses KDE Plasma, either based on Debian + Plasma5 or KDE Neon. Nevertheless the above problems still needs to be solved.