Language Selection

English French German Italian Portuguese Spanish

GNOME

GNOME: GitLab, LVFS and GStreamer

Filed under
GNOME
  • Weekend Website Experiment

    As you may know if you read this blog via Planet GNOME, the GNOME project is busy switching to GitLab for its code hosting and bug tracking. I like GitLab! It’s a large step up from Bugzilla, which was what GNOME used for the last 20 years. Compared to GitHub, GitLab is about equal, with a few nicer things and a few less nice things.

    The one thing that I miss from Bugzilla is a dashboard showing the overall status of the bugs for your project. I thought it would not be too hard to use the GitLab API to do some simple queries and plop them on a web page. So, last weekend I gave it a try. The final result is here. Click the button to log into GitLab, and you’ll be redirected back to the page where you’ll get the results of the queries.

  • LVFS will block old versions of fwupd for some firmware

    Although fwupd 0.8.0 was released over a year ago it seems people are still downloading firmware with older fwupd versions. 98% of the downloads from the LVFS are initiated from gnome-software, and 2% of people using the fwupdmgr command line or downloading the .cab file from the LVFS using a browser manually.

  • SRT in GStreamer

    Transmitting low delay, high quality video over the Internet is hard. The trade-off is normally between video quality and transmission delay (or latency). Internet video has up to now been segregated into two segments: video streaming and video calls. On the first side, streaming video has taken over the world of the video distribution using segmented streaming technologies such as HLS and DASH, allowing services like Netflix to flourish. On the second side, you have VoIP systems, which are generally targeted a relatively low bitrate using low latency technologies such as RTP and WebRTC, and they don't result in a broadcast grade result. SRT bridges that gap by allowing the transfer of broadcast grade video at low latencies.

GNOME Desktop/GTK: GNOME 3.27.90, ArcMPD, xdg-desktop-portal, Meson

Filed under
GNOME
  • GNOME 3.27.90 released
  • ArcMPD – An Arc-Based Translucent GTK Theme for Minimalists

    We haven’t written about any themes since 2018 began so I think it is about time that happened. That’s why I’m happy to let you in on another beautiful theme you might not have known yet – ArcMPD.

    ArcMPD is a fork of the fan favorite Arc GTK theme and its inspiration is even implied in its name. Unlike Arc GTK theme, however, it features a more transparent header, sidebar; and window control buttons reminiscent of Apple’s OS X.

  • Moving a portal

    Most of the portals in use are implemented by a module called xdg-desktop-portal, with backend implementations for Gtk+ and KDE. Many of the portals in it, such as the important file chooser portal relies on a lowlevel portal called the document portal. It is a combined dbus and fuse service that controls access to files with fine-grained per-application permissions.

  • Meson's dependency manager in action building GTK

    It is easy to see how this makes it easier for newcomers to participate. There are no longer pages upon pages of instructions on how to set up a build environment and so on. All that is required is to clone one Git repo and start building. The build system will take care of all the rest.

Solus 4 Is Coming Soon with Experimental Wayland Session for GNOME, Linux 4.15

Filed under
Linux
GNOME

Solus Project's Joshua Strobl posted today more details about the upcoming Solus 4 desktop operating system and some of the new features that will be integrated. These include a revamped Software Center with the latest Linux Driver Management for better hardware driver support, Hotspot support, Budgie 10.4.1, MATE 1.20, and an experimental Wayland session for the GNOME edition.

"Wayland will not be the default for Solus Budgie or Solus GNOME, however GNOME users will be able to install a separate session package if they wish to test and experiment with Wayland support," says Joshua Strobl. "During my testing, I have not found the quality of the GNOME + Wayland to be sufficient enough to be provided as a default experience for our users."

Read more

Better Late Than Never: GNOME 3.28 Beta Desktop Arrives for Valentine's Day

Filed under
GNOME

GNOME 3.28 is the next major update to the widely-used Linux desktop environment, which is now used by default in the popular Ubuntu operating system. It promises many new features, as well as a wide range of enhancements, especially under the hood as most of the components were ported to the Meson build system.

Most importantly, the beta was delayed because the GNOME 3.28 desktop environment is now using BuildStream project's build sandbox, which ensures a reliable build process regardless of the dependencies you might have installed on your GNU/Linux operating system.

