Language Selection

English French German Italian Portuguese Spanish

Development

GStreamer 1.19.2 unstable development release

Filed under
Development
Software

The GStreamer team is pleased to announce the second development release in the unstable 1.19 release series.

The unstable 1.19 release series adds new features on top of the current stable 1.18 series and is part of the API and ABI-stable 1.x release series of the GStreamer multimedia framework.

The unstable 1.19 release series is for testing and development purposes in the lead-up to the stable 1.20 series which is scheduled for release in a few weeks time. Any newly-added API can still change until that point, although it is rare for that to happen.

Full release notes will be provided in the near future, highlighting all the new features, bugfixes, performance optimizations and other important changes.

This development release is primarily for distributors and early adaptors and anyone who still needs to update their build/packaging setup for Meson.

Read more

Programming Leftovers

Filed under
Development
  • Dirk Eddelbuettel: prrd 0.0.5: Incremental Mode

    The key idea of prrd is simple, and described in some more detail on its webpage and its GitHub repo. Reverse dependency checks are an important part of package development that is easily done in a (serial) loop. But these checks are also generally embarassingly parallel as there is no or little interdependency between them (besides maybe shared build depedencies). See the (dated) screenshot (running six parallel workers, arranged in a split byobu session).

    This release brings some new features I used of late when testing and re-testing reverse dependencies for Rcpp. Enqueuing jobs can now consider the most recent prior job queue file. This allows us to find new packages that were not part of the previous runs. We added a second toggle to also add those packages who failed in the previous run. Finally, the dequeue interface allows to specify a date (rather than defaulting to the current date, useful for long-running jobs or restarts).

  • Revisiting NaNs in Python

    Back in January 2020, we looked at some oddities in Python's handling of Not a Number (NaN) values in its statistics module. The conversation went quiet after that, but it has been revived recently with an eye toward fixing the problems that were reported. As detailed in that earlier article, NaNs are rather strange beasts in the floating-point universe, so figuring out how best to deal with their presence is less straightforward than it might seem.

  • This Week in Rust 409
  • Roundup: managing issues for 20 years

    The Roundup Issue Tracker is a flexible tool for managing issues via the web or email. However, Roundup is useful for more than web-based bug tracking or help-desk ticketing; it can be used as a simple wiki or to manage tasks with the Getting Things Done (GTD) methodology. The 20th-anniversary edition of Roundup, version 2.1.0, was released in July; it is a maintenance release, but there have been a number of larger improvements in the last year or so. Here we introduce Roundup's features along with the recent developments that have helped make Roundup even more useful for tracking issues to their resolution.

Programming Leftovers

Filed under
Development
  • Jakub Kadlčík: Building RHEL packages with Tito

    Are you a Fedora packager and consider Tito to be a valuable asset in your toolbox? Do you know it can be used for maintaining RHEL packages as well? Or any downstream packaging? I didn’t. This article explains how it can be done.

  • linuxium.com.au: New release of 'isorespin.sh'

    Following news of the GRUB2 Secure Boot Bypass 2021 and as a result of Google's security changes on Google Drive together with the first daily build's from Canonical of Ubuntu 21.10 (impish) and point releases for 20.04.3 and 18.04.6 I've updated my ‘isorespin.sh‘ script and respun some ISOs suitable for Intel Atom and Intel Apollo Lake devices.

  • PHP maintains an enormous lead in server-side programming languages

    The venerable web programming language PHP is a source of frequent complaints and frustration, but according to a report W3Techs released today, it doesn't seem to be going away any time soon.

    W3Techs' web server survey looks for technologies in use by sites in Alexa's top 10 million list; today's report includes a year-on-year chart beginning with January 2010, running all the way through 2021. The survey only includes top sites not out of elitism, but as one part of its effort to avoid data-skewing returns from domain-parking services and spammers, which would otherwise dominate legitimate websites through sheer volume.

    Within that dataset, the story told is clear. Apart from PHP—which held a 72.5 percent share in 2010 and holds a 78.9 percent share as of today—only one other server-side language ever broke a 10 percent share. That one competitor is ASP.NET, which held an impressive 24.4 percent share in 2010 but was down to 9.3 percent in January and 8.3 percent this month.

    Amongst the small fry, the only truly impressive growth to be seen is in Ruby—which at 5.2 percent this month is still seeing continued uninterrupted growth in W3Techs' survey. This might come as a shock if you're mostly familiar with Ruby on Rails, which itself remains viable but seems to be on the decline in popularity.

  • PHP Holds Impressive Lead Among Server-Side Languages

    This share constitutes an enormous lead over PHP’s rivals, with only one other server-side language ever reaching a 10 percent share. As Jim Salter reports, ASP.NET held a 24 percent share in 2010 but usage has now declined to 8.3 percent.

  • 10 Best Open Source Linux Code Editors [Ed: Very bad list. The first two in the list are Microsoft and even proprietary software with surveillance or 'telemetry' that spies on coders]

    Coding is part of every developer’s life and IDE (Integrated Development Environment) makes this job easier for them. IDEs come with tons of handy features and support programming of various languages within the same environment.

    Furthermore, IDEs provide users with plug-ins for adding the extra capability to the program and auto-complete tags and classes to make programming faster. Users can also utilize the pre-provided piece of code in their programs. IDEs make coding faster and easier and hence today we’re here to discuss the 10 best Code Editors (IDEs) available for Linux.

