Language Selection

English French German Italian Portuguese Spanish

GNOME

GNOME Developers: Microsoft Stifling the Competition and GStreamer/Graphene

Filed under
GNOME
  • Musings on the Microsoft Component Firmware Update (CFU) Protocol

    CFU has a bazaar pre-download phase before sending the firmware to the microcontroller so the uC can check if the firmware is required and compatible. CFU also requires devices to be able to transfer the entire new transfer mode in runtime mode. The pre-download “offer” allows the uC to check any sub-components attached (e.g. other devices attached to the SoC) and forces it to do dep resolution in case sub-components have to be updated in a specific order.

    Pushing the dep resolution down to the uC means the uC has to do all the version comparisons and also know all the logic with regard to protocol incompatibilities. You could be in a position where the uC firmware needs to be updated so that it “knows” about the new protocol restrictions, which are needed to update the uC and the things attached in the right order in a subsequent update. If we always update the uC to the latest, the probably-factory-default running version doesn’t know about the new restrictions.

    The other issue with this is that the peripheral is unaware of the other devices in the system, so for instance couldn’t only install a new firmware version for only new builds of Windows for example. Something that we support in fwupd is being able to restrict the peripheral device firmware to a specific SMBIOS CHID or a system firmware vendor, which lets vendors solve the “same hardware in different chassis, with custom firmware” problem. I don’t see how that could be possible using CFU unless I misunderstand the new .inf features. All the dependency resolution should be in the metadata layer (e.g. in the .inf file) rather than being pushed down to the hardware running the old firmware.

  • Emmanuele Bassi: Another layer

    Five years (and change) ago I was looking at the data types and API that were needed to write a 3D-capable scene graph API; I was also learning about SIMD instructions and compiler builtins on IA and ARM, as well as a bunch of math I didn’t really study in my brush offs with formal higher education. The result was a small library called Graphene.

    Over the years I added more API, moved the build system from Autotools over to Meson, and wrote a whole separate library for its test suite.

    In the meantime, GStreamer started using Graphene in its GL element; GTK 3.9x is very much using Graphene internally and exposing it as public API; Mutter developers are working on reimplementing the various math types in their copies of Cogl and Clutter using Graphene; and Alex wrote an entire 3D engine using it.

12 extensions for your GNOME desktop

Filed under
GNOME

The GNOME desktop is the default graphical user interface for most of the popular Linux distributions and some of the BSD and Solaris operating systems. Currently at version 3, GNOME provides a sleek user experience, and extensions are available for additional functionality.

We've covered GNOME extensions at Opensource.com before, but to celebrate GNOME's 22nd anniversary, I decided to revisit the topic. Some of these extensions may already be installed, depending on your Linux distribution; if not, check your package manager.

Read more

Also: Happy anniversary GNOME: What's your favorite version?

How to record screencasts in GNOME 3

GNOME: GNOME Shell & Mutter, Gnome MPV (Celluloid), Savestates Manager

Filed under
GNOME
  • GNOME Shell & Mutter Reach The 3.34 Beta Milestone With Last-Minute Changes

    Earlier this week was the GNOME 3.34 beta release that also marked the UI/feature/API/ABI freezes for this six month update to the GNOME desktop The GNOME Shell and Mutter are late to the party but on Friday evening saw their 3.33.90 (3.34 beta) releases.

    GNOME Shell saw support added for DnD app picker folder management, clocks/weather integration support for sandboxed applications, support for start-up via systemd user instances, replacing Tweener with Clutter animations, consistent animation of new window actions, and a variety of bug fixes.

  • Gnome MPV 0.17 Released! It’s Renamed to ‘Celluloid’

    By releasing version 0.17, the GTK+ frontend for mpv Gnome MPV is officially renamed to Celluloid.

  • Towards a happy ending

    A very important bug/regression that I’m glad we were able to fix is the NintendoDS crash that was caused by introducing the Savestates Manager. We couldn’t have included this feature in a release as long as this bug was present since it was a major regression as the user wasn’t even able to start a NintendoDS game at all.

    The bug was caused by the fact that we used to re-instantiate the emulator core everytime we would start the game or load a new savestate. This didn’t cause any problems with other cores but it seems that the NintendoDS core didn’t like this.

libfprint 1.0, Libinput 1.14 and OpenCL 2.2-11

