LXDE Blog

Divulgar conteúdo
Atualizado: 23 minutos 22 segundos atrás

LXPanel 0.8.1 released.

qua, 06/05/2015 - 18:20

After some bugs gathered and fixed, the bugfix release of LXPanel got its time to happen. So 0.8.1 now. In addition to 17 complete translations in 0.8.0, it now also completely translated to Japanese and Polish languages. The most probably it’s the fisrt and the last in 0.8.x series, time to do some development is around, you can wait for new awesome features, of course.
New release tarball download link:
lxpanel-0.8.1.tar.xz
SHA1: bfaf34b2574b02b9703777904e658ed082cf17dd

Changes since previous release 0.8.0 (see git log for details):

  • Improved OSS headers detection a bit.
  • Fixed expand setting on plugins with default_expand when more than one is available on the same panel.
  • Fixed icon for task button that retrieved using WM_HINTS.
  • Fixed wrong PanelIconGrid arrangement in vertical panel orientation.
  • Fixed missing handlers disconnect when destroying Task structure.
  • Removed writing debug messages to file when ‘indicator’ plugin is in use – it will write all the debug there and that changes the behavior which was not intended really.
  • Corrected background for ‘indicator’ plugin.
  • Fixed update ‘indicator’ plugin on configuration changes.
  • Fixed battery status: if discharge rate is 0 then it’s charged.
  • Fixed incorrect cycle in netproc_devicelist_clear() leading to crash on resume (after suspend).
  • Fixed scanning for temperature sensors which failed with some kernels.
  • Changed reconfiguring panel behavior: callbacks to plugins will be sent on idle, not immediately to avoid “stuck” spin button (and eventually even crash was possible).
  • Fixed initial icon on ‘volumealsa’ plugin to show real state instead of muted.
  • Fixed ‘dclock’ updating that it will show time on start, not just on next second change. It would create impression it’s slow otherwise.
  • Fixed wrong task button activation on not processed drag of button.

Memory Usage of LXQt 0.9

qui, 12/02/2015 - 02:54

Since the release of LXQt 0.9 several days ago, many people are curious about its memory usage since in the release announcement we mentioned the use of two libraries from KDE framework 5. Don’t worry! They are just “pure Qt libraries” without other KDE dependencies (Thank you KDE guys!). Good engineers always base their design desicions on careful analysis, experiments, and measurements, not politics. If a library works pretty well, it does not really matter where it comes from or it belongs to which camp. If it’s free software and it’s suitable for our need, I’d say “use it”. Here are some numbers of memory usage after cold boot.
Testing environment:

  • Debian testing (32 bit)
  • LXQt 0.9, Qt 5.3, and KF5 packages are taken from Siduction
  • Running in Virtualbox 4.3.20
  • RAM: 512 MB
  • CPU core: 1
  • Screen resolution: 1024×768
  • Measurement: Open xterm, and type `free -mh` (cache and buffer are excluded)

Memory usage after cold boot:

  • LXQt 0.9: 118 MiB
  • LXDE: 98 MiB
  • XFCE: 107 MiB
  • plain Openbox (without running any apps): 70 MiB

Well, for those who still remembered my previous report, the memory usage increased. But wait! All of the DEs, including Openbox, have the same degree of growth in memory usage. So it’s more possibly caused by the upgrade of the system itself. If you see the difference between plain openbox and LXQt, we only added 38 MiB (LXQt 0.8 added 37 MiB). Given that we migrated to Qt5 and added new features, both of which should normally increase memory usage, the current results are reasonable. Seriously, there are still room for more optimizations but we need some time to finish them.

LXQt aims to be a “modern” desktop with some “classic” designs which does not get in your way. We’re not going to clone KDE. Besides, don’t worry about resource usage. That’s the challange for developers and we’ll fight for it.

LXQt Performance Tips

qua, 04/02/2015 - 06:11

As we’re going to have a new release for LXQt 0.9, I’d like to provide some performance tips for users and packagers.

  1. Consider compiling lxqt-panel and lxqt-runner with menu-cache  support whenever possible:
    Menu-cache is a mechanism to cache the generated freedesktop.org application menu so we don’t need to parse hundreds of files everytime. Though you can compile lxqt-panel and lxqt-runner without it and things still work, these two components will generally load faster if you use menu-cache.
  2. Compile libfm with libexif:
    Libfm if the core library of PCManFM file manager. When compiled with libexif support, it can extract the thumbnails created by the cameras which are often embedded in jpeg files. So we can avoid loading the photo and generate the thumbnail ourselves. With libexif, loading folders with many photos will be faster.
  3. Try to “prelink” your system:
    When you launch a program, your system will load it alone with the libraries it requires. Then, dynamic linking will be performed to make these libraries work together. The process could take seconds in some cases and affect the speed of program startup. By using “prelink”, part of the linking/relocation process can be done once and cached; then in the future the dynamic linking becomes faster. It’s tool worth trying if your desktop takes quite a long time to login.
  4. Avoid GTK+ theme:
    Qt developers did a great job and provided a “GTK+” style for theming the Qt programs so they can look like GTK+/Gnome programs when running in Gnome. The magic behind this is simple. Your Qt style engine loads GTK+  2 and creates fake Gtk UI elements. Then, copy the images painted by GTK+ to your Qt widgets. By using this, you have both Qt and GTK+ 2 theme engines loaded for every Qt program. Not really a big deal since the operations are still fast enough, but if you don’t need a GTK+ theme, don’t use it. Try “fusion” for Qt5 or “Cleanlook” for Qt 4.
  5. Some notes about gvfs:
    Removing gvfs won’t make your file manager faster. PCManFM-Qt does not use it for most of the local file operations. So it’s safe to keep it around since it does not slow down things.  We used “gvfs” from Gnome internally for trash can, volume management, and mounting various network filesystems. Yes, the UI is in Qt and its core uses few Gnome stuff. Don’t hate gvfs just because there’s a “g” in its name. It’s a quite good VFS implementation which does not have Gnome dependencies. So don’t remove it just because its name contains a “g”. It provides you some good features, including mounting sftp filesystems or accessing Android mtp devices if you have proper plugins installed.
    Generally speaking, it might be a good idea for packagers to add “gvfs” to the dependencies or package suggestion list of pcmanfm-qt.
  6. Avoid Qt 5.4.0 if possible:
    We encountered several weird regression bugs of Qt 5.4 while debugging LXQt. It breaks drag and drop crossing different programs. With Qt 5.4, you cannot drag a file from my file manager to other programs, but it’s not my fault.  
    (The bug will be fixed in Qt 5.4.1, which is not yet released.)

We’re going to release LXQt 0.9 very soon!
Hope these tips help. Cheers!