Language Selection

English French German Italian Portuguese Spanish

today's leftovers (mostly programming)

Filed under
Development
  • Turn any device with a browser into a secondary screen with Deskreen!

    Deskreen in action (src. Deskreen) Many computer users require extending their workspace with other monitors, like developers, software engineers, news reporters, and business analysts.

    [...]

    The project is a community-based product, which was released under the AGPL-3.0 License and maintained by a team of professionals.

  • You Can Now Directly Read Data Logs From Tesla Vehicles (Jalopnik) [LWN.net]

    The Jalopnik automotive site has posted an article on a (relatively) new set of open-source tools that can extract log data from Tesla cars.

  • You Can Now Directly Read Data Logs From Tesla Vehicles

    The Netherlands Forensic Institute has reverse-engineered Tesla's file format and released the tools to interpret data...

  • Package updates as a result from the switch to Python 3.10 in Slackware-current

    When Python3 was updated from 3.9 to 3.10 in Slackware-current two weeks ago, lots of 3rd-party packages (i.e. software packages that are not part of the Slackware distro itself) containing python modules were suddenly broken.

    To make things more complex, not all Python software is currently compatible with Python 3.10. Patrick Volkerding opened a poll on LinuxQuestions.org to get feedback from the community about this intrusive update after we already have a Slackware 15.0 Release Candidate since mid-august.
    After all, when you tag a Release Candidate, that usually sends a signal that the software set is frozen and only usability issues and software bugs will be addressed.

    After giving this some time to sink in and hoping that this update would be reverted because of its impact, I now think we are stuck with Python 3.10 in Slackware. Which means I had to start looking at which of my own packages are now broken.

  • Announcing Rust 1.56.0 and Rust 2021 [LWN.net]

    The Rust language project has announced the release of stable version 1.56.0 and the Rust 2021 edition.

  • Announcing Rust 1.56.0 and Rust 2021

    The Rust team is happy to announce a new version of Rust, 1.56.0. This stabilizes the 2021 edition as well. Rust is a programming language empowering everyone to build reliable and efficient software.

  • Federico Mena-Quintero: Text in librsvg starts to get better

    Up to now, text support in librsvg has been fairly limited. The text chapter in the SVG spec is pretty big and it contains features that are very much outside of my experience (right-to-left languages, vertical text). But now I think I have a plan for how to improve the text features.

    [...]

    All those fixes will appear in librsvg 2.52.3, due in a few days.

    I want to add more tests for right-to-left and bidi text; they can be affected by many properties for which there are no tests right now.

    After bidi text works reasonably well, I want to add support for positioning individual glyphs with the x/y/dx/dy properties. People from Wikimedia Commons really want this, to be able to lay out equations and such.

    Once individual glyphs can be positioned independently, maybe textPath support, which cartographers really like for curved labels.

  • Felix Häcker: #14 Well-Rounded

    Update on what happened across the GNOME project in the week from October 08 to October 15.

  • PSA: Plasma Browser Integration Currently Unavailable

    A fix is being worked on, but might take a bit, sorry about that.

More in Tux Machines