Maui Report – 15

Filed under
Development
KDE

Maui 2 was released a month ago, and since then new features, bug fixes, and improvements have been made to the Maui set of apps and frameworks; the following blog post will cover some of the changes and highlights from the last or so months of development.

What’s new?

Among many bug fixes that will be listed below for each individual app, some of the highlights include better support for client-side decorations aka CSD. Clip, the video player, is now working again on Android; MauiKit Controls now provide improved contextual menu actions and a lighter tab bar styling. Index, the file manager, can now also preview PDF documents, adding up to support for previews of text, video, audio and fonts file types; and translucency support is now embedded into MauiKit itself.

Read more

Better Support & Performance For OpenACC Kernels Is Coming To GCC

Filed under
Development
GNU

While the GNU Compiler Collection has supported OpenACC for a few years now as this parallel programming standard popular with GPUs/accelerators, the current implementation has been found to be inadequate for many real-world HPC workloads leveraging OpenACC. Fortunately, Siemens has been working to improve GCC's OpenACC kernels support.

GCC's existing OpenACC kernels construct has been found to be "unable to cope with many language constructs found in real HPC codes which generally leads to very bad performance." Fortunately, improvements are on the way and could potentially be mainlined in time for next year's GCC 12 stable release.

Read more

Bash Programming

Filed under
Development
GNU
  • Bash While And Until Loop Explained With Examples - OSTechNix

    This is a continuation article in bash loop wherein the previous article we have explained about for loop. In this article, we will take a look at two more bash loops namely, while and until loop.

    The while loop is mostly used when you have to read the contents of the file and further process it. Reading and writing to a file are common operations when you write bash scripts. We will see how to read files using a while loop.

  • Bash Scripting - For Loop Explained With Examples - OSTechNix

    In Bash shell scripting, Loops are useful for automating repetitive tasks. When you have to repeat a task N number of times in your script, loops should be used. There are three types of loops supported in bash.

  • 2 Bash commands to change strings in multiple files at once | Enable Sysadmin

    Think about some situations when you need to change strings in text files in your Linux hosts.

    Depending on the case, you will simply change the file directly in your favorite text editor.

Today's HowTos and Programming Leftovers

