Language Selection

English French German Italian Portuguese Spanish

Development

Programming: GCC, The Free Software Directory, Qt 3D and Git

Filed under
Development
  • GCC Patches Posted For Port To Chinese "C-SKY" CPU Architecture

    C-SKY is the 32-bit embedded CPU architecture developed in Hangzhou, China for the CK610/CK807/CK810/CK860 cores, among others.

    For months the Linux C-SKY Linux kernel port has been in the works though has yet to be mainlined, at least as of the current Linux 4.18 cycle. Happening concurrently has been the C-SKY port for the GNU Compiler Collection (GCC).

  • The Free Software Directory needs you! IRC meetups every Friday

    The Free Software Directory is an essential catalog of free software online, composed and maintained by countless volunteers dedicated to the promotion of software that respects your personal liberty. Tens of thousands of people visit the Directory every month to discover free software and explore the information about version control, documentation, and licensing. Adding and maintaining entries to the Directory is crucial work to give people access to free software which has only free dependencies and runs on a free OS. All of this information is also exported in machine-readable formats, making it a valuable source of data for the study of trends in free software. The Directory is powered by MediaWiki, the same software used by Wikipedia.

  • Python – Tron Demo

    For SIGGRAPH, KDAB has been working on a new Qt 3D based demo. We decided that instead of using C++, it would be interesting to try out PySide2 and harness Python to drive the application.

    The idea behind this demo is to do with data acquisition of a car’s surrounding environment. Once the data is acquired it can be processed and used to display a 3D scene.

    The application is structured in two main parts. On the one hand, we use QtQuick and the Qt 3D QML API to declare the UI and instantiate the 3D scene. On the other hand we use Python for the backend logic, data processing and models and definition of the custom Qt 3D meshes elements we’ll need to use in the UI.

  • Building a Bare-Bones Git Environment

    How to migrate repositories from GitHub, configure the software and get started with hosting Git repositories on your own Linux server.

    With the recent news of Microsoft's acquisition of GitHub, many people have chosen to research other code-hosting options. Self-hosted solutions like GitLabs offer a polished UI, similar in functionality to GitHub but one that requires reasonably well-powered hardware and provides many features that casual Git users won't necessarily find useful.

    For those who want a simpler solution, it's possible to host Git repositories locally on a Linux server using a few basic pieces of software that require minimal system resources and provide basic Git functionality including web accessibility and HTTP/SSH cloning.

    In this article, I show how to migrate repositories from GitHub, configure the necessary software and perform some basic operations.

An Early Look At The GCC 9.0 Performance On AMD EPYC

Filed under
Development
GNU
Graphics/Benchmarks

While GCC 9 has just been under development for a relatively short period of time, here are our initial benchmarks of GCC 9.0 SVN on and AMD EPYC server compared to the GCC 8.2 stable release candidate when tested at various optimization levels as well as PGO (Profile Guided Optimizations).

Read more

Programming: Python, Microsoft Lock-in/Trap and Vim

Filed under
Development
  • Introducing Python 3.7's Dataclasses

    Newcomers to Python often are surprised by how little code is required to accomplish quite a bit. Between powerful built-in data structures that can do much of what you need, comprehensions to take care of many tasks involving iterables, and the lack of getter and setter methods in class definitions, it's no wonder that Python programs tend to be shorter than those in static, compiled languages.

  • Python has brought computer programming to a vast new audience

    Nearly 30 years after his Christmas invention, Mr Van Rossum resembles a technological version of the Monty Python character who accidentally became the Messiah in the film “Life of Brian”. “I certainly didn’t set out to create a language that was intended for mass consumption,” he explains. But in the past 12 months Google users in America have searched for Python more often than for Kim Kardashian, a reality-TV star. The rate of queries has trebled since 2010, while inquiries after other programming languages have been flat or declining (see chart).

  • Visual Studio or Vim: Is an IDE or text editor right for you? [Ed: Comparing a malicious proprietary IDE from a company that commits many crimes to a text editor?]

    An age-old debate among programmers is whether to use a plain text editor, such as Emacs, or a more fully-featured integrated development environment (IDE), such as Microsoft's Visual Studio.

    [...]

    Stallman highlights how text editors can be plugged into other developer tools, addressing the criticism that such editors lack much of the functionality of IDEs.

    "Emacs has an interface to GDB [GNU Debugger] (and some other debuggers) which has more or less the effect of an IDE. GDB displays its interaction through Emacs, and it displays the source code of the debugged program via Emacs as well."

    Stallman is not the only well-known developer to favor the simplicity of a text editor.

    Ken Thompson, who co-created the Go programming language is on record as saying he used the Sam text editor, which he also co-created, and Linus Torvalds, developer of Linux kernel, has said he favors MicroEMACS.