Filed under
Graphics/Benchmarks
Linux
GNOME
  • Bastien Nocera: libfprint 1.0 (and fprintd 0.9.0)

    After more than a year of work libfprint 1.0 has just been released!

    It contains a lot of bug fixes for a number of different drivers, which would make it better for any stable or unstable release of your OS.

    There was a small ABI break between versions 0.8.1 and 0.8.2, which means that any dependency (really just fprintd) will need to be recompiled. And it's good seeing as we also have a new fprintd release which also fixes a number of bugs.

  • libinput 1.14.0
    libinput 1.14.0 is now available.
    
    A flurry of patches over the last RC but most of these were CI related. Two
    new significant bugfixes: the calibration matrix is now returned correctly
    even when it is the identity matrix. And the tablet pressure range is scaled
    correctly into the available physical range. Previously, the bottom 5% where
    effectively missing and pressure offset on worn-out pens handling took some
    of the scale away from the top.
    
    Below is the text from the 1.14.rc1 announcement which lists the other big
    features added since the 1.13 release.
    
    We have new and improved thumb detection for touchpads, thanks to Matt
    Mayfield. On Clickpad devices this should make interactions where a thumb is
    resting on the touchpad or dropped during an interaction more reliable. A
    summary of the changes can be found here:
    https://who-t.blogspot.com/2019/07/libinputs-new-thumb-detection-code.html
    
    The Dell Canvas Totem is now supported by libinput. It is exposed as a new
    tool type through the tablet interface along with two new axes. Note that
    this is only low-level support, the actual integration of the totem needs
    Wayland protocol changes and significant changes in all applications that
    want to make use of it. A summary of the changes can be found here.
    https://who-t.blogspot.com/2019/06/libinput-and-dell-canvas-totem.html
    
    Touch-capable tablets now tie both devices together for rotation. If you set
    the tablet to left-handed, the touchpad will be rotated along with the
    tablet. Note that this does not affect the left-handed-ness of the touchpad,
    merely the rotation. 
    
    Tablet proximity out handling for tablets that are unreliably sending
    proximity out events is now always timeout-based. It is no longer necessary
    to add per-device quirks to enable this feature and it is completely
    transparent on devices that work correctly anyway. The blog post below has a
    summary:
    https://who-t.blogspot.com/2019/06/libinput-and-tablet-proximity-handling.html
    
    Tablets that send duplicate tools (BTN_TOOL_PEN and BTN_TOOL_ERASER) now
    ignore the latter. This is an intermediate fix only but at least makes those
    tablets more usable than they are now. Issue #259 is the tracker for this
    particular behaviour if you are affected by it.
    
    The handling of kernel fuzz has been slightly improved. Where our udev rule
    fails to reset the fuzz on the kernel device, we disable the hysteresis and
    rely on the kernel now to handle it. Previously our hysteresis would take
    effect on top of the kernel's, causing nonresponsive behaviour.
    
    Note to distribitors: the python-evdev dependency has been dropped, the
    tools that used it are now using python-libevdev instead.
    
    As usual, the git shortlog is below.
    
    Benjamin Tissoires (3):
          gitlab-ci: allow to run on unprivileged containers
          gitlab-ci: force using docker format for the generated images
          tests: increase the timeout for the subprocess to receive the quit signal
    
    Brian Ashworth (1):
          evdev: always store user calibration matrix
    
    Peter Hutterer (14):
          tools: record: fix segfault on exit
          tools: record: fix two memory leaks
          meson.build: drop explicit install:true from configure_file
          gitlab CI: replace the user:password with a netrc file
          gitlab CI: fetch the WAYLAND_WEB_TOKEN from a file
          tablet: point the pressure offset log messages to the right URL
          tablet: add a comment explaining why we adjust the pressure offset downwards
          Add the ck_double_eq_tol() macros to the backwards compat headers
          test: fix the pressure offset tests
          tablet: make the pressure-offset inclusive of the axis minimum
          tablet: reduce the pressure range by the offset
          test: don't test at the 100 y range
          tablet: scale the available pressure range into the pressure thresholds
          libinput 1.14.0
    
    git tag: 1.14.0
  • Libinput 1.14 Released With Dell Canvas Totem Support, Touchpad Improvements

    Version 1.14 of the libinput library for unified input handling on Linux X.Org and Wayland systems is now available.

    Libinput 1.14 is notable for introducing support for the Dell Canvas Totem input device as a unique input device and we could be seeing more of these types of devices in the future.

  • Khronos Releases OpenCL 2.2-11 While Still Waiting For OpenCL-Next

    The Khronos Group has released the OpenCL 2.2-11 specification to address various issues with the existing OpenCL specification while the next major release as "OpenCL-Next" is likely still a number of months away.

    OpenCL 2.2-11 was released overnight with various bug fixes, clarifications, better formatting of the documentation, and integration with the OpenCL reference pages. That updated specification is available from the Khronos.org Registry.

Age rating data for Flathub apps

Filed under
GNOME

OARS (Open Age Ratings Service) defines a scheme to include content rating information in apps’ AppData/AppStream file. GNOME Software and similar tools use this metadata to show age ratings for applications. In Endless OS, we also support restricting which applications a given user can install based on this data – see this page, and the reports it links to, for a bit more information about this feature and its future.