Filed under
Development
HowTos
  • Attempt to install Fedora WKS 35 Beta as KVM Guest
  • How to install Natron on Linux Lite 5.4 - Invidious

    In this video, we are looking at how to install Natron on Linux Lite 5.4.

  • How to install Super Mario 127 on a Chromebook

    Today we are looking at how to install Super Mario 127 on a Chromebook. Please follow the video/audio guide as a tutorial where we explain the process step by step and use the commands below.

    If you have any questions, please contact us via a YouTube comment and we would be happy to assist you!

  • Everyone’s a (Perl) critic, and you can be too!

    The perlcritic tool is often your first defense against ​“awk­ward, hard to read, error-​prone, or uncon­ven­tion­al con­structs in your code,” per its descrip­tion. It’s part of a class of pro­grams his­tor­i­cal­ly known as lin­ters, so-​called because like a clothes dry­er machine’s lint trap, they ​“detect small errors with big effects.” (Another such lin­ter is perltidy, which I’ve ref­er­enced in the past.)

  • Structural pattern matching in Python 3.10

    In the meantime, I thought I’d get to know the feature better by writing up my thoughts and some code examples in article form. As you can gather, I’m rather biased, but I’ll try to present the positives as well as just criticism.

    The pattern matching feature has no fewer than three PEPs (Python Enhancement Proposals) to describe it: [...]

  • Emmanuele Bassi: Properties, introspection, and you

    It is a truth universally acknowledged, that a GObject class in possession of a property, must be in want of an accessor function.

    The main issue with that statement is that it’s really hard to pair the GObject property with the accessor functions that set the property’s value, and retrieve it.

    From a documentation perspective, tools might not establish any relation (gtk-doc), or they might require some additional annotation to do so (gi-docgen); but at the introspection level there’s nothing in the XML or the binary data that lets you go from a property name to a setter, or a getter, function. At least, until now.

    GObject-introspection 1.70, released alongside GLib 2.70 and GNOME 41, introduced various annotations for both properties and methods that let you go from one to the other; additionally, new API was added to libgirepository to allow bindings to dynamic languages to establish that relation at run time.

Programming Leftovers

Filed under
Development

  • The cmake-project Script

    If you ever need to create a project around a single C++ file (or just a few C++ files) in CMake, as you might for quick test cases, you might find it tedious to write a CMakeLists.txt file by hand every time. To make this easier, I’ve written a script called cmake-project that you can use to generate an initial CMakeLists.txt for you. Similar to qmake -project, it allows you to quickly create a project around a single or just a few C++ files. In addition, it automatically adds a link to Qt Widgets when the code uses QApplication.

    A few special features that come with CMake are support for many languages (like Fortran, CUDA, and Objective-C), native support from many IDEs (Qt Creator and Visual Studio XCode), many active contributors, many out-of-the-box configuration checks, use of non-recursive make for faster build times, and out-of-the-box support for Ninja for even faster build times. These features are a few of the reasons why Qt 6 switched from QMake to CMake.

    Add the cmake-project script on top of all these fantastic features and you can enjoy the only feature people miss from QMake while working in CMake. In turn, your productivity will be better than ever!

  • Linux X86 Assembly – How To Test Custom Shellcode Using a C Payload Tester

    In the last blog post in this series, we created a tool to make it easy to build our custom payloads and extract them. However, what if we want to test them before trying to use them? It seems like a good idea to make sure it works before you include it in an exploit. Testing it first would at least let you know that it works and reduce troubleshooting surface if the exploit fails. Today we are going to focus on building a payload tester stub in the C programming language. This will make it easy for us to copy and paste our C-style formatted payload from our build-and-extract tool. Once it’s pasted in the tester stub, just compile and run it and you will be able to see your payload in action. The code for payload tester stub and Makefile can be found in the /utils/ folder of the Secure Ideas Professionally Evil x86_asm GitHub repository.

  • Developer diaries: The case of the lunchtime interruption

    In this episode of our Developer Diaries series, JJ & Chris do a bit of pair programming to show how developers can use Instana for observability-driven development.

  • SPVM 0.9014 Release - add class, method, static keyword, omit SPVM:: namespace

    I release SPVM 0.9014. Latest releases have some big changes.

    add class, method, static keyword, omit SPVM:: namespace, and remove sub, self, keyword.

  • 3 ways to test your API with Python | Opensource.com

    In this tutorial, you'll learn how to unit test code that performs HTTP requests. In other words, you'll see the art of API unit testing in Python.

    Unit tests are meant to test a single unit of behavior. In testing, a well-known rule of thumb is to isolate code that reaches external dependencies.

    For instance, when testing a code that performs HTTP requests, it's recommended to replace the real call with a fake call during test time. This way, you can unit test it without performing a real HTTP request every time you run the test.

Programming Leftovers

