Language Selection

English French German Italian Portuguese Spanish

Best of open hardware in 2014

Filed under
Hardware
OSS

Open hardware is the physical foundation of the open movement. It is through understanding, designing, manufacturing, commercializing, and adopting open hardware, that we built the basis for a healthy and self-reliant community of open. And the year of 2014 had plenty of activities in the open hardware front.

Read more

More in Tux Machines

Fedora and Red Hat Leftovers

  • Peter Hutterer: Auto-updating XKB for new kernel keycodes

    This two-part approach exists so either part can be swapped without affecting the other. Swap the second part to an exclamation mark and paragraph symbol and you have the French version of this key, swap it to dash/underscore and you have the German version of the key - all without having to change the keycode. Back in the golden days of everyone-does-what-they-feel-like, keyboard manufacturers (presumably happily so) changed the key codes and we needed model-specific keycodes in XKB. The XkbModel configuration is a leftover from these trying times. The Linux kernel's evdev API has largely done away with this. It provides a standardised set of keycodes, defined in linux/input-event-codes.h, and ensures, with the help of udev [0], that all keyboards actually conform to that. An evdev XKB keycode is a simple "kernel keycode + 8" [1] and that applies to all keyboards. On top of that, the kernel uses semantic definitions for the keys as they'd be in the US layout. KEY_Q is the key that would, behold!, produce a Q. Or an A in the French layout because they just have to be different, don't they? Either way, with evdev the Xkb Model configuration largely points to nothing and only wastes a few cycles with string parsing.

  • Máirín Duffy: Fedora Design Team Sessions Live: Session #1

    As announced in the Fedora Community Blog, today we had our inaugural Fedora Design Team Live Session Thanks for everyone who joined! I lost count at how many folks we had participate, we had at least 9 and we had a very productive F35 wallpaper brainstorming session!

  • Knowledge meets machine learning for smarter decisions, Part 2

    Red Hat Decision Manager helps organizations introduce the benefits of artificial intelligence to their daily operations. It is based on Drools, a popular open source project known for its powerful rules engine. In Part 1 of this article, we built a machine learning algorithm and stored it in a Predictive Model Markup Language (PMML) file. In Part 2, we’ll combine the machine learning logic with deterministic knowledge defined using a Decision Model and Notation (DMN) model. DMN is a recent standard introduced by the Object Management Group. It provides a common notation to capture an application’s decision logic so that business users can understand it.

  • Four tactics to build Twitter followings for open source communities

    If you work in a role related to marketing, you’ve probably heard of brand personality, the human characteristics companies use to market themselves and their products. On Twitter, it’s fast food giant Wendy’s claim to fame, and it even drives impact on many of Red Hat’s own social accounts.

  • Part 1 - Rancher Kubernetes Engine (RKE) Security Best Practices for Cluster Setup | StackRox
  • Part 2 - Rancher Kubernetes Engine (RKE) Security Best Practices for Authentication, Authorization, and Cluster Access
  • Part 3 - Rancher Kubernetes Engine (RKE) Security Best Practice for Container and Runtime Security