Programming: Persepolis, Microsoft EEE, Apache Subversion 1.10.2, SPAKE2 In Golang, AMD AOCC 1.2.1

Filed under
Development
  • Persepolis Download Manager: Impressive Python frontend for aria2

    Persepolis Download Manager is a handy open source download manager written in Python and PyQt. It’s a graphical frontend for aria2 aiming to make downloads both easier and faster.

    This software project commenced development in 2015 with the first release in July 2016. While it was initially only a simple graphical user interface, the software has seen some pretty hefty development since then with a whole raft of additional functionality added, improvements to the user interface, and cross-platform support.

  • Microsoft Visual Studio Code replumbed for better Python taming [Ed: Embrace and extend. Microsoft is trying to push developers of FOSS over to their proprietary IDE that puts spying inside compiled code.]
  • What’s new in Apache Subversion 1.10.2?

    I couldn’t believe if you are unaware of the Apache Subversion. It is an Enterprise-class centralized version control founded in 2000 by CollabNet Inc. One of the most successful opensource project in past many years. Mostly all the opensource projects and enterprise source code are on subversion. It has the rich community of developers and users who are continuously improving subversion.

  • SPAKE2 In Golang: Journey to Cryptoland begins

    Before I can go to detail I should tell why/how I came to implementing SPAKE2 in Golang. Story starts a couple of month back when I started contributing to *magic-wormhole.rs*, a Rust port of original Python project of magic-wormhole. You can read this LWN article to understand more about what magic-wormhole is.

    During contribution my friend Ramakrishnan Muthukrishnan said to me that I should try to port the magic-wormhole to Golang. I was not a expert Go programmer but had understanding of language basics and thought why not use it to improve my language understanding. And this is where it all started.

  • AMD AOCC 1.2.1 Compiler Flings Flang Fixes

    AMD released a minor update to their AMD Optimizing C/C++ Compiler.

    AOCC is the company's downstream of LLVM/Clang with optimizations for their Zen CPU microarchitecture with compiler optimizations/improvements before they work their way into upstream LLVM. AOCC is the replacement for AMD's Open64 compiler used years ago with earlier micro-architectures.

What Build System Should Qt 6 Use?

Filed under
Development
KDE

While developers have begun discussing plans for Qt 6.0 with plans to ship this upgraded tool-kit in 2020, one of the unanswered questions is over what build system should Qt 6 be using.

Up to now there's been a lot of pointing at Qbs as the new build system for Qt6. Qbs dates back to the Nokia days but has been seeing a number of improvements in recent times under the assumption it could replace Qmake as the default build system of Qt6. Qbs is designed to be easier to use than Qmake, which goes back to the original Trolltech days, while having the potential to be more powerful and offer much more flexibility.

Without voicing a preference as to the Qt 6 build system, Intel open-source developer Thiago Macieira and a longtime upstream Qt developer, has shared what he feels should be some requirements of whatever build system is selected.

Read more

Also: I'm going to Akademy