Filed under
Development
  • The final guide to web scraping with Node.js

    Web scraping is the process of extracting data from a website in an automated way and Node.js can be used for web scraping. Even though other languages and frameworks are more popular for web scraping, Node.js can be utilized well to do the job too. In this post, we will learn how to do web scraping with Node.js for websites that don’t need and need Javascript to load. Let’s get started!

  • How to use cpan or pip packages on Nix and NixOS

    When using Nix/NixOS and requiring some development libraries available in pip (for python) or cpan (for perl) but not available as package, it can be extremely complicated to get those on your system because the usual way won't work.

  • Benchmarking compilation time with ccache/mfs on OpenBSD

    So, I decided to measure the build time of the Gemini browser Lagrange in three cases: without ccache, with ccache but first build so it doesn't have any cached objects and with ccache with objects in it. I did these three tests multiple time because I also wanted to measure the impact of using memory base filesystem or the old spinning disk drive in my computer, this made a lot of tests because I tried with ccache on mfs and package build objects (later referenced as pobj) on mfs, then one on hdd and the other on mfs and so on.

  • Cut I/O bound Rakefile task evaluation time by 12,4%

    Do you regularly run Rake on projects with thousands of FileTasks? In that case, chances are your Rake execution time is I/O bound. I’ve created two patches that can cut ⅛ off your Rakefile task evaluation/compilation time.

    Rake is the task and build automation tool for the Ruby programming language. It’s distributed as a part of the Ruby Standard Library default set of tools and modules. It’s a make-like tool that incrementally rebuilds only the parts of your project that have changed. It tracks changes by querying the file system for the last modified timestamp of every source and object file in your project. Each of these queries requires an individual system call (syscall) to the operating system kernel per file.

  • Glyphtracer 2.0

    Ages ago I wrote a simple GUI app called Glyphtracer to simplify the task of creating fonts from scanned images. It seems people are still using it. The app is written in Python 2 and Qt 4, so getting it running becomes harder and harder as time goes by.

  • One major obstacle to unifying the two types of package managers

    A major difference between what I called program managers (such as Debian's apt) and module managers (such as Python's Pip) is their handling or non-handling of multiple versions of dependencies. Program managers are built with the general assumption of a single (global) version of each dependency that will be used by everything that uses it, while module managers allow each top level entity you use them on (program, software module, etc) to have different versions of its dependencies.

  • Structural pattern matching in Python 3.10

    At a recent local Python meetup, a friend was presenting some of the new features in Python 3.8 and 3.9, and afterwards we got to talking about the pattern matching feature coming in Python 3.10. I went on a mild rant about how I thought Python had lost the plot: first assignment expressions using :=, and now this rather sprawling feature.

    My friend interpreted my rant rather generously, and soon said, “it sounds like you want to give a talk about it at our next meetup”. Okay … well, why not!

    In the meantime, I thought I’d get to know the feature better by writing up my thoughts and some code examples in article form. As you can gather, I’m rather biased, but I’ll try to present the positives as well as just criticism.

  • KConfigXT Alternative Generator

    I’m using for my own personal projects a generator for c++ preferences for quite a while, I’ll not say that it’s heavily tested as KConfigXT is, but it is also much more simple than it.

    While talking about it to a fellow developer he asked me how hard it would be to port the thing to KConfig (as the main backend I used was QSettings) - and the result is quite nice, the port toook less than a day, and now my generator generates configurations for both KConfig and QSettings.

Programming Leftovers