today's leftovers

  • Why Do Windows Users Think Linux Users Are Weird - Invidious

    Linux is such a radically different operating system than the proprietary operating systems like Microsoft Windows. Because of this, Linux tends to attract a different kind of user than Windows.

  • How to install Sublime Text on Elementary OS 6.0 - Invidious

    In this video, we are looking at how to install Sublime Text on Elementary OS 6.0.

  • SGX Deprecation Prevents PC Playback of 4K Blu-ray Discs

    This week Techspot reported that DRM-laden Ultra HD Blu-ray Discs won’t play anymore on computers using the latest Intel Core processors. You may have skimmed right past it, but the table on page 51 of the latest 12th Generation Intel Core Processor data sheet (184 page PDF) informs us that the Intel Software Guard Extensions (SGX) have been deprecated. These extensions are required for DRM processing on these discs, hence the problem. The SGX extensions were introduced with the sixth generation of Intel Core Skylake processors in 2015, the same year as Ultra HD Blu-ray, aka 4K Blu-ray. But there have been numerous vulnerabilities discovered in the intervening years. Not only Intel, but AMD has had similar issues as we wrote about in October.

  • PostgreSQL: pgDay Paris 2022 — Schedule published

    The next edition of the popular PostgreSQL conference pgDay Paris, a PostgreSQL.Org Recognized Community Conference, will be held on March 24, 2022 in the French capital. All of the talks will be in English. Registration is open, and the EARLYBIRD discount is going fast so make sure you grab that while you can!

  • WordPress 5.9 RC3

    The third Release Candidate (RC3) for WordPress 5.9 is here! Thank you to everyone who has contributed thus far toward testing and filing bugs to help make WordPress 5.9 a great release. WordPress 5.9 is slated to land in just one week—on January 25, 2022. You still have time to help! Since RC2 arrived last week, testers have found and fixed two bugs, 14 fixes from Gutenberg. There has been one additional Gutenberg fix today.