Read more

Also: GNOME 3.28 Beta Released With Many Improvements

GNOME: GNOME Mobile and Shelved Wallpapers

Filed under
GNOME
  • Python for GNOME Mobile?

    As you may already know, Python is one of the hottest programming language out there, with thousand of job offerings, so makes sense, at least for me, to push this language as official one for GNOME Mobile applications.

    elementary OS is doing a good job on engagement new developers, while use Vala as its official language. For me, Vala is a good candidate for advanced/performance constrained Mobile applications.

  • Shelved Wallpapers

    GNOME 3.28 will release with another batch of new wallpapers that only a freaction of you will ever see. Apart from those I also made a few for different purposes that didn’t end up being used, but it would be a shame to keep shelved.

    So here’s a bit of isometric goodness I quite enjoy on my desktop, you might as well.

GNOME: GNOME 3.28, FOSDEM 2018 and More

Filed under
GNOME
  • Entering the “home stretch” for GNOME 3.28

    Earlier this week I´ve released GNOME Maps 3.27.90 (even though I just read an e-mail about the deadline for the release tarballs had been postponed for one week just after uploading the tarball).

    This weekend I (like some 8000 others) participated in an exciting FOSDEM with lots of interesting talks and the week before that I gave presentation of GNOME Maps, and in particular the public transit functionality for TrafikLab (the sort of “developer community” driven by the Swedish organization Samtrafiken AB, who coordinates and aggregates data from all public transit operators, both commercial/private and regional/public ones.

  • Bastian Ilsø Hougaard: Behind the GNOME Booth, FOSDEM 2018

    Saturday was spent selling lots and lots of socks. I choose this year not to go to any talks and instead hangout with fellow GNOMEies in the booth and have a chat with bypassing users. I’m accumulating many advertising arguments for buying socks including that it allows you to have feet on your feet and that you have an excuse to say “GNOME Socks!” as much as you want, once you own a pair. Wink Kat brought the awesome hoodies and then we had a big load of leftover t-shirts from GUADEC 2017 which we more or less sold (I think there’s still some 20 left in small). In the end we sold a 160 pairs of socks which is almost half the enormous stock of socks I purchased. When the evening came by and the booth had to close, we went to the GNOME Beer Event in La Bécasse, where I had my annual taste of Lambic Blanc, which is one of the few beers I really enjoy drinking.

  • Speaking at FOSDEM 2018 in Brussels, Belgium

    I think that we in the GNOME community can use data to make more informed decisions. For example, right now we’re fading out our Bugzilla instance and we don’t really have any way to measure how successful we are. In fact, we don’t even know what it would mean to be successful. But by looking at data we might get a better feeling of what we are interested in and what metric we need to refine to express better what we want to know. Then we can evaluate measures by looking at the development of the metrics over time. Spontaneously, I can think of these relatively simple questions: How much review do our patches get? How many stale wiki links do we have? How soon are security issues being dealt with? Do people contribute to the wiki, documentation, or translations before creating code? Where do people contribute when coding stalls?

  • Gnome without chrome-gnome-shell

    New laptop, has a touchscreen, can be folded into a tablet, I heard gnome-shell would be a good choice of desktop environment, and I managed to tweak it enough that I can reuse existing habits.

    I have a big problem, however, with how it encourages one to download random extensions off the internet and run them as part of the whole desktop environment. I have an even bigger problem with gnome-core having a hard dependency on chrome-gnome-shell, a plugin which cannot be disabled without root editing files in /etc, which exposes parts of my destktop environment to websites.

KDE/GNOME: Qt, WikiToLearn, GNOME Shell and GTK

Filed under
KDE
GNOME
  • Sharing Files on Android or iOS from or with your Qt App – Part 3
  • WikiToLearn migration, why?

    Well, currently WikiToLearn runs on MediaWiki, which is a good model for dealing with an encyclopedia but, when you are trying to build a more structured content, it doesn’t fit.

    For the release 1.0 we have developed CourseEditor, which tries to make the unstructured content more structured, for example offering a drag-and-drop UI to manage a course structure.

  • On-Screen Keyboard Improvements, Thunderbolt UI Land In GNOME Shell

    Last minute work ahead of the imminent UI/feature freeze for GNOME 3.28 landed on Monday for the GNOME Shell.

    Most notable to the work that landed on Monday is the Thunderbolt policy provider and indicator. These are the UI/shell elements to Red Hat's Bolt project for dealing with secure handling of Thunderbolt peripherals when connected to Linux systems. The GNOME Shell bits interface with the Bolt daemon via the org.freedesktop.bolt D-Bus service. Great to see this UI work land in time for GNOME 3.28.

  • GTK+ 4.0 Gets More House Cleaning, Dropping Old Version References Saves ~7k L.O.C

    Yesterday I wrote about GTK4 dropping the Mir display back-end in favor of the Wayland back-end. Additionally, the "big GDK lock" was also stripped out. The latest is some additional cleaning to lighten the tool-kit code-base by about seven thousand lines of code.

    The latest significant cleanup is removing old GTK 2.x/3.x version references in the code and documentation. By dropping these old version annotations, GTK+ 4.0 saw nearly eight thousand lines of code removed but just over one thousand new insertions across more than 400 files.

KDE and GNOME: WikiToLearn , Krita, GTK, and GNOME

Filed under
KDE
GNOME
  • MongoDB for WikiToLearn migration

    Today i want to talk about my experience with the WikiToLearn migration.

    The problem of every migration is getting your hands on the data in a way such that you can work on it.

    Starting from the mysql backend and trying to have everything into a versioned object storage (python eve is the one we are tring now) is not an option.

    The solution is to use a temporary database to keep the data, process the data in this temporary storage and afterwards uploading everything in the destination.

    After some tries we managed to have the pipeline that reads all the MediaWiki pages, parses the structure and uploads everything in eve, using mongodb as a temporary storage.

  • [Krita] Interview with Owly Owlet

    Hello. I’m Maria, more often I use my nickname: Owly Owlet. I have a youtube channel, where I make video tutorials (in Russian) about how to use art software, mostly Krita.

  • GTK4 Ejects The Mir Backend & Drops The Big GDK Lock

    After adding the Mir back-end for the GTK+ 3.16 cycle, GTK+ 4.0 is dropping this back-end for the Canonical-developed display server.

    The Mir back-end has been removed from the latest GTK+ code. This clears out about 6,500 lines of code from the tool-kit's codebase. The removal of the Mir back-end is coming since Mir has been focusing on Wayland protocol support to which GTK+ has more mature Wayland support than Mir. Since Mir's change of focus last year and the work the past number of months, the Wayland support on Mir has become more viable.

  • Ibus-Hangul and Compose key: the incredible journey of a simple patch

    Today I decided to tell how I reported a bug (then ended up fixing it) on a non-GIMP related project. Well I do regularly this kind of stuff, and this could have just been one more of these silent commits to a random project as I did many times in my life. But since I decided recently to post more articles, well… I may as well tell a story as one-time contributor (as opposed to “regular contributor”) for once!

    Also I think the whole process of reporting a bug on projects you don’t know at all — worse! A whole stack of software you don’t know much! — is quite interesting for people wondering how they should report bugs happening to them.

  • On GNOME 3.27.90, time management, and a goodbye

    It’s been a long time I don’t write here. These past months were excruciatingly busy and intense, and lots of things happened but I didn’t manage to keep up with the blog posts. I’ll try to condense everything that happened and is still happening and will happen here.

GTK: GTK+ Hackfest and WebKitGTK+

Filed under
GNU
GNOME
  • GTK+ Hackfest 2018

    As some of you may know, we had a GTK+ Hackfest on February 1st and 2nd in Brussels, Belgium. Matthias has already blogged and blogged again about the two days and detailed notes about all the things we discussed can be found here and here. He also has some nice pictures.

    From everything we discussed I'm mostly looking forward to migrating to GitLab so I can file a few GTK+4 bugs and mark quite a few of them as blockers for a 4.0 release. I hope this will happen as soon as possible since there are quite a few usability regressions in current gtk+ master compared to gtk3 and those need time to get ironed out.

  • WebKitGTK+ 2.19.90 released!
  • WebKitGTK+ 2.19.90 Adds Graphics ARIA Rolls, Horizontal Scroll Shortcut

    Released in time for this week's GNOME 3.28 beta milestone is the WebKitGTK+ 2.19.90 release as the GNOME platform port of the WebKit layout engine.

    WebKitGTK+ 2.19.90 has several notable changes ahead of its upcoming WebKitGTK+ 2.20 stable release. WebKitGTK+ 2.19.90 now has WebSockets communication respecting system proxy settings, the context menu is now shown via a long-press gesture, and there is support for Shift + mouse scroll for scrolling horizontally. There is also a zoom gesture fix.

GNOME/GTK: Librsvg, BuildStream, GTK, GStreamer

Filed under
GNU
GNOME
  • rsvg-bench - a benchmark for librsvg

    Librsvg 2.42.0 came out with a rather major performance regression compared to 2.40.20: SVGs with many transform attributes would slow it down. It was fixed in 2.42.1. We changed from using a parser that would recompile regexes each time it was called, to one that does simple string-based matching and parsing.

    When I rewrote librsvg's parser for the transform attribute from C to Rust, I was just learning about writing parsers in Rust. I chose lalrpop, an excellent, Yacc-like parser generator for Rust. It generates big, fast parsers, like what you would need for a compiler — but it compiles the tokenizer's regexes each time you call the parser. This is not a problem for a compiler, where you basically call the parser only once, but in librsvg, we may call it thousands of times for an SVG file with thousands of objects with transform attributes.

    So, for 2.42.1 I rewrote that parser using rust-cssparser. This is what Servo uses to parse CSS data; it's a simple tokenizer with an API that knows about CSS's particular constructs. This is exactly the kind of data that librsvg cares about. Today all of librsvg's internal parsers work using rust-cssparser, or they are so simple that they can be done with Rust's normal functions to split strings and such.

  • BuildStream Hackfest and FOSDEM

    I also wanted to sum up a last minute BuildStream hackfest which occurred in Manchester just a week ago. Bloomberg sent some of their Developer Experience engineering team members over to the Codethink office in Manchester where the whole BuildStream team was present, and we split up into groups to plan upcoming coding sprints, land some outstanding work and fix some bugs.

  • builders

    An idiom that has shown up in GTK4 development is the idea of immutable objects and builders. The idea behind an immutable object is that you can be sure that it doesn’t change under you, so you don’t need to track changes, you can expose it in your API without having to fear users of the API are gonna change that object under you, you can use it as a key when caching and last but not least you can pass it into multiple threads without requiring synchronization.
    Examples of immutable objects in GTK4 are GdkCursor, GdkTexture, GdkContentFormats or GskRenderNode.

  • GTK+ hackfest, day 2

    The second day of the GTK+ hackfest in Brussels started with an hour of patch review. We then went through scattered items from the agenda and collected answers to some questions.

  • GTK+ 4.0 Targeted For Its Initial Release This Fall, GTK+ 5.0 Development To Follow

    A few days back I wrote about how GTK+ 4.0 is being talked about for release this year and now a bit more specific timeline is in place.

    The past few days prior to FOSDEM in Brussels was a GTK+ hackfest. Among the items discussed when not banging on code was a GTK+ 4.0 road-map and coming out of this event in Belgium is a more solid understanding now that the initial GTK+ 4.0 release will be targeted for the fall of this year. There isn't any firm release plan at this time but at GUADEC (taking place in Spain this summer) they will revisit their plans to verify they can still ship this fall.

  • GStreamer has grown a WebRTC implementation

    Late last year, we at Centricular announced a new implementation of WebRTC in GStreamer. Today we're happy to announce that after community review, that work has been merged into GStreamer itself! The plugin is called webrtcbin, and the library is, naturally, called gstwebrtc.

    The implementation has all the basic features, is transparently compatible with other WebRTC stacks (particularly in browsers), and has been well-tested with both Firefox and Chrome.

  • GStreamer Lands A WebRTC Plugin

    The GStreamer multimedia framework now has mainline support for WebRTC.

    WebRTC is the set of protocols/APIs for real-time audio/video communication over peer-to-peer connections. WebRTC is supported by all major web browsers and more while now there is support within GStreamer too.

Syndicate content