A Fresh Look At The PGO Performance With GCC 8

Filed under
Development
GNU

It's been a while since we last ran some GCC PGO benchmarks, the Profile Guided Optimizations or feedback-directed optimization technique that makes use of profiling data at run-time to improve performance of re-compiled binaries. Here are some fresh benchmarks of GCC PGO impact on a Xeon Scalable server while using the newly-released GCC 8.2 release candidate.

With it being a while since our last roundabout with GCC PGO benchmarking and also a reader recently inquiring about PTS PGO testing, I ran some new tests. For those not familiar with PGO, it basically involves first compiling the code with the relevant PGO/profiling flags, running the workload under test to generate the profiling data, and then re-compiling the software while feeding that profiling data into the compiler so it can make better optimization choices. This profile-guided feedback can be quite beneficial to the compiler for making wiser code generation choices based upon that run-time data. Firefox, Chrome, and other popular software packages have been relying upon PGO-optimized release binaries for a while to offer greater performance.

Read more

Also: A 3.3x Performance Improvement For FLAC Audio Encoding On POWER 64-bit

Qt Creator 4.7.0

Filed under
Development
KDE
  • Qt Creator 4.7.0 released

    We are happy to announce the release of Qt Creator 4.7.0!

  • Qt Creator 4.7 Released With Clang Code Model Turned On By Default

    The Qt Company has officially released Qt Creator 4.7 as the newest feature release to this open-source, cross-platform Qt/C++ focused integrated development environment.

    Today's Qt Creator 4.7 IDE release is quite significant in that it finally turns on the Clang code model by default. The Clang code model provides significantly better C++ support over what was offered by their in-house code model and will stay better up-to-date with newer C/C++ standards, etc. The Clang code model in Qt Creator 4.7 is based on LLVM/Clang 6.0.

A Proposal To Allow Python Scripting Within The GCC Compiler, Replacing AWK

Filed under
Development
GNU

A SUSE developer is seeking feedback and interest on the possibility of allowing a scripting language -- most likely Python -- to be used within the GCC compiler code-base. This would primarily be used for replacing existing AWK scripts.

GCC developer Martin Liška at SUSE is seeking comments on the possibility of adding Python as an accepted language within the GCC code-base. This isn't anything along the likes of replacing existing GCC C compiler code into a scripting language or anything to that effect, but is targeting at replacing current AWK scripts that are hard to maintain.

Read more

Ballerina reinvents cloud-native programming

Filed under
Development

Ballerina has been inspired by Java, Go, C, C++, Rust, Haskell, Kotlin, Dart, TypeScript, JavaScript, Swift, and other languages. It is an open source project, distributed under the Apache 2.0 license, and you can find its source code in the project's GitHub repository.

Read more

Belated Thoughts on van Rossum’s Departure

Filed under
Development
  • Is BDFL a death sentence?

    A few days ago, Guido van Rossum, creator of the Python programming language and Benevolent Dictator For Life (BDFL) of the project, announced his intention to step away.

    Below is a portion of his message, although the entire email is not terribly long and worth taking the time to read if you’re interested in the circumstances leading to van Rossum’s departure.

  • Thoughts on Guido retiring as BDFL of Python

    I've been programming in Python for almost 20 years on a myriad of open source projects, tools for personal use, and work. I helped out with several PyCon US conferences and attended several others. I met a lot of amazing people who have influenced me as a person and as a programmer.

    I started PyVideo in March 2012. At a PyCon US after that (maybe 2015?), I found myself in an elevator with Guido and somehow we got to talking about PyVideo and he asked point-blank, "Why work on that?" I tried to explain what I was trying to do with it: create an index of conference videos across video sites, improve the meta-data, transcriptions, subtitles, feeds, etc. I remember he patiently listened to me and then said something along the lines of how it was a good thing to work on. I really appreciated that moment of validation. I think about it periodically. It was one of the reasons Sheila and I worked hard to transition PyVideo to a new group after we were burned out.