Proprietary Traps: AD, AV1 Patent Pools, More Outsourcing to Microsoft

  • Overcoming A Common Admin Black Hole: Linux Management [Ed: Shilling Microsoft's proprietary junk (AD) and then alleging Linux has a "black hole"]

    I’ll admit that we never “got there” from a governance standpoint with those Linux devices; a silo was predestined because we were built around Active Directory domain controllers that shunned Linux devices.

  • Firefox Gets AV1 VA-API Acceleration Sorted Out

    Thanks to Red Hat developer Martin Stránský, he has managed to get the Video Acceleration API (VA-API) working for AV1 content within the Firefox web browser. After working on it the past month, the necessary bits have come together for supporting AV1 VA-API playback within Firefox on Linux. See the Mozilla.org BugZilla for tracking the progress on the effort. The latest AV1 activity in general for Mozilla can be tracked via hg.mozilla.org.

  • Hacks.Mozilla.Org: Contributing to MDN: Meet the Contributors [Ed: Mozilla outsourced again to Microsoft and its proprietary software; Mozilla became worthless; it'll be history in a few years due to bad leadership]

    If you’ve ever built anything with web technologies, you’re probably familiar with MDN Web Docs. With about 13,000 pages documenting how to use programming languages such as HTML, CSS and JavaScript, the site has about 8,000 people using it at any given moment. MDN relies on contributors to help maintain its ever-expanding and up to date documentation. Supported by companies such as Open Web Docs, Google, w3c, Microsoft, Samsung and Igalia (to name a few), contributions also come from community members. These contributions take many different forms, from fixing issues to contributing code to helping newcomers and localizing content. We reached out to 4 long-time community contributors to talk about how and why they started contributing, why they kept going, and ask what advice they have for new contributors. [...] Since the end of 2020, the translation of MDN articles happen on the new GitHub based platform. [...] Our seasoned contributors suggest starting with reporting issues and trying to fix them, follow the issue trackers and getting familiarized with GitHub.

Hardware: EInk Phone, Arduino, and More

  • Bryan Quigley: Small EInk Phone

    To be shipped with one of the main Linux phone OSes (Manjaro with KDE Plasma, etc).

  • A DIY CAD Mouse You Can Actually Build

    When you spend a lot of time on the computer doing certain more specialised tasks (no, we’re not talking about browsing cat memes on twitter) you start to think that your basic trackpad or mouse is, let’s say, lacking a certain something. We think that something may be called ‘usability’ or maybe ease-of-use? Any which way, lots of heavy CAD users gush over their favourite mouse stand-ins, and one particularly interesting class of input devices is the Space Mouse, which is essentially patented up-to-the-hilt and available only from 3DConnexion. But what about open source alternatives you can build yourselves? Enter stage left, the Orbion created by [FaqT0tum.] This simple little build combines an analog joystick with a rotary knob, with a rear button and OLED display on the front completing the user interface.

  • KiCAD 6.0: What Made It And What Didn’t | Hackaday

    I’ve been following the development of KiCAD for a number of years now, and using it as my main electronics CAD package daily for a the last six years or thereabouts, so the release of KiCAD 6.0 is quite exciting to an electronics nerd like me. The release date had been pushed out a bit, as this is such a huge update, and has taken a little longer than anticipated. But, it was finally tagged and pushed out to distribution on Christmas day, with some much deserved fanfare in the usual places. So now is a good time to look at which features are new in KiCAD 6.0 — actually 6.0.1 is the current release at time of writing due to some bugfixes — and which features originally planned for 6.0 are now being postponed to the 7.0 roadmap and beyond.

Programming Leftovers

  • C: sigprocmask Function Usage

    You may have heard about socket programming in C. One of the socket functions is the “sigprocmask” function. This function has been usually utilized in the code to inspect or alter the signal mask of the calling function. The signal mask is a term used for a group of signals that are presently blocked and cannot be conveyed for the calling function. Such kind of signal is known as “Blocked Signals.” You can say that a process can still receive the blocked signals, but it will not be used until they are unblocked and released, i.e., raised. Until then, it will be pending. Therefore, within today’s guide, we will be discussing the use of the sigprocmask function in C programming. Let’s have a start. After the Ubuntu 20.04 successful login, you need to launch the shell of the Ubuntu 20.04 system first after the login. So, try out the “Ctrl+Alt+T” shortcut simply on the desktop screen. It will launch the terminal shell for you in some seconds. Make sure to update your system using the apt package of your system. After that, you have to execute the “touch” instruction along with the file name you want to generate, i.e., to create the C file via the shell. This newly created file can be found in the “home” folder of your system’s file explorer. You can try opening it with the “text” editor to create code in it. Another way to open it in the shell is using the “GNU Nano” editor using the “nano” keyword with a file name as demonstrated beneath.

  • C: sigaction function usage

    A sigaction() is a function that allows to call/observe or examine a specific action associated with a particular signal. It is thought to consider a signal and sigaction function on the same page. But in reality, it has not occurred. The signal() function does not block other signals when the current handler’s execution is under process. At the same time, the sigaction function can block other signals until the current handler has returned.

  • delegation of authority from the systems programming perspective – Ariadne's Space

    As I have been griping on Twitter lately, about how I dislike the design of modern UNIX operating systems, an interesting conversation about object capabilities came up with the author of musl-libc. This conversation caused me to realize that systems programmers don’t really have a understanding of object capabilities, and how they can be used to achieve environments that are aligned with the principle of least authority. In general, I think this is largely because we’ve failed to effectively disseminate the research output in this area to the software engineering community at large — for various reasons, people complete their distributed systems degrees and go to work in decentralized finance, as unfortunately, Coinbase pays better. An unfortunate reality is that the security properties guaranteed by Web3 platforms are built around object capabilities, by necessity – the output of a transaction, which then gets consumed for another transaction, is a form of object capability. And while Web3 is largely a planet-incinerating Ponzi scheme run by grifters, object capabilities are a useful concept for building practical security into real-world systems. Most literature on this topic try to describe these concepts in the framing of, say, driving a car: by default, nobody has permission to drive a given car, so it is compliant with the principle of least authority, meanwhile the car’s key can interface with the ignition, and allow the car to be driven. In this example, the car’s key is an object capability: it is an opaque object, that can be used to acquire the right to drive the car. Afterwards, they usually go on to describe the various aspects of their system without actually discussing why anybody would want this.

  • Pip Install: Install and Remove Python Packages
  • A dog-cat-horse-turtle problem

    Sometimes the text-processing problems posted on Stack Exchange have so many solutions, it's hard to decide which is best. A problem like that was posted in the "Unix & Linux" section in December 2021...