Filed under
Development
  • Quarkus for Spring developers: Getting started | Red Hat Developer

    Want to learn more about developing applications with Quarkus? Download our free ebook Quarkus for Spring Developers, which helps Java developers familiar with Spring make a quick and easy transition.

    The tools available in the Spring ecosystem make it easy to get started with building applications. However, the same is true for Quarkus, which has many additional features and capabilities aimed at improving the developer experience. A Spring developer can quickly get started working with a Quarkus project and immediately become more productive, as we'll see in this article. Plug-ins and tooling are available for most major IDEs, including VSCode, IntelliJ, and Eclipse.

  • Rust Lands Support For The Motorola 68000 Processors

    With the m68k community continuing to be active around supporting the vintage Motorola 68000 series with modern open-source software, Rust has now merged support for these old processors.

    With the forthcoming LLVM/Clang 13 release adding an M68k back-end, Rust that leverages LLVM is now adding support for the Motorola 68000 series processors.

  • Rakudo Weekly News: 2021.38 Questions, Ideas, Feedback

    Daniel Sockwell had a very busy week, asking all sorts of questions (1) (2), looking to improve the documentation on list assignments and soliciting feedback about that. And Daniel also published a blog post about the concept of labelling your code, in which they posit that “Comments are prose; labels are identifiers” (which resulted in quite a discussion on /r/rakulang). Thought provoking stuff!

  • C++ Vector of Pointers Examples

    An ordinary vector encountered in C++ programming, is a vector of objects of the same type. These objects can be fundamental objects or objects instantiated from a class. This article illustrates examples of vector of pointers, to same object type. To use a C++ vector, the program has to include the vector library, with a directive.

    All the vector code for this article is in the main() function, unless otherwise indicated. Vector of pointers to different types, is however, addressed at the end of the article. In order to appreciate vector-of-pointers, it is good to recall the knowledge for vector of objects.

  • What Is C++ Stringstream, and How to Use It?

    A string object instantiated from the string class is a list data structure. The list is a series of characters, and it is appreciated as such. The C++ string object has many methods. However, it lacks certain operations, which are best offered if it is seen as a stream.

  • 5 Best Linux Coding Editors [Ed: Too many Microsoft suggestions (40% of these), including proprietary software with Microsoft surveillance]

    Once you learn how to code, you can start building great applications that solve a problem or join businesses and companies looking for those with stellar coding skills. An important tool you will need is a code editor. Code editors come with various features that make it easy to code, create great applications, debug code, deploy code and so much more. Today, we are going to focus on five of the best code editors for Linux users. Keeping with the theme of Linux, the code editors below are free, open-source, or both.

  • Josef Strzibny: Ruby for ebook publishing

    A lot of times, people ask what’s Ruby good for apart from Rails. Ruby is great for various tasks from several different domains, and today, I would like to share how anybody can use Ruby in publishing ebooks.

    Since I used some Ruby tasks in publishing my first-ever ebook Deployment from Scratch, it crossed my mind to write down why I think Ruby is great for publishing ebooks.

  • Qt World Summit 2021 – registration now open!

    Join online as the community meets on November 3. Qt World Summit gathers together more than 5 000 developers, designers, managers and executives from over 90 countries around the world.

  • Teaching by filling in knowledge gaps

    I asked on twitter what people feel was easier to learn 15 years ago. One example a lot of people mentioned was the command line.

    I was initially a bit surprised by this, but when I thought about it makes sense – if you were a web developer 15 years ago, it’s more likely that you’d be asked to set up a Linux server. That means installing packages, editing config files, and all kinds of things that would get you fluent at the command line. But today a lot of that is abstracted away and not as big a part of people’s jobs. For example if your site is running on Heroku, you barely have to know that there’s a server there at all.

    I think this applies to a lot more things than the command line – networking is more abstracted away than it used to be too! In a lot of web frameworks, you just set up some routes and functions to handle those routes, and you’re done!

    Abstractions are great, but they’re also leaky, and to do great work you sometimes need to learn about what lives underneath the abstraction.

Syndicate content

More in Tux Machines

Type Title Author Replies Last Postsort icon
Story Huawei launches OS openEuler, aims to construct 'ecological base of national digital infrastructure' Roy Schestowitz 26/09/2021 - 8:14pm
Story Librem 14 Is the Most Secure Laptop You Can Buy, but It Comes at a High Price Roy Schestowitz 26/09/2021 - 7:25pm
Story Kernel: Linux IO_uring and "amd-pstate" Roy Schestowitz 26/09/2021 - 6:56pm
Story Programming Leftovers Roy Schestowitz 26/09/2021 - 6:51pm
Story Proprietary Software Leftovers Roy Schestowitz 26/09/2021 - 6:50pm
Story today's howtos Roy Schestowitz 26/09/2021 - 6:46pm
Story Games: Assets, GOG, and Steam Roy Schestowitz 26/09/2021 - 6:36pm
Story MenuLibre 2.2.3 Released Roy Schestowitz 26/09/2021 - 6:33pm
Story Firefox 92 vs. Chrome 94 Browser Benchmarks On Ubuntu Linux Roy Schestowitz 26/09/2021 - 6:28pm
Story Android Leftovers Rianne Schestowitz 26/09/2021 - 6:18pm