Syndicate content

More in Tux Machines

Kate/KTextEditor Picks Up Many Improvements To Enhance KDE Text Editing

Even with KDE's annual Akademy conference happening this past week in Vienna, KDE development has been going strong especially on the usability front. The Kate text editor and the KTextEditor component within KDE Frameworks 5 have been the largest benefactors of recent improvements. This KDE text editing code now has support for disabling syntax highlighting entirely if preferred. When using syntax highlighting, there have been many KTextEditor enhancements to improve the experience as well as improvements to the highlighting for a variety of languages from JavaScript to YAML to AppArmor files. Read more

KStars v2.9.8 released

KStars 2.9.8 is released for Windows, MacOS, and Linux. It is a hotfix release that contains bug fixes and stability improvements over the last release. Read more Also: KDE Itinerary - How did we get here?

today's leftovers and howtos

  • Project curl governance
    Over time, we've slowly been adjusting the curl project and its documentation so that we might at some point actually qualify to the CII open source Best Practices at silver level. We qualified at the base level a while ago as one of the first projects which did that. Recently, one of those issues we fixed was documenting the governance of the curl project. How exactly the curl project is run, what the key roles are and how decisions are made. That document is now in our git repo.
  • How to install OwnCloud 10 on CentOS 7 and RHEL 7
  • How to Get Google Camera Port for Asus ZenFone Max Pro M1
  • How to check your CentOS Version
  • 5 Practical Examples of chgrp command in Linux
  • Trinity Desktop R14.0.5 Brings Modern Compiler Support and Security Fixes
    Trinity Desktop, the Linux desktop environment which is forked from KDE 3, has just released an update bringing Trinity Desktop to version R14.0.5. Because Trinity Desktop is a “traditional desktop” based on KDE 3 and focuses on function rather than a lot of special effects, its benefits are typically things like increased battery life on laptops, and just overall efficiency for the user.
  • This week in Usability & Productivity, part 32
    I’m back from Akademy, and I can’t wait to share some of the cool stuff that happened there over the past week. I’m going to post the video of my talk as soon as it’s up. But first, I know what you’re all really waiting for: this week’s Usability & Productivity update. Though we were all quite busy, somehow everyone managed to accomplish an enormous amount of work, too!
  • Reminder: Shotwell Facebook publishing no longer working
    As announced earlier, since August 1st, 2018 Shotwell cannot publish to Facebook any more. The API that Shotwell used for that was removed and it is currently not clear to me how developers that do not use Android, iOS or Facebook’s web SDKs should provide similar functionality.
  • Gentoo on Integricloud
    Integricloud gave me access to their infrastructure to track some issues on ppc64 and ppc64le. Since some of the issues are related to the compilers, I obviously installed Gentoo on it and in the process I started to fix some issues with catalyst to get a working install media, but that’s for another blogpost. Today I’m just giving a walk-through on how to get a ppc64le (and ppc64 soon) VM up and running.
  • Industrial Mini-ITX board pumps up with Coffee Lake
    Commell’s “LV-67X” Mini-ITX board runs on 8th Gen “Coffee Lake” processors, with up to 32GB DDR4, 3x SATA, triple 4K displays, USB 3.1, and PCIe x16 and mini-PCIe expansion. The LV-67X, which shares some of the layout and feature set of its Intel Apollo Lake based LV-67U board, is the first industrial Mini-ITX board we’ve seen with Intel’s 8th Gen Coffee Lake CPUs. (Going forward, we’ll likely use the caffeinated nickname rather than “8th Gen” because Intel also applies the 8th Gen tag to the transitional and similarly 14nm Kaby Lake-G chips as well as the new, 10nm Cannon Lake processors.)
  • Unofficial OpenGApps for Android Pie 9.0 Released for ARM and ARM64 Platforms

Red Hat and Fedora News