today's howtos

  • 2 Simple Steps to Set Up SSH Public Key Authentication on CentOS

    This tutorial explains how to set up SSH public key authentication on a CentOS/RHEL desktop. There’re basically two ways of authenticating user login with OpenSSH server: password authentication and public key authentication. The latter is also known as passwordless SSH login because you don’t need to enter your password.

  • Linux 101: Renaming files and folders - TechRepublic

    I'm going to help you learn a bit more about Linux. If you're new to the operating system, there are quite a few fundamental tasks you're going to need to know how to do. One such task is renaming files and folders. You might think there's a handy rename command built into the system. There is, but it's not what you assume. Instead of renaming a file or folder, you move it from one name to another, with the mv command. This task couldn't be any easier.

  • Linux 101: Listing files and folders within a directory - TechRepublic

    For those new to Linux, you might be a bit concerned about learning the command line. After all, you probably come from a platform that uses a GUI for nearly every task and haven't spent much time with a command line interface. Fear not, that's what we're here for. This time around, I want to show you how to list files and folders within a directory. This may sound like a very rudimentary task, but you'll be surprised at how much information you can actually glean from a single command. We're going to start out with the basics. First, log in to your Linux system. If this is a GUI-less server, you'll already be at a terminal window, so you're ready to go. If not, open a terminal app and you should find yourself in your home directory.

  • qBittorrent 4.3.3 Released! How to Install in Ubuntu 20.04, 20.10

    The qBittorrent 4.3.3 was released a few days ago. Here’s how to install it in Ubuntu 20.04, Ubuntu 20.10, Ubuntu 18.04, and Linux Mint 19.x / 20. This release contains mainly bug-fixes. Because Xcode doesn’t support C++17, Mac OS 10.13 (High Sierra) is no longer supported. And Ubuntu 18.04 is highly to be dropped in the next release.

  • Linux 101: How to create a directory from the command line - TechRepublic

    Hello admins, Jack Wallen here with a Linux 101-level tip. This time around we're going to learn how to create a directory from the command line. I know, it sounds incredibly basic. It is, but it's also a skill you're going to need to know. Why? Because at some point you're going to be faced with administering a Linux server without a GUI. When that happens, you'll be glad you know how to create a directory from the CLI. But how do you do it? It's actually incredibly simple.

  • Gitlab runners with nspawn

    I need to setup gitlab runners, and I try to not involve docker in my professional infrastructure if I can avoid it.

  • How to install Notepad++ on Ubuntu 20.04 LTS

    Even though it has a small size but it has core word processor features and known for the ability to handle the syntax of all common programming languages or ​​even more. Notepad ++ doesn’t heavy on resources that’s why we can easily install it on Linux distros such as Ubuntu to access various tools, to get support in our work with syntax highlighting, multi-view, drag & drop, auto-completion, and much more. Being an open-source program, its source code is available on its official website plus it supports plug-ins to extend features that make work even easier. We can select Plugin-ins during installation.

  • How to install Code::Blocks on a Chromebook

    Today we are looking at how to install Code::Blocks 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.

  • How to Create a Web App in Linux Mint

    If you haven't heard, Linux Mint 20.1 "Ulyssa" just dropped, and it comes prepackaged with a new utility called Web App Manager. In short, it allows you open and use a website, such as Twitter, Facebook, or Discord, as if it were a standalone app. Here's how Mint's Web App Manager works and how to put it to use.