Read more

Matthias Clasen: Pango 1.44 wrap-up

Filed under
GNOME

In my last post discussing changes in Pango 1.44, I’ve asked for feedback. We’ve received some, thanks to everybody who reported issues!

We tried to address some of the fallout in several follow-up releases. I’ll do a 1.44.4 release with the last round of fixes before too long.

Here is a summary.

Read more

Running GNOME in a Container

Filed under
GNOME
HowTos

Virtualization has always been a rich man's game, and more frugal enthusiasts—unable to afford fancy server-class components—often struggle to keep up. Linux provides free high-quality hypervisors, but when you start to throw real workloads at the host, its resources become saturated quickly. No amount of spare RAM shoved into an old Dell desktop is going to remedy this situation. If a properly decked-out host is out of your reach, you might want to consider containers instead.

Instead of virtualizing an entire computer, containers allow parts of the Linux kernel to be portioned into several pieces. This occurs without the overhead of emulating hardware or running several identical kernels. A full GUI environment, such as GNOME Shell can be launched inside a container, with a little gumption.

You can accomplish this through namespaces, a feature built in to the Linux kernel. An in-depth look at this feature is beyond the scope of this article, but a brief example sheds light on how these features can create containers. Each kind of namespace segments a different part of the kernel. The PID namespace, for example, prevents processes inside the namespace from seeing other processes running in the kernel. As a result, those processes believe that they are the only ones running on the computer. Each namespace does the same thing for other areas of the kernel as well. The mount namespace isolates the filesystem of the processes inside of it. The network namespace provides a unique network stack to processes running inside of them. The IPC, user, UTS and cgroup namespaces do the same for those areas of the kernel as well. When the seven namespaces are combined, the result is a container: an environment isolated enough to believe it is a freestanding Linux system.

Container frameworks will abstract the minutia of configuring namespaces away from the user, but each framework has a different emphasis. Docker is the most popular and is designed to run multiple copies of identical containers at scale. LXC/LXD is meant to create containers easily that mimic particular Linux distributions. In fact, earlier versions of LXC included a collection of scripts that created the filesystems of popular distributions. A third option is libvirt's lxc driver. Contrary to how it may sound, libvirt-lxc does not use LXC/LXD at all. Instead, the libvirt-lxc driver manipulates kernel namespaces directly. libvirt-lxc integrates into other tools within the libvirt suite as well, so the configuration of libvirt-lxc containers resembles those of virtual machines running in other libvirt drivers instead of a native LXC/LXD container. It is easy to learn as a result, even if the branding is confusing.

Read more

Cinnamon Desktop (Gnome3 fork) vs MATE Desktop (Gnome2) a review

Filed under
GNOME

Cinnamon is the principal desktop environment of the Linux Mint distribution and is available as an optional desktop for other Linux distributions and other Unix-like operating systems as well.

The development of Cinnamon began as a reaction to the April 2011 release of GNOME 3 in which the conventional desktop metaphor of GNOME 2 was abandoned in favor of GNOME Shell.

Following several attempts to extend GNOME 3 such that it would suit the Linux Mint design goals, the Mint developers forked several GNOME 3 components to build an independent desktop environment.

Separation from GNOME was completed in Cinnamon 2.0, which was released in October 2013.

Applets and desklets are no longer compatible with GNOME 3.

Read more

GNOME 3.33.90 released

Filed under
GNOME

>Hi developers and testers,

GNOME 3.33.90 is now available, slightly ahead of schedule for a change!

This is the first beta release for GNOME 3.34. To ensure the quality of the final release, we have entered feature freeze, UI freeze, and API freeze, so now is a good time for distributors planning to ship GNOME 3.34 to start testing the packages.

If you want to compile GNOME 3.33.90, you can use the official BuildStream project snapshot. Thanks to BuildStream's build sandbox, it should build reliably for you regardless of your host system:

https://download.gnome.org/teams/releng/3.33.90/gnome-3.33.90.tar.xz

The list of updated modules and changes is available here:

https://download.gnome.org/core/3.33/3.33.90/NEWS

The source packages are available here:

https://download.gnome.org/core/3.33/3.33.90/sources/

WARNING!
--------
This release is a snapshot of development code. Although it is buildable and usable, it is primarily intended for testing and hacking purposes. GNOME uses odd minor version numbers to indicate development status.

For more information about 3.33, the full schedule, the official module lists and the proposed module lists, please see our 3.33 wiki page:

https://www.gnome.org/start/unstable

Michael

Read more

Also: GNOME 3.34 Beta Released - Now Under UI/Feature/API/ABI Freezes

App Grid in GNOME Shell

Filed under
GNOME

During the London UX Hackfest, in 2017, GNOME designers and developers had many interesting ideas about different ways to organize GNOME Shell’s UI elements. Letting designers create freely, without having to consider toolkit limitations or time constraints, can produce wonderful results!