today's leftovers

  • Daniel Stenberg: More on less curl memory

    Back in September 2020 I wrote about my work to trim curl allocations done for FTP transfers. Now I’m back again on the memory use in curl topic, from a different angle. This time, I learned about the awesome tool pahole, which can (among other things) show structs and their sizes from a built library – and when embracing this fun toy, I ran some scripts on a range of historic curl releases to get a sense of how we’re doing over time – memory size and memory allocations wise. The task I set out to myself was: figure out how the sizes of key structs in curl have changed over time, and correlate that with the number and size of allocations done at run-time. To make sure that trimming down the size of a specific struct doesn’t just get allocated by another one instead, thus nullifying the gain. I want to make sure we’re not slowly degrading – and if we do, we should at least know about it! Also: we keep developing curl at a fairly good pace and we’re adding features in almost every release. Some growth is to expected and should be tolerated I think. We also keep the build process very configurable so users with particular needs and requirements can switch off features and thus also gain memory. [...] The gain in 7.62.0 was mostly the removal of the default allocation of the upload buffer, which isn’t used in this test… The current size tells me several things. We’re at a memory consumption level that is probably at its lowest point in the last decade – while at the same time having more features and being better than ever before. If we deduct the download buffer we have 30427 additional bytes allocated. Compare this to 7.50.0 which allocated 68089 bytes on top of the download buffer! If I change my curl to use the smallest download buffer size allowed by libcurl (1KB) instead of the default 100KB, it ends up peaking at: 31451 bytes. That’s 37% of the memory needed by 7.50.0. In my opinion, this is very good. It might also be worth to reiterate that this is with a full featured libcurl build. We can shrink even further if we switch off undesired features or just go tiny-curl. I hope this goes without saying, but of course all of this work has been done with the API and ABI still intact.

  • Ubuntu Blog: Compact and Bijou

    Snaps are designed to be self-contained packages of binaries, libraries and other assets. A snap might end up being quite bulky if the primary application it contains has many additional dependencies. This is a by-product of the snap needing to run on any Linux distribution where dependencies cannot always be expected to be installed. This is offset by the snap being compressed on disk, and the Snap Store delivering delta updates rather than force a full download on each update. Furthermore the concept of “shared content” or “platform” snaps allows for common bundles of libraries to be installed only once and then reused across multiple snaps. Typically in documentation we detail building snaps with the command line tool snapcraft. Snapcraft has logic to pull in and stage any required dependencies. We generally recommend using snapcraft because it helps automate things, and make the snapping process more reliable. But what if your application has minimal, or no dependencies?. Your program might be a single binary written in a modern language like go or rust. Maybe it’s a simple shell or python script, which requires no additional dependencies. Well, there’s a couple of other interesting ways to build a snap we should look at.

  • Dev Interview: Launching a career as an enterprise developer in Austin, Chapter 4

    In our last Dev Interview chapter, our trio of young developers discussed what it was like joining the corporate world along with their first impressions. As a developer, you’ll often be part of a smaller squad or you may form your own squad around more personal reasons. Given Luc, Da-In and Diana all have recently moved to Austin and started working at IBM in the summer of 2019, it’s pretty natural for the three to bond together over shared experiences. And provide support to each other during such interesting times. Let’s see what Da-In, Diana, and Luc have been up to as they discuss some of the more personal aspects of life and office friendships in corporate America.

  • CUPS-PDF | Print to PDF from any Application

    I’m sure this isn’t new to anyone, certainly not to me but after using another operating system for a bit I was really annoyed and wanted to just highlight what a wonderful thing this “printer” is for openSUSE and any other Linux distribution, for that matter. Sometimes, I think it is good to reflect on the the great things we take for granted here in Linux land.

  • Libre Arts - This is 2021: what's coming in free/libre software

    The fork is just rebranding and no new features or UX fixes (unless removing the bell pepper brush is your idea of finally making it right for everyone), and then Glimpse-NX — at least for the public eye — exists only as UI mockups. They did get Bilal Elmoussaoui (GNOME team) to create Rust bindings to GEGL for them last autumn, but that’s all as far as I can tell. So the current pace of the project is not very impressive (again, as a GIMP contributor, I’m biased) and I’m not sure how much we are going to see in 2021. That said, I think having a whole new image editor based on GEGL would be lovely. I don’t see why Glimpse-NX couldn’t be that project. A proof-of-concept application that would load an image, apply a filter, and export it back sounds feasible. It’s something one could iterate upon. So maybe that’s how they are going to play it. The fine folks over at Krita posted a 2020 report where they listed major challenges they will be facing this year: the completion of resources management rewrite that currently blocks v5.0 release, the port to Apple M1, the launching of a new development fund (akin to that of Blender), and more.

  • This is 2021: what’s coming in free/libre software (Libre Arts)

    Libre Arts (formerly Libre Graphics World) has posted a comprehensive survey of what 2021 might hold for a wide range of free content-creation software.

Programming Leftovers

  • GNU Parallel 20210122 ('Capitol Riots') released

    GNU Parallel 20210122 ('Capitol Riots') has been released. It is available for download at: http://ftpmirror.gnu.org/parallel/ Please help spreading GNU Parallel by making a testimonial video like Juan Sierra Pons: http://www.elsotanillo.net/wp-content/uploads/GnuParallel_JuanSierraPons.mp4 It does not have to be as detailed as Juan's. It is perfectly fine if you just say your name, and what field you are using GNU Parallel for.

  • Maximizing Developer Effectiveness

    Technology is constantly becoming smarter and more powerful. I often observe that as these technologies are introduced an organization’s productivity instead of improving has reduced. This is because the technology has increased complexities and cognitive overhead to the developer, reducing their effectiveness. In this article, the first of a series, I introduce a framework for maximizing developer effectiveness. Through research I have identified key developer feedback loops, including micro-feedback loops that developers do 200 times a day. These should be optimized so they are quick, simple and impactful for developers. I will examine how some organizations have used these feedback loops to improve overall effectiveness and productivity.

  • Open-source Downloads Working Again

    Open-source downloads are working again. Users can install open-source versions of Qt framework and tools via the online installer or download the offline packages. Earlier this week our service provider for two important servers related to the open-source downloads had a severe hardware failure in their disk system causing a problem with open-source downloads of Qt. The problem has now been resolved and download systems are working again. Note that there are more than usual delays in using the system due to the load caused by ongoing restoring of other affected systems of the same service provider as well as the load caused by Qt users.

  • Remi Collet: PHP version 7.4.15RC2 and 8.0.2RC1 [Ed: Fedora and Enterprise Linux (RHEL / CentOS)]

    RPM of PHP version 8.0.2RC1 are available as SCL in remi-test repository and as base packages in the remi-php80-test repository for Fedora 31-33 and Enterprise Linux. RPM of PHP version 7.4.15RC2 are available as SCL in remi-test repository and as base packages in the remi-test repository for Fedora 32-33 or remi-php74-test repository for Fedora 31 and Enterprise Linux.

  • OASIS Open Establishes European Foundation to Advance Open Collaboration Opportunities

    OASIS Open, the international open source and open standards consortium, is pleased to announce the launch of the OASIS Open Europe Foundation (https://www.oasis-open.eu). The foundation provides a strong and dedicated European focus in setting standards for open collaboration, and allows OASIS to provide long-term sustainability for European Union research projects.

  • International Consortium Bolsters European Focus on Open Source and Open Standards Development

    OASIS Open, the international open source and open standards consortium, is pleased to announce the launch of the OASIS Open Europe Foundation (https://www.oasis-open.eu). The foundation provides a strong and dedicated European focus in setting standards for open collaboration, and allows OASIS to provide long-term sustainability for European Union research projects.

    [...]

    The OASIS Open Europe Foundation’s Board of Directors will include:

  • Laetitia Cailleteau of Accenture (France)
  • Martin Chapman of Oracle (Ireland)
  • Eva Coscia of R2M Solution (Italy)
  • Gershon Janssen, Independent Consultant (Netherlands)
  • Janna Lingenfelder of IBM (Germany)
  • Guy Martin of OASIS Open (United States)
  • Andriana Prentza of the University of Piraeus (Greece)
  • Get Started with MicroPython on Raspberry Pi Pico

    In Get Started with MicroPython on Raspberry Pi Pico, you will learn how to use the beginner-friendly language MicroPython to write programs and connect hardware to make your Raspberry Pi Pico interact with the world around it. Using these skills, you can create your own electro‑mechanical projects, whether for fun or to make your life easier.

  • Perl Weekly Challenge 96: Reverse Words and Edit Distance (and Decorators in Perl)
  • Perl weekly challenge 96
  • Mood Lighting

    The lighting in my bedroom uses Philips Hue bulbs — specifically, the coloured ones. Last night, I decided it would be nice to set the three lights in my bedroom to cycle slowly through a set of warm colours using a script. I didn't want harsh transitions from one colour to the next, but for the lighting to fade from one colour to the next in a smooth gradient. Also, I didn't want the three bulbs to all be the exact same colour, but wanted each bulb to be at different stage in the cycle, like they're "chasing" each other through the colours. So I whipped up a quick script. It requires the command-line tool hueadm to be installed and set up before we start. You can run hueadm lights to get a list of available lights, and in particular, their ID numbers.

  • This Week in Rust 374