It is interesting to notice that many of these ideas floated around the concept of an user-customizable application grid.

In fact, such kind of application grid exists in Endless OS (which by itself is loosely inspired by how smartphones do that) and our user research has shown that it improves discoverability. New users that are presented to Endless OS can easily and quickly navigate through the OS.

Read more

Syndicate content

More in Tux Machines

IBM: OpenPOWER Foundation, Savings and the OpenStack Platform

  • OpenPOWER Foundation | The Next Step in the OpenPOWER Foundation Journey

    Today marks one of the most important days in the life of the OpenPOWER Foundation. With IBM announcing new contributions to the open source community including the POWER Instruction Set Architecture (ISA) and key hardware reference designs at OpenPOWER Summit North America 2019, the future has never looked brighter for the POWER architecture. OpenPOWER Foundation Aligns with Linux Foundation The OpenPOWER Foundation will now join projects and organizations like OpenBMC, CHIPS Alliance, OpenHPC and so many others within the Linux Foundation. The Linux Foundation is the premier open source group, and we’re excited to be working more closely with them. Since our founding in 2013, IEEE-ISTO has been our home, and we owe so much to its team. It’s as a result of IEEE-ISTO’s support and guidance that we’ve been able to expand to more than 350 members and that we’re ready to take the next step in our evolution. On behalf of our membership, our board of directors and myself, we place on record our thanks to the IEEE-ISTO team. By moving the POWER ISA under an open model – guided by the OpenPOWER Foundation within the Linux Foundation – and making it available to the growing open technical commons, we’ll enable innovation in the open hardware and software space to grow at an accelerated pace. The possibilities for what organizations and individuals will be able to develop on POWER through its mature ISA and software ecosystem will be nearly limitless.

  • How Red Hat delivers $7B in customer savings

    This spring, Red Hat commissioned IDC to conduct a new study to analyze the contributions of Red Hat Enterprise Linux to the global business economy. While many of the findings were impressive, including immense opportunities for partners, we were especially excited to learn more about how our customers benefit from Red Hat Enterprise Linux. According to the study, the world’s leading enterprise Linux platform "touches" more than $10 trillion of business revenues worldwide each year and provides economic benefits of more than $1 trillion each year to customers. Nearly $7 billion of that number comes in the form of IT savings. Even more exciting? As hybrid cloud adoption grows, we expect customers to continue to benefit given the importance of a common, flexible and open operating system to IT deployments that span the many footprints of enterprise computing.

  • The road ahead for the Red Hat OpenStack Platform

    If you didn't have a chance to attend our Road Ahead session at Red Hat Summit 2019 (or you did, but want a refresher) you'll want to read on for a quick update. We'll cover where Red Hat OpenStack Platform is today, where we're planning to go tomorrow, and the longer-term plan for Red Hat OpenStack Platform support all the way to 2025. A strategic part of our portfolio Red Hat OpenStack Platform is a strategic part of Red Hat's vision for open hybrid cloud. It's the on-prem foundation that can help organizations bridge the gap between today's existing workloads and emerging workloads. In fact, it just earned the 2019 CODiE award for "Best Software Defined Infrastructure." One of those emerging workloads, and more on the rest in a moment, is Red Hat OpenShift.

Android Leftovers

Is Fedora Linux a Good Distro? The 15 Best Reasons to Use Fedora Linux

It goes without saying that Fedora Linux is one of the best Linux distributions and significantly distinct with its properties. There is no denying that it is an enticing version of Linux and there are enough reasons to be lured with the Fedora. It offers far ranges of features that have made it an undeniable choice for the users. There is a close and intimate collaboration between Fedora and “Redhat” what has given a new dimension of this Linux version. It is more comfortable to use, user-friendly and latest technology oriented; thus, there are many obvious reasons for loving in it. [...] The various distribution of Linux system is recognized for easy-going properties, albeit Fedora is the easiest one in this context. Having an easier interface, users are capable of dealing with it very easily since the boot phase. When the boot is done, users will be guided with simple features to run it the way they desire. Read more

Dualboot Ubuntu 19.04 and Debian 10 on a 32GB USB Stick

Ubuntu 19.04, or Disco Dingo, and Debian 10, or Buster, are two latest versions in 2019 of two most popular GNU/Linux distros I already wrote about here and here. This tutorial explains dualboot installation procedures in simple way for Ubuntu Disco Dingo and Debian Buster computer operating systems onto a portable USB Flash Drive. There are 2 advantages of this kind of portable dualbooting; first, it's safer for your data in internal HDD and second, you can bring both OSes with you everywhere you go. You will prepare the partitions first, then install Ubuntu, and then install Debian, and finally finish up the GRUB bootloader, and enjoy. Go ahead! Read more