Sunday, 21 April

13:07

Historic 'Summit' with the Creators of Python, Java, TypeScript, and Perl [Slashdot]

"At the first annual charity event conducted by Puget Sound Programming Python on April 2, four legendary language creators came together to discuss the past and future of language design," reports PacktPub. - Guido van Rossum, the creator of Python - James Gosling, the founder, and lead designer behind the Java programming language - Anders Hejlsberg, the original author of Turbo Pascal who has also worked on the development of C# and TypeScript - Larry Wall, the creator of Perl You can watch the video here -- the speaker introductions start about 50 minutes into the video-- or read PacktPub's summary of the event: Guido van Rossum said designing a programming language is very similar to the way JK Rowling writes her books, the Harry Potter series... He says JK Rowling is a genius in the way that some details that she mentioned in her first Harry Potter book ended up playing an important plot point in part six and seven... When designing a language we start with committing to certain details like the keywords we want to use, the style of coding we want to follow, etc. But, whatever we decide on we are stuck with them and in the future, we need to find new ways to use those details, just like Rowling... When James Gosling was asked how Java came into existence and what were the design principles he abided by, he simply said, "it didn't come out of like a personal passion project or something. It was actually from trying to build a prototype.... It started out as kind of doing better C and then it got out of control that the rest of the project really ended up just providing the context." In the end, the only thing out of that project survived was Java... Larry Wall wanted to create a language that was more like a natural language. Explaining through an example, he said, "Instead of putting people in a university campus and deciding where they go we're just gonna see where people want to walk and then put shortcuts in all those places." A basic principle behind creating Perl was to provide APIs to everything. It was aimed to be both a good text processing language linguistically but also a glue language.... Similar to the views of Guido van Rossum, Anders Hejlsberg adds that any decision that you make when designing a language you have to live with it. When designing a language you need to be very careful about reasoning over what "not" to introduce in the language. There was also some discussion of types -- Gosling believes they help improve performance, while Hejlsberg said types are also useful when building coding tools. "It turns out that you can actually be more productive by adding types if you do it in a non-intrusive manner and if you work hard on doing good type inference and so forth." In fact, Hejlsberg told the audience that the TypeScript project was inspired by massive "write-only" JavaScript code bases, while a semantic understanding (including a type system) makes refactoring easier. Guido van Rossum acknowledged that TypeScript "is actually incredibly useful and so we're adding a very similar idea to Python. We are adding it in a slightly different way because we have a different context.... I've learned a painful lesson, that for small programs dynamic typing is great. For large programs, you have to have a more disciplined approach. And it helps if the language actually gives you that discipline, rather than telling you, 'Well, you can do whatever you want.'" In the video Larry Wall says the Perl 6 team had also noticed the limitations of loose typing, and added a robust type system to Perl 6 to "help with programming in the large." This was the first annual benefit for CSforALL, a group promoting high-quality computer science classes at every grade level.

Read more of this story at Slashdot.

12:36

Linux 5.1-rc6 Kernel Released In Linus Torvalds' Easter Day Message [Phoronix]

Linux 5.1-rc6 is larger than the previous release candidate, but he isn't too worried right now about the condition of the upcoming Linux 5.1 kernel...

11:45

More Than 23 Million People Use the Password '123456' [Slashdot]

Bearhouse shares a new study from the UK's "National Cyber Security Centre," which advises the public on computer security, about the world's most-frequently cracked passwords. It's probably no surprise to the Slashdot readership: people use bad passwords. A recent study of publicly-available "hacked" accounts -- by the UK National Cyber Security Centre -- reveals "123456" was top, followed by the much more secure "123456789" and hard-to-guess "qwerty". If you're a soccer (football) fan, then try "Liverpool" or "Chelsea" -- they'll work in more than half a million cases. Finally, for musicians, Metallica gets beaten down by 50cent, 140k to 190k respectively. The most common fictional names used as passwords were "superman" (333,139 users), "naruto" (242,749), "tigger" (237,290), "pokemon" (226,947), and "batman" (203,116). The organization recommends instead choosing three random words as a password -- and also checking "password blacklists" that show passwords that have already been found in past data breaches. (Developers and sysadmins are also advised to implement these checks as part of their rules for which user passwords will be allowed.) The organization also released a file from the "Have I Been Pwned" site containing the top 100,000 passwords. So what are the top ten most-frequently used passwords? 123456123456789qwertypassword11111112345678abc1231234567password112345

Read more of this story at Slashdot.

10:34

Southwest Airlines Says They'll Purchase 'Hundreds' More Boeing 737 Max Aircraft [Slashdot]

Inc. magazine describes as "stunning" announcement from Southwest Airlines, "by far the biggest 737 Max customer in the United States, with 34 of the planes among its fleet, and plans for many more. " Speaking at a chamber of commerce event in Dallas, Southwest chairman and CEO Gary Kelly said Southwest has no plans to abandon the 737 Max. In fact, he said it will purchase "hundreds" more 737 Max aircraft. "It's a very good airplane, but Boeing has acknowledged that they've got some things they need to address with the software in that airplane," Kelly said, according to the Dallas Business Journal. "It seems like it's a relatively straight-forward modification. We're obviously anxious to get the airplane back in service." That's it: all-in on the 737 Max. Or at least close to it... By flying just one aircraft, Southwest knows that almost any of its pilots can fly any of its planes. Its scheduling and maintenance tasks become a lot easier than for airlines with multiple types of aircraft. But it also means that ultimately, Southwest's brand and its overall success are tied up with Boeing and the 737 in a way that few other airlines are. Marketwatch adds that in fact, major airlines "are hungry for fuel-efficient single-aisle aircraft such as the Max, and there's a long backlog for the jet's closest competitor, Airbus SE, analysts at Oxford Economics said in a note Thursday. "That will shield Boeing from a mass cancellation of orders," the analysts said.

Read more of this story at Slashdot.

10:23

KDE Saw More System Settings Work While EGLStreams KWin Support Stole The Show [Phoronix]

Most exciting this week in KDE space was seeing KWin pick up support for the NVIDIA EGLStreams implementation for Wayland with this proprietary graphics driver. Beyond the EGLStreams KWin support were also many fixes and other improvements to the desktop landing this Easter week...

09:34

Fortnite World Cup: More than 1,200 Accounts Banned For Cheating [Slashdot]

"Epic Games gave bans to more than 1,200 Fortnite accounts and revoked cash prizes that more than 200 players had won following Epic's investigations of cheating in the first week of Fortnite's World Cup Online Open," reports Polygon: That cheater (whom Epic did not name) used the cheat software during the tournament's semifinals. The account involved had played "for less than five minutes" before being discovered and banned, Epic said. The great majority of the other accounts sanctioned received two-week bans for their misconduct. Of them, 196 players forfeited their winnings after they were caught circumventing region locks to play in several regions. Epic said that will change the prize payouts for others in the tournament, but their improved finishes won't be reflected on Fortnite's in-game leaderboard. Nine prize winners lost their money for sharing accounts, and one winner's earnings were vacated for teaming. Epic Games said it has added a "real-time teaming detection algorithm" to its competitive play. Teaming, in which players in a solo mode work cooperatively and create a competitive disadvantage for others, can get players banned even in competitive non-tournament play.

Read more of this story at Slashdot.

08:34

How Facebook Mis-Captioned the Launch of a NASA Supply Rocket [Slashdot]

An anonymous reader quotes Ars Technica: An Antares rocket built by Northrop Grumman launched on Wednesday afternoon, boosting a Cygnus spacecraft with 3.4 tons of cargo toward the International Space Station. The launch from Wallops Island, Virginia, went flawlessly, and the spacecraft arrived at the station on Friday. However, when NASA's International Space Station program posted the launch video to its Facebook page on Thursday, there was a problem. Apparently the agency's caption service hadn't gotten to this video clip yet, so viewers with captions enabled were treated not just to the glory of a rocket launch, but the glory of Facebook's automatically generated crazywords... Some of the captions are just hilariously bad. For example, when the announcer triumphantly declares, "And we have liftoff of the Antares NG-11 mission to the ISS," the automatically generated caption service helpfully says, "And we have liftoff of the guitarist G 11 mission to the ice sets." There's more examples in the photos at the top of their article -- for example, a caption stating that the uncrewed launch "had a phenomenal displaced people at 60 seconds," and translating the phrase "TVC is nominal" to "phenomenal." While the lift-off announcer does use what may be unfamiliar names for the rockets, along with other technical jargon, the article points out that YouTube's auto-captioning of the same launch "seemed to have no problem with those bits of space argot."

Read more of this story at Slashdot.

07:34

A Secret Server For the Dead MMO 'City of Heroes' Has Players In an Uproar [Slashdot]

eatmorekix quotes Vice: In 2012, Paragon Studios announced it was shutting down City of Heroes, a massively multiplayer online game where a community of players created their own superheroes, went on adventures together, and formed lasting friendships. The news was crushing to the game's devoted community because they could no longer play and hang out in the virtual space they loved, and today, years after the game's shutdown, the community is in an uproar again. As Massivelyop first reported, a group of City of Heroes players called the Secret Cabal of Reverse Engineers (SCORE) had created their own, private server where they could continue to play the game for the last six years, but kept it relatively secret. "I like the rest of you have been lied to," Reddit user avoca wrote in a thread titled "BE ANGRY" on the City of Heroes subreddit. "I have been told City of Heroes has been shutdown. Today, I learn I have been mistaken. For all of these years, City of Heroes has lived on. In secret. For every passing day and every withdrawal symptom, a person is playing on this secret server, and they are gaining xp, leveling up, performing task forces and forming supergroups." In 2004 the game's lead designer answered questions from Slashdot's reader. 15 years, a member of the emulator team tells Massivelyop that they'd tried to keep their City of Heroes server a secret for over six years because they were worried about getting a cease and desist notice from the game's publishers.

Read more of this story at Slashdot.

07:00

A Set Of Obscure Drivers Out-Of-Tree Since Linux 2.x Will See Mainline For Linux 5.2 [Phoronix]

Should you have any Daktronics scoreboards, video displays, or digital billboards, mainline Linux kernel support appears to be in the works...

06:32

Saturday Morning Breakfast Cereal - Hobby [Saturday Morning Breakfast Cereal]



Click here to go see the bonus panel!

Hovertext:
Eventually, SMBC will be nothing but irritating redheads faithfully describing their own flawed reasoning.


Today's News:

06:13

Sam Hartman Is Debian's Newest Project Leader, Aims To "Keep Debian Fun" [Phoronix]

While initially no qualified candidates stepped forward for the 2019 Debian Project Leader elections, following the extended nomination period and voting, Sam Hartman has been elected the newest leader of Debian...

05:30

Intel i40e Driver Supporting Dynamic Device Personalization With Linux 5.2 [Phoronix]

Intel's i40e / XL710 Ethernet driver will begin supporting Dynamic Device Personalization (DDP) with the upcoming Linux 5.2 kernel...

04:57

Oracle's Ksplice Live Kernel Patching Picks Up Known Exploit Detection [Phoronix]

One of the areas of Oracle Linux and its "Unbreakable Enterprise Kernel" that the company continues investing in and differentiating it from upstream RHEL and alternatives is around Ksplice as their means of live kernel patching while Red Hat continues with Kpatch and SUSE with kGraft...

04:34

Did Google Sabotage Firefox and IE? [Slashdot]

Firefox's former VP accused Google of sabotaging Firefox -- for example, when Gmail and Google Docs "started to experience selective performance issues and bugs on Firefox" and demo sites "would falsely block Firefox as 'incompatible'... There were dozens of oopses. Hundreds maybe... [W]hen you see a sustained pattern of 'oops' and delays from this organization -- you're being outfoxed." Now Nightingale's accusations have stirred up some follow-up from technology reporters. An anonymous reader shares a blog post by ZDNet security reporter Catalin Cimpanu: Nightingale is not the first Firefox team member to come forward and make such accusations. In July 2018, Mozilla Program Manager Chris Peterson accused Google of intentionally slowing down YouTube performance on Firefox. He revealed that both Firefox and Edge were superior when loading YouTube content when compared to Chrome, and in order to counteract this performance issue, Google switched to using a JavaScript library for YouTube that they knew wasn't supported by Firefox. At this point, it's very hard not to believe or take Nightingale's comments seriously. Slowly but surely, Google is becoming the new Microsoft, and Chrome is slowly turning into the new IE, an opinion that more and more users are starting to share. On Twitter, a senior editor at the Verge added "Google did a lot of 'oops' accidents to Windows Phone, too. Same pattern of behavior with its services and Edge. Oopsy this, oopsy that." The site MSPowerUser also shares a similar story from former Microsoft Edge intern, Joshua Bakita. "I very recently worked on the Edge team, and one of the reasons we decided to end EdgeHTML was because Google kept making changes to its sites that broke other browsers, and we couldn't keep up." Meanwhile, Computerworld argues that data "backs up Nightingale's admission, to a point." [I]f Google monkey business contributed to Firefox's fall, it must have really damaged Microsoft's IE. During the time it took Chrome to replace Firefox as the No. 2 browser, Firefox lost just 9% of its user share, while IE shed 22%. And Chrome's most explosive growth - which began in early 2016 - didn't come at Firefox's expense; instead, it first hollowed out IE, then suppressed any potential enthusiasm for the follow-on Edge. Chrome didn't reach its current place -- last month capturing nearly 68% of all browser activity -- by raiding Firefox. It did it by destroying IE. Oops.

Read more of this story at Slashdot.

01:34

Bitcoin Couldn't Hide Russia's Operatives From Mueller's Investigation [Slashdot]

"Russian operatives used cryptocurrency at almost every stage in their online efforts to interfere in the 2016 U.S. presidential election, according to Special Counsel Robert Mueller's final report on his investigation." So says CNN, adding that "Systems used in the hacking of the Democratic Party were paid for using Bitcoin, as were online hosting services that supported websites which published hacked materials and were used in the targeting of disinformation at American voters." The Russian operatives (a.k.a. the Fancy Bear team) withdrew funds from both the CEX.io and BTC-e.com cryptocurrency exchanges to fund domain purchases, server rentals, and VPN services, reports Draconi, Slashdot reader #38,078. He's correlated the Mueller report with the Bitcoin blockchain addresses referenced (indirectly) in two indictments brought by America's Department of Justice -- one for interference in the 2016 U.S. Presidential Election, and one for the public leak of Olympic drug-testing results -- and shared the results of his investigation with CNN. CNN reports: Russian agents, including those from the GRU, Russia's military intelligence agency, had sought to, as the Mueller indictment of GRU agents last July outlined, "capitalize on the perceived anonymity of cryptocurrencies." But while Bitcoin allowed Russians to "avoid direct relationships with traditional financial institutions, allowing them to evade greater scrutiny of their identities and sources of funds," according to the same indictment, it wasn't enough to evade Mueller's investigation. Tim Cotten, a blockchain developer and security researcher who has done extensive work in tracking Russian Bitcoin accounts unearthed by Mueller's team, noted in an interview with CNN Business that trading Bitcoins on exchanges usually requires users to set up Bitcoin wallets that are tied to an email address. Federal investigators were able to access at least some of the email accounts used in the operation, which, Cotten says, would have made tracing Bitcoin transactions a lot easier. Investigators' access to the "the other side of the blockchain equation," as he described it, was important because, "Rather than having to search the blockchain for clues, they already had all of the receipts demonstrating which accounts were under the GRU's control." The Russians used stolen and false identities in setting up some of these accounts, according to Mueller's team, but had used some of the same accounts to purchase servers and website domains involved in the hacking of the Democratic Party and the publishing of the hacked materials, Mueller's indictment outlines. That, Cotten said, would have made it easier for investigators to tie the case together. "The purchase trails are fully exposed in the Bitcoin blockchain as funds are used, consolidated, and deposited into secondary online wallets such as SpectroCoin.com and Xapo.com," Cotten writes on his site. "Anyone can follow along and trace the payment chains to see exactly how the Russians were spending their money, when, and on what."

Read more of this story at Slashdot.

Saturday, 20 April

22:34

'Pi VizuWall' Is a Beowulf Cluster Built With Raspberry Pi's [Slashdot]

Why would someone build their own Beowulf cluster -- a high-performance parallel computing prototype -- using 12 Raspberry Pi boards? It's using the standard Beowulf cluster architecture found in about 88% of the world's largest parallel computing systems, with an MPI (Message Passing Interface) system that distributes the load over all the nodes. Matt Trask, a long-time computer engineer now completing his undergraduate degree at Florida Atlantic University, explains how it grew out of his work on "virtual mainframes": In the world of parallel supercomputers (branded 'high-performance computing', or HPC), system manufacturers are motivated to sell their HPC products to industry, but industry has pushed back due to what they call the "Ninja Gap". MPI programming is hard. It is usually not learned until the programmer is in grad school at the earliest, and given that it takes a couple of years to achieve mastery of any particular discipline, most of the proficient MPI programmers are PhDs. And this, is the Ninja Gap -- industry understands that the academic system cannot and will not be able to generate enough 'ninjas' to meet the needs of industry if industry were to adopt HPC technology. As part of my research into parallel computing systems, I have studied the process of learning to program with MPI and have found that almost all current practitioners are self-taught, coming from disciplines other than computer science. Actual undergraduate CS programs rarely offer MPI programming. Thus my motivation for building a low-cost cluster system with Raspberry Pis, in order to drive down the entry-level costs. This parallel computing system, with a cost of under $1000, could be deployed at any college or community college rather than just at elite research institutions, as is done [for parallel computing systems] today. The system is entirely open source, using only standard Raspberry Pi 3B+ boards and Raspbian Linux. The version of MPI that is used is called MPICH, another open-source technology that is readily available. But there's an added visual flourish, explains long-time Slashdot reader iamacat. "To visualize computing, each node is equipped with a servo motor to position itself according to its current load -- lying flat when fully idle, standing up 90 degrees when fully utilized." Its data comes from the /proc filesystem, and the necessary hinges for this prototype were all generated with a 3D printer. "The first lesson is to use CNC'd aluminum for the motor housings instead of 3D-printed plastic," writes Trask. "We've seen some minor distortion of the printed plastic from the heat generated in the servos."

Read more of this story at Slashdot.

22:00

The NULL TTY Driver Is Coming To The Linux 5.2 Kernel [Phoronix]

While initially some questions were raised over the usefulness and practicality of this driver when it was first proposed on the kernel mailing list, the NULL TTY driver is set to make its maiden voyage to mainline with the upcoming Linux 5.2 kernel cycle...

19:34

'How the Boeing 737 Max Disaster Looks to a Software Developer' [Slashdot]

Slashdot reader omfglearntoplay shared this article from IEEE's Spectrum. In "How the Boeing 737 Max Disaster Looks to a Software Developer," pilot (and software executive) Gregory Travis argues Boeing tried to avoid costly hardware changes to their 737s with a flawed software fix -- specifically, the Maneuvering Characteristics Augmentation System (or MCAS): It is astounding that no one who wrote the MCAS software for the 737 Max seems even to have raised the possibility of using multiple inputs, including the opposite angle-of-attack sensor, in the computer's determination of an impending stall. As a lifetime member of the software development fraternity, I don't know what toxic combination of inexperience, hubris, or lack of cultural understanding led to this mistake. But I do know that it's indicative of a much deeper problem. The people who wrote the code for the original MCAS system were obviously terribly far out of their league and did not know it. So Boeing produced a dynamically unstable airframe, the 737 Max. That is big strike No. 1. Boeing then tried to mask the 737's dynamic instability with a software system. Big strike No. 2. Finally, the software relied on systems known for their propensity to fail (angle-of-attack indicators) and did not appear to include even rudimentary provisions to cross-check the outputs of the angle-of-attack sensor against other sensors, or even the other angle-of-attack sensor. Big strike No. 3... None of the above should have passed muster. None of the above should have passed the "OK" pencil of the most junior engineering staff... That's not a big strike. That's a political, social, economic, and technical sin... The 737 Max saga teaches us not only about the limits of technology and the risks of complexity, it teaches us about our real priorities. Today, safety doesn't come first -- money comes first, and safety's only utility in that regard is in helping to keep the money coming. The problem is getting worse because our devices are increasingly dominated by something that's all too easy to manipulate: software.... I believe the relative ease -- not to mention the lack of tangible cost -- of software updates has created a cultural laziness within the software engineering community. Moreover, because more and more of the hardware that we create is monitored and controlled by software, that cultural laziness is now creeping into hardware engineering -- like building airliners. Less thought is now given to getting a design correct and simple up front because it's so easy to fix what you didn't get right later. The article also points out that "not letting the pilot regain control by pulling back on the column was an explicit design decision. Because if the pilots could pull up the nose when MCAS said it should go down, why have MCAS at all? "MCAS is implemented in the flight management computer, even at times when the autopilot is turned off, when the pilots think they are flying the plane."

Read more of this story at Slashdot.

17:34

'Some Cheers, A Few Sneers For Google's URL Solution For AMP' [Slashdot]

The Verge explains what all the commotion is about: AMP stands for "Accelerated Mobile Pages," and you've probably noticed that those pages load super quickly and usually look much simpler than regular webpages. You may have also noticed that the URL at the top of your browser started with "www.google.com/somethingorother" instead of with the webpage you thought you were visiting. Google is trying to fix that by announcing support for something called "Signed Exchanges." What it should mean is that when you click on one of those links, your URL will be the original, correct URL for the story. Cloudflare is joining Google in supporting the standard for customers who use its services. In order for this thing to work, every step in the chain of technologies involved in loading the AMP format has to support Signed Exchanges, including your browser, the search engine, and the website that published the link. Right now, that means the URL will be fixed only when a Chrome browser loads a Google search link to a published article that has implemented support. Mozilla'a official position on signed exchanges is they're "harmful," arguing in a 51-page position paper that there's both security and privacy considerations. Pierre Far, a former Google employee, posted on Twitter that the change "breaks many assumptions about how the web works," and that in addition, "Google is acting too quickly. Other browsers and internet stakeholders have well-founded concerns, and the correct mechanism to address them is the standardization process. Google skipped all that. Naughty." Jeffrey Yaskin, from Chrome's web platform team, even acknowledged that criticism with a tweet of his own. "I think it's fair to say we're pushing it. The question is our motives, which I claim is to improve the web rather than to 'all your base' it, but I would say that either way." Search Engine Land cited both tweets, and shared some concerns of their own. "The compromise we have to consider before getting on board with Signed HTTP Exchanges is whether we're willing to allow a third party to serve up our content without users being able to tell the difference. "If we, as digital marketers, want to influence the conventions of our future work environment, we'll have to decide if the gains are enough to disrupt long-standing assumptions of how websites are delivered. If so, we'll also have to cede the ability to judge user intent over to Google and swallow the fact that it skipped over the standardization process to implement a process that one of its own created."

Read more of this story at Slashdot.

16:41

Smoke 'Seen For Miles' as SpaceX Crew Dragon Suffers Anomaly at Cape Canaveral [Slashdot]

An anonymous reader quotes Florida Today: A SpaceX Crew Dragon capsule suffered an anomaly during a routine test fire at Cape Canaveral Air Force Station Saturday afternoon, the 45th Space Wing confirmed today. "On April 20, 2019, an anomaly occurred at Cape Canaveral Air Force Station during the Dragon 2 static test fire," Wing Spokesman Jim Williams told FLORIDA TODAY. "The anomaly was contained and there were no injuries." SpaceX's Crew Dragon, also referred to as Dragon 2, is designed to take humans to the International Space Station and successfully flew for the first time in March. The company was planning to launch a crewed version of the spacecraft no earlier than July, but was also planning an in-flight abort test, or a demonstration of its life-saving abort capabilities, sometime before then. That reporter has now also tweeted an official statement from SpaceX. "Earlier today, SpaceX conducted a series of engine tests on a Crew Dragon test vehicle on our test stand at Landing Zone 1 in Cape Canaveral. The initial tests completed successfully but the final test resulted in an anomaly on the test stand. "Ensuring that our systems meet rigorous safety standards and detecting anomalies like this prior to flight are the main reasons why we test. Our teams are investigating and working closely with our NASA partners."

Read more of this story at Slashdot.

15:53

SuperTuxKart 1.0 Released For Open-Source Linux Racing [Phoronix]

SuperTuxKart, the open-source racing game inspired by Mario Kart and themed around Linux/Tux, has reached its 1.0 version after being in development the past 12+ years...

15:34

Erlang Creator Joe Armstrong Has Died [Slashdot]

Rogers Cadenhead (Slashdot reader #4,482) writes: Joe Armstrong, the computer scientist best known as one of the creators of the Erlang programming language, died Saturday. Erlang Solutions founder Francesco Cesarini shared the news on Twitter and said, "His work has laid the foundation which will be used by generations to come. RIP @joeerl, thank you for inspiring us all." Erlang was created by Armstrong, Robert Virding and Mike Williams at the Ericsson telecom company in 1986 and became open source 12 years later. It is known for functional programming, immutable data, code hot-swapping and systems that require insanely high levels of availability. In another Tweet, Cesarini asks people to share their own memories of Armstrong -- " funny, enlightening or plain silly." And Ulf Wiger, who describes himself as an Erlang old-timer, remembered giving a talk about how to avoid projects dominated by mediocrity. "I used Joe as an example of a 'brilliant developer, but hard to fit into a regular project.'" Joe had replied, "I am very EASY to fit into regular projects! It's just that so few projects are regular..."

Read more of this story at Slashdot.

14:34

The CIA Accuses Huawei Of Being Secretly Funded By China's State Intelligence [Slashdot]

"U.S. intelligence has accused Huawei Technologies of being funded by Chinese state security, The Times said on Saturday." Long-time Slashdot reader hackingbear shares a story from Reuters: The CIA accused Huawei of receiving funding from China's National Security Commission, the People's Liberation Army and a third branch of the Chinese state intelligence network, the British newspaper reported, citing a source. Earlier this year, U.S. intelligence shared its claims with other members of the Five Eyes intelligence-sharing group, which includes Britain, Australia, Canada and New Zealand, according to the report... The accusation comes at a time of trade tensions between Washington and Beijing and amid concerns in the United States that Huawei's equipment could be used for espionage. The company has said the concerns are unfounded... top educational institutions in the West have recently severed ties with Huawei to avoid losing federal funding.

Read more of this story at Slashdot.

13:34

An Interstellar Meteor May Have Hit Earth [Slashdot]

Two Harvard researchers believe a small meteor that struck earth in 2014 was from another solar system, saying it's "like getting a message in a bottle from a distant location." CNN reports: Dr. Abraham Loeb, the chair of the Department of Astronomy at Harvard University, and his co-author Amir Siraj, studied the velocity of objects entering the Earth's atmosphere, which can be used to predict whether the object was traveling in relation to our sun's orbit... Of the three fastest objects on record, the fastest was clearly bound to our sun. The third-fastest couldn't be clearly categorized. But the second-fastest, Loeb says, bore all the hallmarks of being literally out of this solar system. "At this speed, it takes tens of thousands of years for a object to move from one star to another," he says. Since they don't know exactly where it originated, they can't say exactly how old it is, but it could be downright ancient. "To cross the galaxy it would take hundreds of millions of years." Of all of the possibilities wrapped up in this relatively small object, perhaps the most exciting is the idea that, theoretically, interstellar objects could carry life from other solar systems. "Most importantly, there is a possibility that life could be transferred between stars," Loeb says. "In principle, life could survive in the core of a rock. Either bacteria, or tardigrades (a microscopic, water-dwelling animal); they can survive harsh conditions in space and arrive right to us..." [A]lthough the object detailed in this paper is the first recorded interstellar meteor to hit Earth, the study estimates such objects enter earth's atmosphere every ten years or so, which means there could be a million different interstellar objects floating around our solar system, just waiting to be examined.

Read more of this story at Slashdot.

13:20

JITLink Lands In LLVM 9.0 [Phoronix]

Being merged into the LLVM code-base this Saturday is JITLink, a just-in-time linker for parsing object files and letting their contents run in a target process...

12:34

Canada Civil Liberties Group Argues Toronto Shouldn't Be 'Google's Lab Rat' [Slashdot]

"A civil liberties group in Canada is suing three tiers of government over potential privacy issues posed by Sidewalk Labs's plan to develop a 12-acre smart city in Toronto, which will be approved or denied later this summer," reports Fast Company. The fight centers around a taxpayer-funded organization jointly created by the federal, provincial, and municipal governments: The Canadian Civil Liberties Association claims that Waterfront Toronto, let alone Sidewalk Labs, doesn't have the jurisdiction to make rules about people's privacy. The government "sold out our constitutional rights to freedom from surveillance and sold it to the global surveillance mammoth of behavioral data collection: Google," said Michael Bryant, the executive director and general counsel of the CCLA, in a press conference.... "Our job at the Canadian Civil Liberties Association is to say to all three levels of government that Canadians should not be Google's lab rat. This lab needs to be shut down and reset...." Ann Cavoukian, the former Information and Privacy Commissioner for the Canadian province of Ontario who joined the project early, quit in October 2018. The reason? Sidewalk Labs had decided not to require that all data collected by third parties in the development be instantly de-identified at the source, which would mean that sensitive data like people's faces or license plates could still potentially be used for corporate profit. "I knew the smart city of privacy wasn't going to happen," she says. "That's why I resigned: I said, I can't go along with it...." "If I was still involved, I'd want more decentralized models of data where the individual could truly retain control of the data," she says, citing a new, privacy-centric model from the web's father, Tim Berners-Lee, to decentralize the web and take back control from the corporations that run it. In a statement Sidewalk Labs said they favor a data trust run by an independent third party partnering with the government to benefit the community and "spur innovation and investment" while protecting privacy. "Sidewalk Labs fully supports a robust and healthy discussion regarding privacy, data ownership, and governance. But this debate must be rooted in fact, not fiction and fear-mongering." But the CCLA's web site argues that unlawful surveillance "is wrong whether done by data profiteers or the state." The article also quotes their general counsel's complaint that the government has "outsourced our privacy rights and the supervision of our privacy rights and our surveillance to the very company that's doing the surveillance."

Read more of this story at Slashdot.

11:34

Corporate Surveillance: When Employers Collect Data on Their Workers [Slashdot]

An anonymous reader quotes CNBC: The emergence of sensor and other technologies that let businesses track, listen to and even watch employees while on company time is raising concern about corporate levels of surveillance... Earlier this year, Amazon received a patent for an ultrasonic bracelet that can detect a warehouse worker's location and monitor their interaction with inventory bins by using ultrasonic sound pulses. The system can track when and where workers put in or remove items from the bins. An Amazon spokesperson said the company has "no plans to introduce this technology" but that, if implemented in the future, could free up associates' hands, which now hold scanners to check and fulfill orders. Walmart last year patented a system that lets the retail giant listen in on workers and customers. The system can track employee "performance metrics" and ensure that employees are performing their jobs efficiently and correctly by listening for sounds such as rustling of bags or beeps of scanners at the checkout line and can determine the number of items placed in bags and number of bags. Sensors can also capture sounds from guests talking while in line and determine whether employees are greeting guests. Walmart spokesman Kory Lundberg said the company doesn't have any immediate plans to implement the system. Logistics company UPS has been using sensors in their delivery trucks to track usage to make sure drivers are wearing seat belts and maintenance is up to date. Companies are also starting to analyze digital data, such as emails and calendar info, in the hopes of squeezing more productivity out of their workers. Microsoft's Workplace Analytics lets employers monitor data such as time spent on email, meeting time or time spent working after hours. Several enterprises, including Freddie Mac and CBRE, have tested the system. A senior staff attorney for the EFF argues that new consumer privacy laws may not apply to employees. The article also cites a recent survey by Accenture in which 62% of executives "said their companies are using new technologies to collect data on people -- from the quality of work to safety and well-being" -- even though "fewer than a third said they feel confident they are using the data responsibly." Yet the leader of Accenture's talent and organization practice argues that workforce data "could boost revenue by 6.4%. This has encouraged workers to be open to responsible use of data, but they want to know that they will get benefits and return on their time."

Read more of this story at Slashdot.

10:34

America Reports Its First Cases of A Fungus Resistant To All Major Drugs [Slashdot]

An anonymous reader quotes the New York Times: About 90 percent of C. auris strains are resistant to at least one drug, and 30 percent are resistant to two or more of the three major classes of antifungal drugs. However, on Tuesday, the C.D.C. confirmed that it has learned in the last month of the first known cases in the United States of so-called "pan-resistant" C. auris -- a strain resistant to all major antifungals, said Dr. Tom Chiller, head of the agency's fungal division, in an interview. Such cases have been seen in several countries, including India and South Africa, but the two new cases, from New York State, have not been reported previously. Dr. Chiller said that it appeared that, in each case, the germ evolved during treatment and became pan-resistant, confirming a fear that the infection will continue to develop more effective defenses. "It's happening and it's going to happen," Dr. Chiller said. "That's why we need to remain vigilant and rapidly identify and control these infections." It often has been hard to gather details about the path of C. auris because hospitals and nursing homes have been unwilling to publicly disclose outbreaks or discuss cases, creating a culture of secrecy around the infection. States have kept confidential the locations of hospitals where outbreaks have occurred, citing patient confidentiality and a risk of unnecessarily scaring the public. In an interview with CBS News, the reporter stressed that while this was a serious issue, especially in hospitals, it's not yet a threat to the general public: "The people who are susceptible are people with weakened immune systems, the infirm, older folks in hospitals," Matt Richtel said. "So let me put the finest possible point on this: the general public walking down the street [is] not going to be felled by this. You're not gonna get it walking to Walmart. You're not going to get it in your house."

Read more of this story at Slashdot.

09:34

New Device Treats Childhood ADHD With Electric Pulses To Their Foreheads While They Sleep [Slashdot]

An anonymous reader quotes CNN: The first medical device to treat childhood attention deficit hyperactivity disorder, or ADHD, was OK'd Friday by the U.S. Food and Drug Administration. Designated for children ages 7 to 12 who are not currently on medication for the disorder, the device delivers a low-level electrical pulse to the parts of the brain responsible for ADHD symptoms.... The pocket-sized device is connected by wire to a small adhesive patch placed on the child's forehead above the eyebrows. Designed to be used at home while sleeping, it delivers a "tingling" electrical stimulation to branches of the cranial nerve that delivers sensations from the face to the brain. A clinical trial of 62 children showed that the Monarch external Trigeminal Nerve Stimulation System increases activity in the regions of the brain that regulate attention, emotion and behavior, all key components of ADHD. Compared to a placebo, children using the device had statistically significant improvement in their ADHD symptoms, the FDA said, although it could take up to four weeks to see improvement. Authors of the clinical trial called for additional research to examine if the response to treatment will last over time, and its potential impact on brain development with prolonged use.... The device was previously approved for the treatment of epilepsy and depression in Europe and Canada. Studies at UCLA found the stimulation decreased seizure activity by inhibiting overactive neurons in one section of the brain, while stimulating blood flow in the areas that control mood, attention and executive function. CNN reports that the manufacturer's web site says the device costs around $1,000 -- and is not covered by insurance. The FDA added that common side effects could include headache, teeth clenching, and trouble sleeping (as well as fatigue and sleepiness).

Read more of this story at Slashdot.

09:08

Panfrost DRM Driver Being Added To Linux 5.2 For Midgard / Bifrost Graphics [Phoronix]

Not only is the longtime Lima DRM driver for Arm Mali 400/450 graphics set to finally premiere with the Linux 5.2 kernel, but the Panfrost DRM driver is also being mainlined for the newer Mali graphics hardware...

08:34

'Incognito Mode' Isn't Really Private. Try Browser Compartmentalization [Slashdot]

tedlistens writes: One of the most common techniques people think can help hide their activity is the use of an "incognito" mode in a browser," writes Michael Grothaus at Fast Company. But "despite what most people assume, incognito modes are primarily built to block traces of your online activity being left on your computer -- not the web. Just because you are using incognito mode, that doesn't mean your ISP and sites like Google, Facebook, and Amazon can't track your activity." However, there's still a way to brew your own, safer "incognito mode." It's called browser compartmentalization. Grothaus writes: "The technique sees users using two or even three browsers on the same computer. However, instead of switching between browsers at random, users of browser compartmentalization dedicate one browser to one type of internet activity, and another browser to another type of internet activity. Specifically, the article recommends one browser for sites you need to log into, and another for random web surfing and any web searches. "By splitting up your web activity between two browsers, you'll obtain the utmost privacy and anonymity possible without sacrificing convenience or the ease of use of the websites you need to log in to." It recommends choosing a privacy-focused browser like Brave, Firefox, Apple's Safari, or Microsoft's Edge. "As for Chrome: It's made by Google, whose sole aim is to know everything you do online, so it's probably best to stay away from Chrome if you value your privacy." The article is part of a series titled "The Privacy Divide," which explores "misconceptions, disparities, and paradoxes that have developed around our privacy and its broader impacts on society."

Read more of this story at Slashdot.

07:00

26 States Now Ban Or Restrict Community Broadband, Report Finds [Slashdot]

An anonymous reader quotes a report from Motherboard: A new report has found that 26 states now either restrict or outright prohibit towns and cities from building their own broadband networks. Quite often the laws are directly written by the telecom sector, and in some instances ban towns and cities from building their own broadband networks -- even if the local ISP refuses to provide service. The full report by BroadbandNow, a consumer-focused company that tracks US broadband availability, indicates the total number of state restrictions on community broadband has jumped from 20 such restrictions since the group's last report in 2018. BroadbandNow's report looks at each state's restrictions individually, and found that while some states simply banned community broadband outright (a notable assault on voters' democratic rights), others impose clever but onerous restrictions on precisely how a local network can be funded, who they can partner with, or how quickly (and where) they're allowed to grow. In Tennessee, for example, state laws allow publicly-owned electric utilities to provide broadband, "but limits that service provision to within their electric service areas." Such restrictions have made it hard for EPB -- the highest rated ISP in America last year according to Consumer Reports -- to expand service into new areas.

Read more of this story at Slashdot.

06:57

Saturday Morning Breakfast Cereal - Soul [Saturday Morning Breakfast Cereal]



Click here to go see the bonus panel!

Hovertext:
I propose this as a new rhetorical tactic against people who think anything is completely patternless and inscrutable.


Today's News:

Hey geeks! We updated our rewards map for the new book. These will be online fairly soon!

05:18

Linux 5.2 Is Introducing The Fieldbus Subsystem [Phoronix]

A new subsystem queued for introduction in the upcoming Linux 5.2 cycle is the Fieldbus Subsystem, which is initially being added to the staging area of the kernel...

04:56

NVIDIA 418.52.05 Linux Driver Brings Vulkan Ray-Tracing To Non-RTX GPUs [Phoronix]

As we've been expecting from NVIDIA's recent DXR ray-tracing support back-ported to Pascal/Volta GPUs, there's now a NVIDIA Linux driver beta that offers VK_NV_ray_tracing for pre-Turing graphics processors...

04:37

In 2019, Most Linux Distributions Still Aren't Restricting Dmesg Access [Phoronix]

Going back to the late Linux 2.6 kernel days has been the CONFIG_DMESG_RESTRICT (or for the past number of years, renamed to CONFIG_SECURITY_DMESG_RESTRICT) Kconfig option to restrict access to dmesg in the name of security and not allowing unprivileged users from accessing this system log. While it's been brought up from time to time, Linux distributions are still generally allowing any user access to dmesg even though it may contain information that could help bad actors exploit the system...

04:00

Bacteria Use Viruses To Differentiate Themselves From Their Competitors, Study Finds [Slashdot]

schwit1 shares a report from UPI: Normally, bacteria and viruses are enemies, but new research suggests a viral infection can offer bacteria some benefits -- chiefly, the ability to distinguish friend from foe. Scientists discovered the phenomenon after observing a stark demarcation line between two strains of the bacteria Escherichia coli K-12, but no such divide between identical clones. The related rivals steered clear of one another, while the identical strains swam toward one another. To find out why, scientists surveyed 4,296 single-gene knockouts in the genome of Escherichia coli K-12. Researchers determined only one mutation caused the demarcation line to disappear. The mutation involved a gene that is used in viral replication. According to their analysis, the virus-related proteins produced by the gene allow for bacterial self-recognition. Scientists were also able erase the demarcation line by silencing the bacteriophage genomes that have weaved their way into the bacteria's genome. These leftover viral genes don't produce active phage particles, nor do they rupture host cells. When scientists exposed bacteria to a related virus, the old viral genes were activated and began producing phage particles for the new virus. Experiments showed the virus doesn't attack its host cells. Instead, the virus attacks other bacteria cells that don't carry the virus. The host helps the virus reproduce, and the virus takes out the bacteria's competitors. The new study has been published in the journal Cell Reports.

Read more of this story at Slashdot.

01:00

Robot News Presenter Causes a Stir On Russian TV [Slashdot]

Russia state news channel Rossiya 24 has introduced a robot presenter for some of its bulletins. The BBC reports that the robot, named Alex, "has already caused a stir, with some viewers complaining about his appearance and accusing him of peddling political propaganda." From the report: The robot was developed by Promobot in the city of Perm. His silicon head is modeled on the face of the company's co-founder Alexei Yuzhakov. At the moment, the robot anchor can only move his facial features and neck. However, the final robot will have fully mobile limbs as well. Production of the robot began in 2017 and should be fully complete later this year, according to Promobot. It said Alex had cost more than one million roubles ($15,600) to develop and that it had received orders for 12 more humanoids. Rossiya 24 said its newest presenter was of Russian origin with "software and almost all of its components produced inside the country." Alex has delivered a number of bulletins for the channel, presenting news items about agriculture, a nuclear technology forum and micro-finance. Most observers think on-air Alex is a temporary stunt to inject some fun and promote innovative Russian technology in TV news.

Read more of this story at Slashdot.

Friday, 19 April

23:19

The PinePhone Linux Smartphone Dev Kit Can Run Wayland's Weston [Phoronix]

While on one side of the table is the Purism Librem 5 Linux smartphone on the high-price/high-end side, the Pine64 folks continue working on the PinePhone as a lower-end Linux smartphone. A new video now shows the PinePhone running on Linux 5.0 with Wayland's Weston...

22:02

Linux 5.1 Picking Up Keyboard Mappings For Full-Screen, Toggle Display Keys [Phoronix]

Coming as a late addition to the Linux 5.1 kernel are some long overdue keyboard key mappings for different functionality...

21:30

Hacker Dumps Thousands of Sensitive Mexican Embassy Documents Online [Slashdot]

An anonymous reader quotes a report from TechCrunch: A hacker stole thousands of documents from Mexico's embassy in Guatemala and posted them online. The hacker, who goes by the online handle @0x55Taylor, tweeted a link to the data earlier this week. The data is no longer available for download after the cloud host pulled the data offline, but the hacker shared the document dump with TechCrunch to verify its contents. The hacker told TechCrunch in a message: "A vulnerable server in Guatemala related to the Mexican embassy was compromised and I downloaded all the documents and databases." He said he contacted Mexican officials but he was ignored. More than 4,800 documents were stolen, most of which related to the inner workings of the Mexican embassy in the Guatemalan capital, including its consular activities, such as recognizing births and deaths, dealing with Mexican citizens who have been incarcerated or jailed and the issuing of travel documents. We found more than a thousand highly sensitive identity documents of primarily Mexican citizens and diplomats -- including scans of passports, visas, birth certificates and more -- but also some Guatemalan citizens. Several documents contained scans of the front and back of payment cards. The stolen data also included dozens of letters granting diplomatic rights, privileges and immunities to embassy staff.

Read more of this story at Slashdot.

20:00

West Virginia Will Allow 'Blockchain Voting' In the 2020 Election [Slashdot]

Military voters stationed overseas will be able to cast their votes for the 2020 presidential election via a mobile app that uses a private blockchain. MIT Technology Review reports: Donald Kersey, West Virginia's elections director, tells the cryto news website LongHash that he believes the app, created by a startup called Voatz, can enhance participation by overseas voters. Turnout among this group is very low, in part because the process of receiving a ballot and securely returning it on time is often not straightforward. This is the rationale behind the decision by a number of states to allow overseas military voters to return their ballots via e-mail. West Virginia apparently is of the mind that Voatz's private blockchain will make this kind of online voting more secure. The state first piloted the program during the 2018 midterms. Though Kersey admits there's no telling for certain whether the app can be compromised, West Virginia is undeterred, especially given the "really good response rate" officials saw during the midterms last year. "We are not saying mobile voting is the best solution to the problem, we are not saying that blockchain technology is the best solution to storage of security data," Kersey tells LongHash. "What we are saying though is that it's better than what we have."

Read more of this story at Slashdot.

19:20

Should Vendors Start Adding Physical On/Off Switches To Devices That Can Spy On Us? [Slashdot]

Larry Sanger, American internet project developer and co-founder of Wikipedia, argues in a blog post that vendors must start adding physical on/off switches to webcams, smartphone cameras/mics, and other devices that spy on us. He writes: Have you ever noticed that your webcam doesn't have an "off" switch? I looked on Amazon, and I couldn't find any webcams for sale that had a simple on/off switch. When I thought I found one, but it turned out just to have a light that turns on when the camera is in use, and off when not -- not a physical switch you can press or slide. The "clever" solution is supposed to be webcam covers (something Mark Zuckerberg had a hand in popularizing); you can even get a webcam (or a laptop) with such a cover built in. How convenient! I've used tape, which works fine. But a cover doesn't cover up the microphone, which could be turned on without your knowledge. [...] It's almost as if the vendors of common, must-have devices want to make it possible to spy on us. An enterprising journalist should ask why they don't make such switches. They certainly have deliberately made it hard for us to stop being spied upon -- even though we're their customers. Think about that. We're their bread and butter, and we're increasingly and rightly concerned about our security. Yet they keep selling us these insecure devices. That's just weird, isn't it? What the hell is going on? [...] If your webcam, or your phone, or any other device with an Internet-connected camera or microphone (think about how many you own) has ever been hacked, these [hardware vendors like Logitech and Apple and large software vendors like Skype and Snapchat] are partly to blame if it was always-on by design. They have a duty to worry about how their products make their users less secure. They haven't been doing this duty. Sanger goes on to urge consumers to care more about our privacy and security, and demand that vendors give us an off switch. "I think we consumers should demand that webcams, smart phones, smart speakers, and laptop cameras and microphones -- and any other devices with cameras and microphones that are connected to the Internet -- be built with hardware 'off' switches that make it impossible for the camera and microphone to be operated," writes Sanger. Do you agree?

Read more of this story at Slashdot.

18:40

Unexpected Protection Added To Microsoft Edge Subverts IE Security [Slashdot]

Dan Goodin writes via Ars Technica: A researcher has uncovered strange and unexpected behavior in Windows 10 that allows remote attackers to steal data stored on hard drives when a user opens a malicious file downloaded with the Edge browser. The threat partially surfaced last week when a different researcher, John Page, reported what he called a flaw in Internet Explorer. Page claimed that when using the file manager to open a maliciously crafted MHT file, the browser uploaded one or more files to a remote server. According to Page, the vulnerability affected the most recent version of IE, version 11, running on Windows 7, Windows 10, and Windows Server 2012 R2 with all security updates installed. (It's no longer clear whether any OS other than Windows 10 is affected, at least for some users. More about that in a moment.) [I]n Page's post was a video demonstration of the proof-of-concept exploit Page created. It shows a booby-trapped MHT file triggering an upload of the host computer's system.ini file to a remote server. Page's video shows the file being downloaded with Edge. "This can allow remote attackers to potentially exfiltrate Local files and conduct remote reconnaissance on locally installed Program version information," Page wrote. "Example, a request for 'c:\Python27\NEWS.txt' can return version information for that program."

Read more of this story at Slashdot.

17:49

It's Time To Re-Vote Following The Botched 2019 X.Org Elections [Phoronix]

While there were the recent X.Org Foundation board elections, a do-over was needed as their new custom-written voting software wasn't properly recording votes... So here's now your reminder to re-vote in these X.Org elections...

16:10

Wannacry-slayer Marcus Hutchins pleads guilty to two counts of banking malware creation [The Register]

'I regret these actions and accept full responsibility for my mistakes'

Marcus Hutchins, the British security researcher who shot to fame after successfully halting the Wannacry ransomware epidemic, has pleaded guilty to crafting online bank-account-raiding malware.…

15:16

Defense against the Darknet, or how to accessorize to defeat video surveillance [The Register]

Boffins from Belgium break people recognition software with a colorful placard

A trio of Belgium-based boffins have created a ward that renders wearers unrecognizable to software trained to detect people.…

14:26

Not one of the 12 steps: Rehab patients' details exposed in publicly visible database [The Register]

Researcher disturbed at availability of very personal data

More than two years of billing records from a drug and alcohol rehabilitation center were made freely available on the internet, a security researcher has discovered.…

13:05

Double trouble for Lyft after share price drop sparks class action lawsuits claiming hype [The Register]

Rideshare company lied about market share, claim investors

Rideshare company Lyft has been hit with two class action lawsuits by investors who claim the company lied about its market share.…

10:40

AMDGPU Has Another Round Of Updates Ahead Of Linux 5.2 [Phoronix]

Feature work on DRM-Next for the Linux 5.2 kernel cycle is winding down while today AMD has sent in what could be their last round of AMDGPU feature updates for this next kernel release...

06:57

Saturday Morning Breakfast Cereal - Good Luck [Saturday Morning Breakfast Cereal]



Click here to go see the bonus panel!

Hovertext:
I'm pretty sure any sentence of the sort 'the Romans did...' is on some level wrong, or simplified enough to not be right, but look, one must find the road to the dong joke wherever it may be.


Today's News:

06:49

Mesa's Vulkan Drivers See More Extension Work Ahead Of The 19.1 Branching [Phoronix]

Mesa 19.1 is due to be released at the end of May and for that to be the feature freeze is in two weeks followed by the weekly release candidates. With the feature development ending soon for this next quarterly Mesa release, the Radeon "RADV" and Intel "ANV" Vulkan driver developers in particular have been quite busy on their remaining feature work...

06:40

UK comms watchdog mulls 5G tweaks: Operators want moooooar power [The Register]

Oh and remove the guard bands, would you Ofcom?

Ofcom is amenable to technical tweaks that mobile operators have requested to 5G rules, launching a consultation yesterday.…

06:38

Qt 6 Might Drop Their Short-Lived Universal Windows Platform Support [Phoronix]

While the Universal Windows Platform (UWP) is needed for targeting the Xbox One, Microsoft HoloLens, and IoT, The Qt Company is thinking about gutting out their UWP support in the big Qt 6 tool-kit update...

06:05

FreeBSD Images Reworked With ZFS On Linux Code Up For Testing [Phoronix]

Last year FreeBSD developers decided to re-base their ZFS file-system code based on the "ZFS On Linux" port rather than the Illumos source tree where they originally had been acquiring the support for this BSD. There's now FreeBSD 12 and FreeBSD 13/Head images available for testing of this re-worked ZFS file-system support...

05:00

Ready for 6G? How AI will shape the network of the future [Top News - MIT Technology Review]

With 5G networks rolling out around the world, engineers are turning their attention to the next incarnation.

04:59

Aussies, Yanks may think they're big drinkers – but Brits easily booze them under the table [The Register]

Isssh nothing to be proud of, hic, hic. Shame again pleesh

The top ten per cent of Australia’s boozy population downs more than half of the alcohol consumed in the country, according to new research – and the Brits are even worse.…

03:58

Strong-willed field support op holds it together during painful customer call [The Register]

Are you... Are you sure that we make this machine, sir?

On Call  Roll up, roll up, to the best part of your day, nay, your week – On Call, where Reg readers share Eureka moments and gleeful memories in tech support.…

03:00

4 cool new projects to try in COPR for April 2019 [Fedora Magazine]

COPR is a collection of personal repositories for software that isn’t carried in Fedora. Some software doesn’t conform to standards that allow easy packaging. Or it may not meet other Fedora standards, despite being free and open source. COPR can offer these projects outside the Fedora set of packages. Software in COPR isn’t supported by Fedora infrastructure or signed by the project. However, it can be a neat way to try new or experimental software.

Here’s a set of new and interesting projects in COPR.

Joplin

Joplin is a note-taking and to-do app. Notes are written in the Markdown format, and organized by sorting them into various notebooks and using tags.
Joplin can import notes from any Markdown source or exported from Evernote. In addition to the desktop app, there’s an Android version with the ability to synchronize notes between them — using Nextcloud, Dropbox or other cloud services. Finally, there’s a browser extension for Chrome and Firefox to save web pages and screenshots.

Installation instructions

The repo currently provides Joplin for Fedora 29 and 30, and for EPEL 7. To install Joplin, use these commands with sudo:

sudo dnf copr enable taw/joplin
sudo dnf install joplin

Fzy

Fzy is a command-line utility for fuzzy string searching. It reads from a standard input and sorts the lines based on what is most likely the sought after text, and then prints the selected line. In addition to command-line, fzy can be also used within vim. You can try fzy in this online demo.

Installation instructions

The repo currently provides fzy for Fedora 29, 30, and Rawhide, and other distributions. To install fzy, use these commands:

sudo dnf copr enable lehrenfried/fzy
sudo dnf install fzy

Fondo

Fondo is a program for browsing many photographs from the unsplash.com website. It has a simple interface that allows you to look for pictures of one of several themes, or all of them at once. You can then set a found picture as a wallpaper with a single click, or share it.

Installation instructions

The repo currently provides Fondo for Fedora 29, 30, and Rawhide. To install Fondo, use these commands:

sudo dnf copr enable atim/fondo
sudo dnf install fondo

YACReader

YACReader is a digital comic book reader that supports many comics and image formats, such as cbz, cbr, pdf and others. YACReader keeps track of reading progress, and can download comics’ information from Comic Vine. It also comes with a YACReader Library for organizing and browsing your comic book collection.

Installation instructions

The repo currently provides YACReader for Fedora 29, 30, and Rawhide. To install YACReader, use these commands:

sudo dnf copr enable atim/yacreader
sudo dnf install yacreader

02:31

Hands off Brock! EFF pleads with Google not to kill its Privacy Badger with its Manifest destiny [The Register]

It's not hard, we just need some coding tweaks to make sure Privacy Badger stays sane

In an effort to discourage Google from breaking or hobbling content blocking and privacy Chrome Extensions, the Electronic Frontier Foundation on Wednesday presented the Chocolate Factory with a modest wish list [PDF] to guide the company's ongoing API revision.…

01:06

Old-school cruel: Dodgy PDF email attachments enjoying a renaissance [The Register]

Let's go back... way back

The last few months have seen a big increase in malware attacks using PDF email attachments, according to security firm SonicWall.…

00:01

Haiku OS Picks Up An NVMe Storage Driver [Phoronix]

Back during the BeOS days of the 90's, NVM Express solid-state storage obviously wasn't a thing but the open-source Haiku OS inspired by it now has an NVMe driver...

Thursday, 18 April

22:27

VIRTIO 1.1 Released With 2D Graphics Support, Evdev Input Device [Phoronix]

The Virtual I/O Device standard has christened its VIRTIO 1.1 specification this month. This is the virtualization standard around network/storage/graphics/other-hardware in mind for cross-hypervisor compatibility...

17:43

We've read the Mueller report. Here's what you need to know: ██ ██ ███ ███████ █████ ███ ██ █████ ████████ █████ [The Register]

Trump predicted he was 'fucked' – but he hadn't reckoned on ██████████

Analysis  It's 448 pages of which roughly 50 have been blacked out.…

17:07

IBM Watson Health cuts back Drug Discovery 'artificial intelligence' after lackluster sales [The Register]

And seemingly uses machine learning to explain why it's kinda not but kinda is

IBM Watson Health is tapering off its Drug Discovery program, which uses "AI" software to help companies develop new pharmaceuticals, blaming poor sales.…

15:42

We reveal what's inside Microsoft's Azure Govt Secret regions... wait, is that a black helico– [The Register]

Redmond hopes to lure Uncle Sam's spy agencies, military away from Amazon

Microsoft has set up two new Azure cloud regions in the US – dubbed Azure Government Secret regions – to store data involving American national security. The services are in private preview, and are pending official government accreditation.…

14:56

Google rolls out Android Easter Egg for Europe – a Microsoft antitrust-style browser, search engine choice box [The Register]

Now how about we forget these fines, eh, mes amies? Meine Freunde? Mis amigos?

Android users across Europe are due a software update from Google today that will ask them to make a choice for the future of their smartphones and gadgets – which browser and search engine do you want to use?…

14:22

Valve's Proton 4.2-3 Released With Wine-Mono Integration Plus DXVK 1.0.3, Updated FAudio [Phoronix]

Following last month's Proton 4.2 for Steam Play that is derived from Wine 4.2 with many patches applied, Proton 4.2-3 has been released for the latest Windows gaming on Linux experience ahead of any Easter weekend gaming time...

13:07

Idiot admits destroying scores of college PCs using USB Killer gizmo, filming himself doing it [The Register]

MBA grad faces hefty fine, jail time after zapping computer, display, equipment mobos

A former student at a $32,000-a-year private New York college pleaded guilty this week to destroying 66 computers on its campus.…

12:31

Running Intel MKL-DNN On 2 x Xeon Platinum 8280 CPUs With GCC 9 "Cascadelake" Tuning [Phoronix]

For those wondering about Intel's MKL-DNN "Math Kernel Library for Deep Neural Networks" performance on Cascade Lake, here are some reference benchmarks using the dual Xeon Platinum 8280 setup including when using the GCC 9 compiler for building this Intel open-source library and employing the "cascadelake" compiler tuning...

12:23

Who's using Mueller Report Day to bury bad news? If you guessed Facebook, you're right: Millions more passwords stored in plaintext [The Register]

Wham, bam, gee thanks, Instagram

While journalists and netizens are distracted digesting the redacted 400-plus-page Mueller report, released within the past few hours, today will be a good day for spin doctors to bury bad news.…

11:38

Ubuntu 19.10 To Be The Eoan ________ [Phoronix]

With Ubuntu 19.04 out the door, it's time to kick off Ubuntu 19.10 as the next six-month installment of Ubuntu Linux and the last before Ubuntu 20.04 as the next LTS release...

11:04

Canadian woman fined for not holding escalator handrail finally reaches the top after 10 years [The Register]

Top court, that is – she coped fine with the escalator

A Canadian woman fined for failing to hold on to an escalator handrail in 2009 has finally reached the Supreme Court in her search for justice.…

10:01

Mozilla "WebThings" No Longer An Experiment [Phoronix]

Mozilla WebThings is what was formerly known as "Project Things" while serving as an experiment around a platform for IoT devices on the web...

09:57

Cloud Atlas: Huawei's homegrown AI hardware hits shelves. Oh, and it's working on DNA storage [The Register]

Machine learning chips for everyone and everything

Chinese IT leviathan Huawei has launched a range of hardware for machine learning applications based on its own specialised silicon.…

09:37

KDE Applications 19.04 Released With Many Dolphin Improvements, Better KMail & Konsole [Phoronix]

KDE Applications 19.04 is now officially out as the first update of 2019 for this collection of prominent KDE desktop programs...

09:26

BBM is dead, long live BBMe: Encrypted chat plat opened up to all as consumer version burns [The Register]

BlackBerry throws lifebelt to marooned users

BlackBerry has said it will open up its BBM Enterprise encrypted chat service to all-comers as the consumer version nears death.…

08:37

Speak your brains on AI platforms: They have been hyped to death... but what's your practical reality? [The Register]

Is manufacturing proving ground for mainstream solutions?

Reader Study  We're all getting a bit fed up with marketeers who tag pretty much anything they can with "AI-enabled" or "powered by AI". But we also know that AI is more than just pure hype – yes, it's a bandwagon, but it can also be both a fundamental technology shift and a deep operational transformation.…

07:29

Ubuntu 19.04 Released As A Big Linux Desktop Improvement Thanks To GNOME 3.32 [Phoronix]

The Ubuntu 19.04 "Disco Dingo" has been officially released as the latest non-LTS, six-month installment to Ubuntu Linux...

07:23

Saturday Morning Breakfast Cereal - Thief [Saturday Morning Breakfast Cereal]



Click here to go see the bonus panel!

Hovertext:
As you read this, are you entirely sure you're not currently on fire?


Today's News:

07:00

DevOps grandpa Electric Cloud absorbed into youthful CloudBees [The Register]

Industry veteran to teach Jenkins-flinger new tricks

CloudBees, DevOps darling and spiritual home of the Jenkins platform, has been on a bit of a spending spree, picking up release orchestration outfit Electric Cloud.…

06:45

Ubuntu 19.04 Radeon Linux Gaming Performance: Popular Desktops Benchmarked, Wayland vs. X.Org [Phoronix]

Leading up to the Ubuntu 19.04 release, several premium supporters requested fresh results for seeing the X.Org vs. Wayland performance overhead for gaming, how GNOME Shell vs. KDE Plasma is performing for current AMD Linux gaming, and related desktop comparison graphics/gaming metrics. Here are such benchmarks run from the Ubuntu 19.04 "Disco Dingo" while benchmarking GNOME Shell both with X.Org and Wayland, Xfce, MATE, Budgie, KDE Plasma, LXQt, and Openbox.

06:31

Facebook: Yeah, we hoovered up 1.5 million email address books without permission. But it was an accident! [The Register]

So that's all OK then

Facebook has admitted to harvesting email contacts from 1.5 million people without permission.…

06:26

Stable Steam Client Gets Vulkan Pipeline Collection, Better NTFS, Steam Play Fixes [Phoronix]

On Wednesday night Valve issued their latest stable Steam client update and carries much of the work we've seen out of their recent beta releases...

06:07

So how'd this go again... A sea goddess told you in a dream to run for president of Taiwan? OK, Mr Foxconn boss [The Register]

Founder Terry Gou steps down for new life in political limelight

The boss of Taiwanese manufacturer Foxconn is stepping down in order to run in upcoming presidential elections in Taiwan.…

05:31

Yes, I may have advised 'some' investors to flog their Autonomy shares, analyst tells High Court [The Register]

Plus: Other market-watcher 'unaware' of firm's hardware sales

Autonomy Trial  A City analyst was accused of being "seriously unethical" after selectively telling investors in Autonomy to sell their stocks in the firm, London's High Court heard earlier this week.…

05:00

Landowners are earning millions for carbon cuts that may not occur [Top News - MIT Technology Review]

A new analysis finds California’s cap-and-trade program may vastly overestimate emissions reductions.

04:26

More Icelake Graphics Fixes Are On The Way With The Linux 5.2 Kernel [Phoronix]

Intel's open-source developers sent in another pull request this morning to DRM-Next of additional feature material they are planning on having in the upcoming Linux 5.2 kernel...

04:22

Server at web host 1&1 Ionos decides to take unscheduled day off, sinks a bunch of sites [The Register]

Meanwhile, customers complain of complete comms shutdown

Updated  Customers of web host 1&1 Ionos are complaining of a lack of communication after the company suffered a day-long server outage that pulled some websites offline.…

04:12

Xubuntu 19.04 Is Ready With To Provide Its Updated Lightweight Xfce Desktop Experience [Phoronix]

While it may not seem like a big release with Xfce 4.14 having yet to materialize, the Xubuntu developers have been doing a fine job providing a nice upgrade with Xubuntu 19.04 for those appreciating a lightweight, GTK-based desktop environment built around Ubuntu...

04:08

Huawei thanks US for 'raising 5G awareness' by banning telecom kit giant's wares [The Register]

It's like talking to my children, sighs marketing bigwig

Huawei top brass took to the stage in Shenzhen this week to insist that everything was fine and dandy in the company's world, despite the shrieking from US lawmakers.…

03:55

OpenSSH 8.0 Released - Addresses SCP Vulnerability, New SSH Additions [Phoronix]

Theo de Raadt and the OpenBSD developers maintaining OpenSSH today unveiled OpenSSH 8.0...

03:38

SQLite 3.28 Released With More Feature Additions, Performance Enhancements [Phoronix]

SQLite 3.28 is now the latest version of this widely-used, embed-friendly cross-platform database library...

03:37

Disco Dingo fever: Ubuntu 19.04 has an infrastructure bent, snappier GNOME and another stupid name [The Register]

New Linux kernel, new build

Pull on those flares and perch atop your most precipitous platforms – Canonical has emitted Ubuntu 19.04, aka "Disco Dingo", with its sights set firmly on infrastructure.…

03:22

We can help you get on top of DevOps, CI/CD and containers, all in one month's time... [The Register]

Just weeks to go until Continuous Lifecycle London 2019 opens its doors

Events  We’ll be opening the doors at Continuous Lifecycle in less than one month, and we really want you to join us to discuss containers, DevOps, Continuous Delivery and much, much more.…

02:03

Google hits brand slam stamping AMP with more crypto glam [The Register]

All your URLs are belong to us

On Tuesday Google renovated its Accelerated Mobile Pages (AMP) web publishing format, making it more secure with less Chocolate Factory branding – a change certain to be welcomed by publishers committed to AMP.…

01:04

Microsoft debuts Bosque – a new programming language with no loops, inspired by TypeScript [The Register]

Here's that regularized programming you wanted. Bish, bash, er, Bosque

Interview  Microsoft Research has introduced a new open source programming language called Bosque that aspires to be simple and easy to understand by embracing algebraic operations and shunning techniques that create complexity.…

00:04

Surprising absolutely no one at all, Samsung's folding-screen phones knackered within days [The Register]

Breaking news: Hacks hacked off by Galaxy Fold fail (at least the mobes haven't caught fire)

Updated  Samsung’s space-age Galaxy Fold smartphones, which you can fold in half to pop in your pocket, are cracking up after just a few days of use.…

Wednesday, 17 April

22:07

GLAMOR Sees More Improvements For What Will Eventually Be X.Org Server 1.21 [Phoronix]

We haven't been seeing as much GLAMOR activity these days but then again the pace of X.Org Server development has certainly slowed up in recent years. GLAMOR as a reminder allows for X.Org Server 2D acceleration to happen in a generic manner via OpenGL / GLES and has been a common area for improvement...

18:58

Hey criminals, need a getaway vehicle? There's an app for that... Car share tool halts ops amid crime wave, arrests [The Register]

You wouldn't download a car – oh actually...

The maker of a car-hire smartphone app has temporarily halted its service in Chicago after dozens of its vehicles were stolen.…

18:14

Cisco whispers the three little words to really get an ASR 9000 net admin's blood pumping: Remote unauthenticated access [The Register]

Critical patch available now for those with vulnerable kit

Cisco has issued a security patch for a flaw in some of its routers that can be exploited by miscreants to potentially rifle through telecommunications networks.…

18:00

GNOME Shell & Mutter 3.32.1 Released With Many Fixes [Phoronix]

While missing the GNOME 3.32.1 point release that shipped last week, GNOME Shell and Mutter today experienced their 3.32.1 updates with a variety of fixes...

17:30

Valgrind 3.15 Released With Overhauled DHAT Profiler [Phoronix]

Valgrind 3.15 has been released, the programming utility famous for catching memory leaks and helping with memory debugging/profiling...

17:25

Insane in the domain: Sea Turtle hackers pwn DNS orgs to dash web surfers on the rocks of phishing pages [The Register]

Website settings altered to point visitors to malicious clones

Internet domain registrars and at least one registry were hijacked to change certain websites' DNS settings so that visitors to said sites were in fact directed to password-stealing phishing pages, researchers detailed on Wednesday.…

15:17

China Mobile, you can kiss good Pai to America: FCC to ban 'spy risk' telco from US [The Register]

Welcome to the free market as defined by right-wing politics

America's Federal Communications Commission (FCC) will block the entry of the world's largest mobile company – China Mobile – into the US market, citing security concerns.…

14:12

Microsoft president: We said no to Cali cops' face-recog tech – and we won't craft killer robots [The Register]

Why? Because biased AI is bad news for minorities

Microsoft president Brad Smith has revealed that the company turned down an order from California cops for its facial recognition technology over human rights concerns.…

14:07

ZFS On Linux 0.8.0 RC4 Up For Testing WIth TRIM, Native Encryption, Direct I/O [Phoronix]

The ZFS On Linux (ZoL) crew released version 0.8-RC4 of their Linux file-system port today as the newest pre-release for this massive feature update...

13:29

Selling data centre hardware? Prepare for pain as Gartner spies market spending shift [The Register]

IT services are in, building and upgrading your own data centres – not so much

Bean counters at Gartner have updated their forecast for IT spending in 2019, and the total remains roughly the same - $3.8tn – but the way the money is distributed is very different from the numbers projected in January.…

12:33

Enough about me, why do you hate Kaspersky so much? Revealed: Insp Clouseau-esque bid to smear critics as shills [The Register]

Please speak clearly for the tape... I mean, my ears

Interview  A gauche "spy" has made clumsy efforts to get critics of Russian antivirus biz Kaspersky Lab to incriminate themselves as shills for rival security companies.…

10:58

Supreme Court of UK gives Morrisons the go-ahead for mega data leak liability appeal [The Register]

Should companies be on the hook for criminal employees' doings?

Brit supermarket chain WM Morrisons is headed for the Supreme Court to fight an earlier ruling that made it liable for one disgruntled employee dumping the personal details of 100,000 colleagues online.…

09:47

Intel swallows Brit chip slinger Omnitek in bid to boost FPGA business [The Register]

Sure, FPGAs don't make much cash, but they might soon?

Intel is buying Omnitek, a small British FPGA design house primarily serving the media and broadcast industries.…

09:11

It's Big, it's Blue and it's down for 3Q: Whomp... there goes IBM's storage hardware revenue [The Register]

That Storwize array refresh was really needed

Analysis  IBM has posted a third sequential quarter of storage hardware revenue decline as part of its first 2019 quarter's results.…

08:37

UK watchdog slaps 'misleading' Voda ad: Gigafast... maybe so – but not for £23 [The Register]

Virgin complaint upheld

The UK's Advertising Standards Authority has slammed Brit telco Vodafone's ads for its "Gigafast Broadband" as misleading.…

08:21

Linux kernel-bypassing Quobyte plug-in goes with the TensorFlow for faster file access [The Register]

Skip it, it's a Google thing

Linux-loving hyperscale types at Euro startup Quobyte have pushed out a plug-in for its Data Centre File System, used in HPC-style workloads, that enables TensorFlow apps to access its files directly instead of having to traipse through the Linux kernel.…

07:55

Let 15 July forever be known as P-Day: When UK's smut fans started being asked for their age [The Register]

You have three months left of unfettered self-love to enjoy

Stick 15 July in your diary because the government has at last broken its silence over when the UK's age checks for online porn will come into force – thrusting legions of onanists a timeline for either their last hurrahs or how they intend to circumvent the system.…

07:51

Saturday Morning Breakfast Cereal - Coffee [Saturday Morning Breakfast Cereal]



Click here to go see the bonus panel!

Hovertext:
This comic inspired by an active misunderstanding of something Tyler Cowen wrote.


Today's News:

07:02

Why Qualcomm won – and why Tim Cook had to eat humble Apple pie [The Register]

Deadline for 5G kit was perilously close

Comment  The dramatic peace treaty between Apple and Qualcomm is good news for iPhone buyers, but raises questions about the market's ability to produce a viable competitor to the 5G leader – at least in the short term.…

06:41

Absolute mad lads are teaching physics to AI because how else will it learn to solve real-world problems (like humans) [The Register]

Can't take over the galaxy if you don't know how it works, innit?

American researchers are working to introduce the laws of physics into machine learning models to improve the way algorithms understand the real world.…

05:21

Ozzy app maker cancels hump day: We've tripled profits! scream slackers [The Register]

Wednesday off every week? OK, you have our attention

Wednesday, colloquially known as "hump day", tends to be regarded as the toughest of the working week. Furthest from the weekend in either direction, distracted eyes flit constantly clockwards in anticipation of medicinal refreshment or simply just leaving a bureaucratic hellhole.…

04:55

I've had it with these mother-fscking slaps on this mother-fscking plane: Flight fight sparks legal brouhaha over mid-air co-ords [The Register]

I slapped you in Nebraska, sunshine, not California

Special report  In the internet era where people are able to interact across wide geographic areas, the world's legal systems have struggled with the question of where an offence occurred and so where a lawsuit or criminal charges should be lodged.…

04:10

Three planets and two stars adds up to one research team made very happy by Kepler's unique discovery [The Register]

Dead telescope keeps on giving

Binary star systems are relatively rare but astroboffins poring through data from the now-defunct Kepler telescope have found something unique - a binary system with three planets.…

03:46

So, that's cheerio the nou to Dundee Satellite Receiving Station: Over 40 years of service axed for the sake of £338,000 [The Register]

Put that on the side of a bus

While the UK government has been trumpeting Blighty's ambitions in the great beyond, a little bit of Scottish satellite infrastructure will close its doors for the last time this month.…

03:05

Now, how to boost fibre throughput to a stonking 240Gbps? With frikkin' spin-lasers, of course [The Register]

Approach could one day create faster data centre interconnect

Researchers at the Ruhr-Universität Bochum in Germany have said they have developed a novel method of encoding information with lasers that could boost the amount of bandwidth sent down a strand of fibre to 240 gigabits per second.…

02:00

Managing RAID arrays with mdadm [Fedora Magazine]

Mdadm stands for Multiple Disk and Device Administration. It is a command line tool that can be used to manage software RAID arrays on your Linux PC. This article outlines the basics you need to get started with it.

The following five commands allow you to make use of mdadm’s most basic features:

  1. Create a RAID array:
    # mdadm --create /dev/md/test --homehost=any --metadata=1.0 --level=1 --raid-devices=2 /dev/sda1 /dev/sdb1
  2. Assemble (and start) a RAID array:
    # mdadm --assemble /dev/md/test /dev/sda1 /dev/sdb1
  3. Stop a RAID array:
    # mdadm --stop /dev/md/test
  4. Delete a RAID array:
    # mdadm --zero-superblock /dev/sda1 /dev/sdb1
  5. Check the status of all assembled RAID arrays:
    # cat /proc/mdstat

Notes on features

mdadm --create

The create command shown above includes the following four parameters in addition to the create parameter itself and the device names:

  1. –homehost:
    By default, mdadm stores your computer’s name as an attribute of the RAID array. If your computer name does not match the stored name, the array will not automatically assemble. This feature is useful in server clusters that share hard drives because file system corruption usually occurs if multiple servers attempt to access the same drive at the same time. The name any is reserved and disables the homehost restriction.
  2. –metadata:
    mdadm reserves a small portion of each RAID device to store information about the RAID array itself. The metadata parameter specifies the format and location of the information. The value 1.0 indicates to use version-1 formatting and store the metadata at the end of the device.
  3. –level:
    The level parameter specifies how the data should be distributed among the underlying devices. Level 1 indicates each device should contain a complete copy of all the data. This level is also known as disk mirroring.
  4. –raid-devices:
    The raid-devices parameter specifies the number of devices that will be used to create the RAID array.

By using level=1 (mirroring) in combination with metadata=1.0 (store the metadata at the end of the device), you create a RAID1 array whose underlying devices appear normal if accessed without the aid of the mdadm driver. This is useful in the case of disaster recovery, because you can access the device even if the new system doesn’t support mdadm arrays. It’s also useful in case a program needs read-only access to the underlying device before mdadm is available. For example, the UEFI firmware in a computer may need to read the bootloader from the ESP before mdadm is started.

mdadm --assemble

The assemble command above fails if a member device is missing or corrupt. To force the RAID array to assemble and start when one of its members is missing, use the following command:

# mdadm --assemble --run /dev/md/test /dev/sda1

Other important notes

Avoid writing directly to any devices that underlay a mdadm RAID1 array. That causes the devices to become out-of-sync and mdadm won’t know that they are out-of-sync. If you access a RAID1 array with a device that’s been modified out-of-band, you can cause file system corruption. If you modify a RAID1 device out-of-band and need to force the array to re-synchronize, delete the mdadm metadata from the device to be overwritten and then re-add it to the array as demonstrated below:

# mdadm --zero-superblock /dev/sdb1
# mdadm --assemble --run /dev/md/test /dev/sda1
# mdadm /dev/md/test --add /dev/sdb1

These commands completely overwrite the contents of sdb1 with the contents of sda1.

To specify any RAID arrays to automatically activate when your computer starts, create an /etc/mdadm.conf configuration file.

For the most up-to-date and detailed information, check the man pages:

$ man mdadm 
$ man mdadm.conf

The next article of this series will show a step-by-step guide on how to convert an existing single-disk Linux installation to a mirrored-disk installation, that will continue running even if one of its hard drives suddenly stops working!

Tuesday, 16 April

05:48

Saturday Morning Breakfast Cereal - Eat [Saturday Morning Breakfast Cereal]



Click here to go see the bonus panel!

Hovertext:
I feel like Taco Bell is missing an opportunity to market themselves as a source of 'rock bottom.'


Today's News:

Monday, 15 April

15:28

The Current Intel "Iris" Gallium3D OpenGL Performance Against i965 Mesa, Windows 10 OpenGL [Phoronix]

It's been quite fascinating to watch the development of the Intel Iris Gallium3D driver that has now been in development by their open-source team for more than one year while back in February is where this currently experimental driver was merged into Mesa. It's been over one month since last looking at the Intel Iris Gallium3D performance relative to Intel's default "i965" Mesa OpenGL driver. Here are fresh benchmarks looking not only at their current and next-gen OpenGL Linux driver options but also how that performance compares to their current Windows 10 OpenGL driver.

07:26

Saturday Morning Breakfast Cereal - Treadmill [Saturday Morning Breakfast Cereal]



Click here to go see the bonus panel!

Hovertext:
There should be a revized Hobbit where Bilbo convinces Smaug to deposit his gold in index funds, then use 4% of earnings to pay for deworming and prenatal vitamins in undeveloped nations.


Today's News:

If you're curious about the new book coming out in October, we got a nice early review here.

02:00

Kubernetes on Fedora IoT with k3s [Fedora Magazine]

Fedora IoT is an upcoming Fedora edition targeted at the Internet of Things. It was introduced last year on Fedora Magazine in the article How to turn on an LED with Fedora IoT. Since then, it has continued to improve together with Fedora Silverblue to provide an immutable base operating system aimed at container-focused workflows.

Kubernetes is an immensely popular container orchestration system. It is perhaps most commonly used on powerful hardware handling huge workloads. However, it can also be used on lightweight devices such as the Raspberry Pi 3. Read on to find out how.

Why Kubernetes?

While Kubernetes is all the rage in the cloud, it may not be immediately obvious to run it on a small single board computer. But there are certainly reasons for doing it. First of all it is a great way to learn and get familiar with Kubernetes without the need for expensive hardware. Second, because of its popularity, there are tons of applications that comes pre-packaged for running in Kubernetes clusters. Not to mention the large community to provide help if you ever get stuck.

Last but not least, container orchestration may actually make things easier, even at the small scale in a home lab. This may not be apparent when tackling the the learning curve, but these skills will help when dealing with any cluster in the future. It doesn’t matter if it’s a single node Raspberry Pi cluster or a large scale machine learning farm.

K3s – a lightweight Kubernetes

A “normal” installation of Kubernetes (if such a thing can be said to exist) is a bit on the heavy side for IoT. The recommendation is a minimum of 2 GB RAM per machine! However, there are plenty of alternatives, and one of the newcomers is k3s – a lightweight Kubernetes distribution.

K3s is quite special in that it has replaced etcd with SQLite for its key-value storage needs. Another thing to note is that k3s ships as a single binary instead of one per component. This diminishes the memory footprint and simplifies the installation. Thanks to the above, k3s should be able to run k3s with just 512 MB of RAM, perfect for a small single board computer!

What you will need

  1. Fedora IoT in a virtual machine or on a physical device. See the excellent getting started guide here. One machine is enough but two will allow you to test adding more nodes to the cluster.
  2. Configure the firewall to allow traffic on ports 6443 and 8472. Or simply disable it for this experiment by running “systemctl stop firewalld”.

Install k3s

Installing k3s is very easy. Simply run the installation script:

curl -sfL https://get.k3s.io | sh -

This will download, install and start up k3s. After installation, get a list of nodes from the server by running the following command:

kubectl get nodes

Note that there are several options that can be passed to the installation script through environment variables. These can be found in the documentation. And of course, there is nothing stopping you from installing k3s manually by downloading the binary directly.

While great for experimenting and learning, a single node cluster is not much of a cluster. Luckily, adding another node is no harder than setting up the first one. Just pass two environment variables to the installation script to make it find the first node and avoid running the server part of k3s

curl -sfL https://get.k3s.io | K3S_URL=https://example-url:6443 \
K3S_TOKEN=XXX sh -

The example-url above should be replaced by the IP address or fully qualified domain name of the first node. On that node the token (represented by XXX) is found in the file /var/lib/rancher/k3s/server/node-token.

Deploy some containers

Now that we have a Kubernetes cluster, what can we actually do with it? Let’s start by deploying a simple web server.

kubectl create deployment my-server --image nginx

This will create a Deployment named “my-server” from the container image “nginx” (defaulting to docker hub as registry and the latest tag). You can see the Pod created by running the following command.

kubectl get pods

In order to access the nginx server running in the pod, first expose the Deployment through a Service. The following command will create a Service with the same name as the deployment.

kubectl expose deployment my-server --port 80

The Service works as a kind of load balancer and DNS record for the Pods. For instance, when running a second Pod, we will be able to curl the nginx server just by specifying my-server (the name of the Service). See the example below for how to do this.

# Start a pod and run bash interactively in it
kubectl run debug --generator=run-pod/v1 --image=fedora -it -- bash
# Wait for the bash prompt to appear
curl my-server
# You should get the "Welcome to nginx!" page as output

Ingress controller and external IP

By default, a Service only get a ClusterIP (only accessible inside the cluster), but you can also request an external IP for the service by setting its type to LoadBalancer. However, not all applications require their own IP address. Instead, it is often possible to share one IP address among many services by routing requests based on the host header or path. You can accomplish this in Kubernetes with an Ingress, and this is what we will do. Ingresses also provide additional features such as TLS encryption of the traffic without having to modify your application.

Kubernetes needs an ingress controller to make the Ingress resources work and k3s includes Traefik for this purpose. It also includes a simple service load balancer that makes it possible to get an external IP for a Service in the cluster. The documentation describes the service like this:

k3s includes a basic service load balancer that uses available host ports. If you try to create a load balancer that listens on port 80, for example, it will try to find a free host in the cluster for port 80. If no port is available the load balancer will stay in Pending.

k3s README

The ingress controller is already exposed with this load balancer service. You can find the IP address that it is using with the following command.

$ kubectl get svc --all-namespaces
NAMESPACE NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
default kubernetes ClusterIP 10.43.0.1 443/TCP 33d
default my-server ClusterIP 10.43.174.38 80/TCP 30m
kube-system kube-dns ClusterIP 10.43.0.10 53/UDP,53/TCP,9153/TCP 33d
kube-system traefik LoadBalancer 10.43.145.104 10.0.0.8 80:31596/TCP,443:31539/TCP 33d

Look for the Service named traefik. In the above example the IP we are interested in is 10.0.0.8.

Route incoming requests

Let’s create an Ingress that routes requests to our web server based on the host header. This example uses xip.io to avoid having to set up DNS records. It works by including the IP adress as a subdomain, to use any subdomain of 10.0.0.8.xip.io to reach the IP 10.0.0.8. In other words, my-server.10.0.0.8.xip.io is used to reach the ingress controller in the cluster. You can try this right now (with your own IP instead of 10.0.0.8). Without an ingress in place you should reach the “default backend” which is just a page showing “404 page not found”.

We can tell the ingress controller to route requests to our web server Service with the following Ingress.

apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: my-server
spec:
rules:
- host: my-server.10.0.0.8.xip.io
http:
paths:
- path: /
backend:
serviceName: my-server
servicePort: 80

Save the above snippet in a file named my-ingress.yaml and add it to the cluster by running this command:

kubectl apply -f my-ingress.yaml

You should now be able to reach the default nginx welcoming page on the fully qualified domain name you chose. In my example this would be my-server.10.0.0.8.xip.io. The ingress controller is routing the requests based on the information in the Ingress. A request to my-server.10.0.0.8.xip.io will be routed to the Service and port defined as backend in the Ingress (my-server and 80 in this case).

What about IoT then?

Imagine the following scenario. You have dozens of devices spread out around your home or farm. It is a heterogeneous collection of IoT devices with various hardware capabilities, sensors and actuators. Maybe some of them have cameras, weather or light sensors. Others may be hooked up to control the ventilation, lights, blinds or blink LEDs.

In this scenario, you want to gather data from all the sensors, maybe process and analyze it before you finally use it to make decisions and control the actuators. In addition to this, you may want to visualize what’s going on by setting up a dashboard. So how can Kubernetes help us manage something like this? How can we make sure that Pods run on suitable devices?

The simple answer is labels. You can label the nodes according to capabilities, like this:

kubectl label nodes <node-name> <label-key>=<label-value>
# Example
kubectl label nodes node2 camera=available

Once they are labeled, it is easy to select suitable nodes for your workload with nodeSelectors. The final piece to the puzzle, if you want to run your Pods on all suitable nodes is to use DaemonSets instead of Deployments. In other words, create one DaemonSet for each data collecting application that uses some unique sensor and use nodeSelectors to make sure they only run on nodes with the proper hardware.

The service discovery feature that allows Pods to find each other simply by Service name makes it quite easy to handle these kinds of distributed systems. You don’t need to know or configure IP addresses or custom ports for the applications. Instead, they can easily find each other through named Services in the cluster.

Utilize spare resources

With the cluster up and running, collecting data and controlling your lights and climate control you may feel that you are finished. However, there are still plenty of compute resources in the cluster that could be used for other projects. This is where Kubernetes really shines.

You shouldn’t have to worry about where exactly those resources are or calculate if there is enough memory to fit an extra application here or there. This is exactly what orchestration solves! You can easily deploy more applications in the cluster and let Kubernetes figure out where (or if) they will fit.

Why not run your own NextCloud instance? Or maybe gitea? You could also set up a CI/CD pipeline for all those IoT containers. After all, why would you build and cross compile them on your main computer if you can do it natively in the cluster?

The point here is that Kubernetes makes it easier to make use of the “hidden” resources that you often end up with otherwise. Kubernetes handles scheduling of Pods in the cluster based on available resources and fault tolerance so that you don’t have to. However, in order to help Kubernetes make reasonable decisions you should definitely add resource requests to your workloads.

Summary

While Kubernetes, or container orchestration in general, may not usually be associated with IoT, it certainly makes a lot of sense to have an orchestrator when you are dealing with distributed systems. Not only does is allow you to handle a diverse and heterogeneous fleet of devices in a unified way, but it also simplifies communication between them. In addition, Kubernetes makes it easier to utilize spare resources.

Container technology made it possible to build applications that could “run anywhere”. Now Kubernetes makes it easier to manage the “anywhere” part. And as an immutable base to build it all on, we have Fedora IoT.

Sunday, 14 April

07:45

Saturday Morning Breakfast Cereal - Kent [Saturday Morning Breakfast Cereal]



Click here to go see the bonus panel!

Hovertext:
I mean, how do we know Superman has only one secret identity?


Today's News:

Saturday, 13 April

07:38

Saturday Morning Breakfast Cereal - Chirugeon [Saturday Morning Breakfast Cereal]



Click here to go see the bonus panel!

Hovertext:
Hollywood. Please. I promise the joke won't get old until about 6 minutes into the show.


Today's News:

Friday, 12 April

08:37

Saturday Morning Breakfast Cereal - P [Saturday Morning Breakfast Cereal]



Click here to go see the bonus panel!

Hovertext:
You shall always know pain in bin berthing!


Today's News:

02:00

Joe Doss: How Do You Fedora? [Fedora Magazine]

We recently interviewed Joe Doss on how he uses Fedora. This is part of a series on the Fedora Magazine. The series profiles Fedora users and how they use Fedora to get things done. Contact us on the feedback form to express your interest in becoming a interviewee.

Who is Joe Doss?

Joe Doss lives in Chicago, Illinois USA and his favorite food is pizza. He is the Director of Engineering Operations and Kenna Security, Inc. Doss describes his employer this way: “Kenna uses data science to help enterprises combine their infrastructure and application vulnerability data with exploit intelligence to measure risk, predict attacks and prioritize remediation.”

His first Linux distribution was Red Hat Linux 5. A friend of his showed him a computer that wasn’t running Windows. Doss thought it was just a program to install on Windows when his friend gave him a Red Hat Linux 5 install disk. “I proceeded to install this Linux ‘program’ on my Father’s PC,” he says. Luckily for Doss, his father supported his interest in computers. “I ended up totally wiping out the Windows 95 install as a result and this was how I got my first computer.”

At Kenna, Doss’ group makes use of Fedora and Ansible: “We run Fedora Cloud in multiple VPC deployments in AWS and Google Compute with over 200 virtual machines. We use Ansible to automate everything we do with Fedora.”

Doss brews beer at home and contributes to open source in his free time. He also has a cat named Tibby. “I rescued Tibby off the street the Hyde Park neighborhood of Chicago when she was 7 months old. She is not very smart, but she makes up for that with cuteness.” His favorite place to visit is his childhood home of Michigan, but Doss says, “anywhere with a warm beach, a cool drink, and the ocean is pretty nice too.”

Tibby the cute cat!

The Fedora community

Doss became involved with Fedora and the Fedora community through his job at Kenna Security. When he first joined the company they were using Ubuntu and Chef in production. There was a desire to make the infrastructure more reproducible and reliable, and he says, “I was able to greenfield our deployments with Fedora Cloud and Ansible.” This project got him involved in the Fedora Cloud release.

When asked about his first impression of the Fedora community, Doss said, “Overwhelming to be honest. There is so much going on and it is hard to figure out who are the stakeholders of each part of Fedora.” Once he figured out who he needed to talk to he found the community very welcoming and super supportive.

One of the ideas he had to improve the community was to unite the various projects and team under on bug tracking tool and community resource. “Pagure, Bugzilla, Github, Fedora Forums, Discourse Forums, Mailing lists… it is all over the place and hard to navigate at first.” Despite the initial complexity of becoming familiar with the Fedora Project, Doss feels it is amazingly rewarding to be involved. “It feels awesome it to be apart of a Linux distro that impacts so many people in very positive ways. You can make a difference.”

Doss called out Dusty Mabe at Red Hat for helping him become involved, saying Dusty “has been an amazing mentor and resource for enabling me to contribute back to Fedora.”

Doss has an interesting way of explaining to non-technical friends what he does. “Imagine changing the tires on a very large bus while it is going down the highway at 70 MPH and sometimes you need to get involved with the tire manufacturer to help make this process work well.” This metaphor helps people understand what replacing 200-plus VMs across more than five production VPCs in AWS and Google Compute with every Fedora release.

Doss drew my attention to one specific incident with Fedora 29 and Vagrant. “Recently we encountered an issue where Vagrant wouldn’t set the hostname on a Fresh Fedora 29 Beta VM. This was due to Fedora 29 Cloud no longer shipping the network service stub in favor of NetworkManager. This led to me working with a colleague at Kenna Security to send a patch upstream to the Vagrant project to help their developers produce a fix for Fedora 29. Vagrant usage with Fedora is a very large part of our development cycle at Kenna, and having this broken before the Fedora 29 release would have impacted us a lot.” As Doss said, “Sometimes you need to help make the tires before they go on the bus.”

Doss is the COPR Fedora, RHEL, and CentOS package maintainer for WireGuard VPN. “The CentOS repo just went over 60 thousand downloads last month which is pretty awesome.”

What Hardware?

Doss uses Fedora 29 cloud in the over five VPC deployments in AWS and Google computer. At home he has a SuperMicro SYS-5019A-FTN4 1U Server that runs Fedora 29 Server with Openshift OKD installed on it. His laptops are all Lenovo. “For Laptops I use a ThinkPad T460s for work and a ThinkPad 25 at home. Both have Fedora 29 installed. ThinkPads are the best with Fedora.”

What Software?

Doss used GNOME 3 as his preferred desktop on Fedora Workstation. “I use Sublime Text 3 for my text editor on the desktop or vim on servers.” For development and testing he uses Vagrant. “Ansible is what I use for any kind of automation with Fedora. I maintain an Ansible playbook for setting up my workstation.”

Ansible

I asked Doss if he had advice for people trying to learn Ansible.

“Start small. Automate the stuff that makes your life easier, but don’t over complicate it. Ansible Galaxy is a great resource to get things done quickly, but if you truly want to learn how to use Ansible, writing your own roles and playbooks the path I would take.

“I have helped a lot of my coworkers that have joined my Operations team at Kenna get up to speed on using Ansible by buying them a copy of Ansible for Devops by Jeff Geerling. This book will give anyone new to Ansible the foundation they need to start using it everyday. #ansible on Freenode is a great resource as well along with the official Ansible docs.”

Doss also said, “Knowing what to automate is most likely the most difficult thing to master without over complicating things. Debugging complex playbooks and roles is a close second.”

Home lab

He recommended setting up a home lab. “At Kenna and at home I use Vagrant with the Vagrant-libvirt plugin for developing Ansible roles and playbooks. You can iterate quickly to build your roles and playbooks on your laptop with your favorite editor and run vagrant provision to run your playbook. Quick feedback loop and the ability to burn down your Vagrant VM and start over quickly is an amazing workflow. Below is a sample Vagrant file that I keep handy to spin up a Fedora VM to test my playbooks.”

-- mode: ruby --
vi: set ft=ruby :
Vagrant.configure(2) do |config|
config.vm.provision "shell", inline: "dnf install nfs-utils rpcbind @development-tools @ansible-node redhat-rpm-config gcc-c++ -y"
config.ssh.forward_agent = true
config.vm.define "f29", autostart: false do |f29|
f29.vm.box = "fedora/29-cloud-base"
f29.vm.hostname = "f29.example.com"
f29.vm.provider "libvirt" do |vm|
vm.memory = 2048
vm.cpus = 2
vm.driver = "kvm"
vm.nic_model_type = "e1000"
end
config.vm.synced_folder '.', '/vagrant', disabled: true

config.vm.provision "ansible" do |ansible|
ansible.groups = {
}
ansible.playbook = "playbooks/main.yml"
ansible.inventory_path = "inventory/development"
ansible.extra_vars = {
ansible_python_interpreter: "/usr/bin/python3"
}
# ansible.verbose = 'vvv' end
end
end

Thursday, 11 April

09:20

Saturday Morning Breakfast Cereal - Silent [Saturday Morning Breakfast Cereal]



Click here to go see the bonus panel!

Hovertext:
This comic book directly inspired by something Gretchen McCulloch said.


Today's News:

Wednesday, 10 April

05:57

Saturday Morning Breakfast Cereal - Apple [Saturday Morning Breakfast Cereal]



Click here to go see the bonus panel!

Hovertext:
Finally I will corner the market for apple breeding humor.


Today's News:

02:00

Managing Partitions with sgdisk [Fedora Magazine]

Roderick W. Smith‘s sgdisk command can be used to manage the partitioning of your hard disk drive from the command line. The basics that you need to get started with it are demonstrated below.

The following six parameters are all that you need to know to make use of sgdisk’s most basic features:

  1. -p
    Print the partition table:
    # sgdisk -p /dev/sda
  2. -d x
    Delete partition x:
    # sgdisk -d 1 /dev/sda
  3. -n x:y:z
    Create a new partition numbered x, starting at y and ending at z:
    # sgdisk -n 1:1MiB:2MiB /dev/sda
  4. -c x:y
    Change the name of partition x to y:
    # sgdisk -c 1:grub /dev/sda
  5. -t x:y
    Change the type of partition x to y:
    # sgdisk -t 1:ef02 /dev/sda
  6. –list-types
    List the partition type codes:
    # sgdisk --list-types

The SGDisk Command

As you can see in the above examples, most of the commands require that the device file name of the hard disk drive to operate on be specified as the last parameter.

The parameters shown above can be combined so that you can completely define a partition with a single run of the sgdisk command:

# sgdisk -n 1:1MiB:2MiB -t 1:ef02 -c 1:grub /dev/sda

Relative values can be specified for some fields by prefixing the value with a + or symbol. If you use a relative value, sgdisk will do the math for you. For example, the above example could be written as:

# sgdisk -n 1:1MiB:+1MiB -t 1:ef02 -c 1:grub /dev/sda

The value 0 has a special-case meaning for several of the fields:

  • In the partition number field, 0 indicates that the next available number should be used (numbering starts at 1).
  • In the starting address field, 0 indicates that the start of the largest available block of free space should be used. Some space at the start of the hard drive is always reserved for the partition table itself.
  • In the ending address field, 0 indicates that the end of the largest available block of free space should be used.

By using 0 and relative values in the appropriate fields, you can create a series of partitions without having to pre-calculate any absolute values. For example, the following sequence of sgdisk commands would create all the basic partitions that are needed for a typical Linux installation if in run sequence against a blank hard drive:

# sgdisk -n 0:0:+1MiB -t 0:ef02 -c 0:grub /dev/sda
# sgdisk -n 0:0:+1GiB -t 0:ea00 -c 0:boot /dev/sda
# sgdisk -n 0:0:+4GiB -t 0:8200 -c 0:swap /dev/sda
# sgdisk -n 0:0:0 -t 0:8300 -c 0:root /dev/sda

The above example shows how to partition a hard disk for a BIOS-based computer. The grub partition is not needed on a UEFI-based computer. Because sgdisk is calculating all the absolute values for you in the above example, you can just skip running the first command on a UEFI-based computer and the remaining commands can be run without modification. Likewise, you could skip creating the swap partition and the remaining commands would not need to be modified.

There is also a short-cut for deleting all the partitions from a hard disk with a single command:

# sgdisk --zap-all /dev/sda

For the most up-to-date and detailed information, check the man page:

$ man sgdisk

Tuesday, 09 April

07:10

Saturday Morning Breakfast Cereal - Electric [Saturday Morning Breakfast Cereal]



Click here to go see the bonus panel!

Hovertext:
Really though, it's a cool emerging field! Go to google!


Today's News:

Thanks for all your support, geeks. I know it's a touchy topic, and as I said, there are probably parts that'll irritate just about any reader. But, if we can shift the conversation even a little, it would mean so much to so many millions. 


We have more information here, and we'll be publicly releasing some digital rewards soon. 


Thanks,

Zach

Monday, 08 April

06:55

Saturday Morning Breakfast Cereal - Open Borders [Saturday Morning Breakfast Cereal]



Click here to go see the bonus panel!

Hovertext:
Thanks for reading, geeks. If you *do* plan to buy this at any point, it'd really help us if you buy today, since Amazon's algorithms care about speed of purchase. Thanks!


Today's News:

Thanks for reading, geeks. If you want more information on the book, or the chance to get nifty digital rewards, please go here.

06:49

InitRAMFS, Dracut, and the Dracut Emergency Shell [Fedora Magazine]

The Linux startup process goes through several stages before reaching the final graphical or multi-user target. The initramfs stage occurs just before the root file system is mounted. Dracut is a tool that is used to manage the initramfs. The dracut emergency shell is an interactive mode that can be initiated while the initramfs is loaded.

This article will show how to use the dracut command to modify the initramfs. Some basic troubleshooting commands that can be run from the dracut emergency shell will also be demonstrated.

The InitRAMFS

Initramfs stands for Initial Random-Access Memory File System. On modern Linux systems, it is typically stored in a file under the /boot directory. The kernel version for which it was built will be included in the file name. A new initramfs is generated every time a new kernel is installed.

A Linux Boot Directory

By default, Fedora keeps the previous two versions of the kernel and its associated initramfs. This default can be changed by modifying the value of the installonly_limit setting the /etc/dnf/dnf.conf file.

You can use the lsinitrd command to list the contents of your initramfs archive:

The LsInitRD Command

The above screenshot shows that my initramfs archive contains the nouveau GPU driver. The modinfo command tells me that the nouveau driver supports several models of NVIDIA video cards. The lspci command shows that there is an NVIDIA GeForce video card in my computer’s PCI slot. There are also several basic Unix commands included in the archive such as cat and cp.

By default, the initramfs archive only includes the drivers that are needed for your specific computer. This allows the archive to be smaller and decreases the time that it takes for your computer to boot.

The Dracut Command

The dracut command can be used to modify the contents of your initramfs. For example, if you are going to move your hard drive to a new computer, you might want to temporarily include all drivers in the initramfs to be sure that the operating system can load on the new computer. To do so, you would run the following command:

# dracut --force --no-hostonly

The force parameter tells dracut that it is OK to overwrite the existing initramfs archive. The no-hostonly parameter overrides the default behavior of including only drivers that are germane to the currently-running computer and causes dracut to instead include all drivers in the initramfs.

By default dracut operates on the initramfs for the currently-running kernel. You can use the uname command to display which version of the Linux kernel you are currently running:

$ uname -r
5.0.5-200.fc29.x86_64

Once you have your hard drive installed and running in your new computer, you can re-run the dracut command to regenerate the initramfs with only the drivers that are needed for the new computer:

# dracut --force

There are also parameters to add arbitrary drivers, dracut modules, and files to the initramfs archive. You can also create configuration files for dracut and save them under the /etc/dracut.conf.d directory so that your customizations will be automatically applied to all new initramfs archives that are generated when new kernels are installed. As always, check the man page for the details that are specific to the version of dracut you have installed on your computer:

$ man dracut

The Dracut Emergency Shell

The Dracut Emergency Shell

Sometimes something goes wrong during the initramfs stage of your computer’s boot process. When this happens, you will see “Entering emergency mode” printed to the screen followed by a shell prompt. This gives you a chance to try and fix things up manually and continue the boot process.

As a somewhat contrived example, let’s suppose that I accidentally deleted an important kernel parameter in my boot loader configuration:

# sed -i 's/ rd.lvm.lv=fedora\/root / /' /boot/grub2/grub.cfg

The next time I reboot my computer, it will seem to hang for several minutes while it is trying to find the root partition and eventually give up and drop to an emergency shell.

From the emergency shell, I can enter journalctl and then use the Space key to page down though the startup logs. Near the end of the log I see a warning that reads “/dev/mapper/fedora-root does not exist”. I can then use the ls command to find out what does exist:

# ls /dev/mapper
control  fedora-swap

Hmm, the fedora-root LVM volume appears to be missing. Let’s see what I can find with the lvm command:

# lvm lvscan
  ACTIVE            '/dev/fedora/swap' [3.85 GiB] inherit
  inactive          '/dev/fedora/home' [22.85 GiB] inherit
  inactive          '/dev/fedora/root' [46.80 GiB] inherit

Ah ha! There’s my root partition. It’s just inactive. All I need to do is activate it and exit the emergency shell to continue the boot process:

# lvm lvchange -a y fedora/root
# exit

The Fedora Login Screen

The above example only demonstrates the basic concept. You can check the troubleshooting section of the dracut guide for a few more examples.

It is possible to access the dracut emergency shell manually by adding the rd.break parameter to your kernel command line. This can be useful if you need to access your files before any system services have been started.

Check the dracut.kernel man page for details about what kernel options your version of dracut supports:

$ man dracut.kernel

06:47

Saturday Morning Breakfast Cereal - Hell [Saturday Morning Breakfast Cereal]



Click here to go see the bonus panel!

Hovertext:
Basically, it's just Satan reading me my own comic for eternity.


Today's News:

Check out our new book!

Sunday, 07 April

06:53

Saturday Morning Breakfast Cereal - Intelligence [Saturday Morning Breakfast Cereal]



Click here to go see the bonus panel!

Hovertext:
Boy, I hope these kids get home some day.


Today's News:

Big announcement!

Saturday, 06 April

07:20

Saturday Morning Breakfast Cereal - Unsubscribe [Saturday Morning Breakfast Cereal]



Click here to go see the bonus panel!

Hovertext:
Well at least subscribe to my newsletter about great opportunities for fairly good sex.


Today's News:

Stay tuned economic policy dorks!

Friday, 05 April

11:31

Saturday Morning Breakfast Cereal - Dream [Saturday Morning Breakfast Cereal]



Click here to go see the bonus panel!

Hovertext:
No human is inherently evil. Two or more humans, on the other hand...


Today's News:

New, highly controversial, book launches Monday. Wish me luck!

11:15

Facebook’s ad-serving algorithm discriminates by gender and race [Top News - MIT Technology Review]

Even if an advertiser is well-intentioned, the algorithm still prefers certain groups of people over others.

02:00

Command line quick tips: Cutting content out of files [Fedora Magazine]

The Fedora distribution is a full featured operating system with an excellent graphical desktop environment. A user can point and click their way through just about any typical task easily. All of this wonderful ease of use masks the details of a powerful command line under the hood. This article is part of a series that shows you some common command line utilities. So let’s drop into the shell, and have a look at cut.

Often when you work in the command line, you are working with text files. Sometimes these files may be quite long. Reading them in their entirety, while feasible, can be time consuming and prone to errors. In this installment you’ll learn how to extract content from text files, and get the information you want from them.

It’s important to recognize that there are many ways to accomplish similar command line tasks in Fedora. The Fedora repositories include entire language systems for parsing and working with text, as an example. Also, there are multiple command line utilities available for just about any purpose conceivable in the shell. This article will only focus on using a few of those utility choices, to extract some information from a file and present it in a readable format.

Making the cut

To illustrate this example use a standard sizable file on the system like /etc/passwd. As seen in a prior article in this series, you can execute the cat command to view an entire file:

$ cat /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
...

This file contains information on all accounts present on the system. It has a specific format:

name:password:user-id:group-id:comment:home-directory:shell

Imagine that you want to simply have a list of all the account names on the system. If you could only cut out the name value from each line. This is where the cut command comes in handy! This command treats any input one line at a time, and extracts a specific part of the line.

The cut command provides options for selecting parts of a line differently, and in this example two of them are needed, -d which is an option to specify a delimiter type to use, and -f which is an option to specify which field of the line to cut. The -d option lets you declare the delimiter that separates values in a line. In this case a colon (:) is used to separate values. The -f option lets you choose which field value or values to extract. So for this example the command entered would be:

$ cut -d: -f1 /etc/passwd
root
bin
daemon
adm
...

That’s great, it worked! But you get the printout to the standard output, which in a terminal session at least means the screen. What if you needed the information for another task to be done later? It would be really nice if there was a way to put the output of the cut command into a text file to save it. There is an easy builtin shell function for such a task, the redirect function (>).

$ cut -d: -f1 /etc/passwd > names.txt

This will place the output of cut into a file called names.txt and you can check the contents with cat:

$ cat names.txt
root
bin
daemon
adm
...

With two commands and one shell function, it was easy to identify using cat, extract using cut, and redirect the extracted information from one file, saving it to another file for later use.


Photo by Joel Mbugua on Unsplash.

Thursday, 04 April

07:09

Saturday Morning Breakfast Cereal - Dogs [Saturday Morning Breakfast Cereal]



Click here to go see the bonus panel!

Hovertext:
I will never get tired of hating on cheap pet jokes. Never.


Today's News:

Wednesday, 03 April

07:31

Saturday Morning Breakfast Cereal - Snake [Saturday Morning Breakfast Cereal]



Click here to go see the bonus panel!

Hovertext:
Did Eve eat the whole apple? Like, seeds and all? If not, I feel like we shouldn't be on the hook for all these curses.


Today's News:

Thank you MIT for a wonderful, wonderful evening. 


We'll be returning next year to both MIT and London. If you're interested in submitting a proposal, sign up for our mailing list here.


Thanks!

02:00

How to rebase to Fedora 30 Beta on Silverblue [Fedora Magazine]

Silverblue is an operating system for your desktop built on Fedora. It’s excellent for daily use, development, and container-based workflows. It offers numerous advantages such as being able to roll back in case of any problems. If you want to test Fedora 30 on your Silverblue system, this article tells you how. It not only shows you what to do, but also how to revert back if anything unforeseen happens.

Switching to Fedora 30 branch

Switching to Fedora 30 on Silverblue is easy. First, check if the 30 branch is available, which should be true now:

ostree remote refs fedora-workstation

You should see the following in the output:

fedora-workstation:fedora/30/x86_64/silverblue

Next, import the GPG key for the Fedora 30 branch. Without this step, you won’t be able to rebase.

sudo ostree remote gpg-import fedora-workstation -k /etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-30-primary

Next, rebase your system to the Fedora 30 branch.

rpm-ostree rebase fedora-workstation:fedora/30/x86_64/silverblue

Finally, the last thing to do is restart your computer and boot to Fedora 30.

How to revert things back

Remember that Fedora 30’s still in beta testing phase, so there could still be some issues. If anything bad happens — for instance, if you can’t boot to Fedora 30 at all — it’s easy to go back. Just pick the previous entry in GRUB, and your system will start in its previous state before switching to Fedora 30. To make this change permanent, use the following command:

rpm-ostree rollback

That’s it. Now you know how to rebase to Fedora 30 and back. So why not test it today? 🙂

Tuesday, 02 April

18:00

Jira & Ansible: Scaling Jira Server Administration for the Enterprise [Yelp Engineering and Product Blog]

In 2017, Yelp had over 40 Jira administrators to allow different teams across the organization to perform administrative tasks. With lots of admins came lots of changes, which lead to our Jira environment accumulating hundreds of orphaned workflows, screens, and schemes. To solve this problem, we built a scalable solution that empowers our engineers to create Jira projects themselves using code and source control – ensuring 100% standardization across all engineering projects and making Jira easier to manage, simpler to use, and better performing. This blog post will cover Yelp's use of Ansible to manage Jira server project creation, updates,...

08:00

Announcing the release of Fedora 30 Beta [Fedora Magazine]

The Fedora Project is pleased to announce the immediate availability of Fedora 30 Beta, the next big step on our journey to the exciting Fedora 30 release.

Download the prerelease from our Get Fedora site:

Or, check out one of our popular variants, including KDE Plasma, Xfce, and other desktop environments, as well as images for ARM devices like the Raspberry Pi 2 and 3:

Beta Release Highlights

New desktop environment options

Fedora 30 Beta includes two new options for desktop environment. DeepinDE and Pantheon Desktop join GNOME, KDE Plasma, Xfce, and others as options for users to customize their Fedora experience.

DNF performance improvements

All dnf repository metadata for Fedora 30 Beta is compressed with the zchunk format in addition to xz or gzip. zchunk is a new compression format designed to allow for highly efficient deltas. When Fedora’s metadata is compressed using zchunk, dnf will download only the differences between any earlier copies of the metadata and the current version.

GNOME 3.32

Fedora 30 Workstation Beta includes GNOME 3.32, the latest version of the popular desktop environment. GNOME 3.32 features updated visual style, including the user interface, the icons, and the desktop itself. For a full list of GNOME 3.32 highlights, see the release notes.

Other updates

Fedora 30 Beta also includes updated versions of many popular packages like Golang, the Bash shell, the GNU C Library, Python, and Perl. For a full list, see the Change set on the Fedora Wiki. In addition, many Python 2 packages are removed in preparation for Python 2 end-of-life on 2020-01-01.

Testing needed

Since this is a Beta release, we expect that you may encounter bugs or missing features. To report issues encountered during testing, contact the Fedora QA team via the mailing list or in #fedora-qa on Freenode. As testing progresses, common issues are tracked on the Common F30 Bugs page.

For tips on reporting a bug effectively, read how to file a bug.

What is the Beta Release?

A Beta release is code-complete and bears a very strong resemblance to the final release. If you take the time to download and try out the Beta, you can check and make sure the things that are important to you are working. Every bug you find and report doesn’t just help you, it improves the experience of millions of Fedora users worldwide! Together, we can make Fedora rock-solid. We have a culture of coordinating new features and pushing fixes upstream as much as we can. Your feedback improves not only Fedora, but Linux and free software as a whole.

More information

For more detailed information about what’s new on Fedora 30 Beta release, you can consult the Fedora 30 Change set. It contains more technical information about the new packages and improvements shipped with this release.


Monday, 01 April

08:40

3 cool text-based email clients [Fedora Magazine]

Writing and receiving email is a big part of everyone’s daily routine and choosing an email client is usually a major decision. The Fedora OS provides a large choice of email clients and among these are text-based email applications.

Mutt

Mutt is probably one of the most popular text-based email clients. It supports all the common features that one would expect from an email client. Color coding, mail threading, POP3, and IMAP are all supported by Mutt. But one of its best features is it’s highly configurable. Indeed, the user can easily change the keybindings, and create macros to adapt the tool to a particular workflow.

To give Mutt a try, install it using sudo and dnf:

$ sudo dnf install mutt

To help newcomers get started, Mutt has a very comprehensive wiki full of macro examples and configuration tricks.

Alpine

Alpine is also among the most popular text-based email clients. It’s more beginner friendly than Mutt, and you can configure most of Alpine via the application itself — no need to edit a configuration file. One powerful feature of Alpine is the ability to score emails. This is particularly interesting for users that are registered to a high volume mailing list like Fedora’s devel list. Using scores, Alpine can sort the email based on the user’s interests, showing emails with a high score first.

Alpine is also available to install from Fedora’s repository using dnf.

 $ sudo dnf install alpine

While using Alpine, you can easily access the documentation by pressing the Ctrl+G key combination.

nmh

nmh (new Mail Handling) follows the UNIX tools philosophy. It provides a collection of single purpose programs to send, receive, save, retrieve, and manipulate e-mail messages. This lets you swap the nmh command with other programs, or create scripts around nmh to create more customized tools. For example, you can use Mutt with nmh.

nmh can be easily installed using dnf.

$ sudo dnf install nmh

To learn more about nmh and mail handling in general you can read this GPL licenced book.

Sunday, 31 March

Saturday, 30 March

Friday, 29 March

06:28

A Message in a Bottle – from the Mer Project [Jolla Blog]

I am pleased to announce a significant change in Mer and Sailfish OS which will be implemented in phases. As many of you know Mer began many years ago as a way for the community to demonstrate “working in the open” to Nokia. This succeeded well enough that Mer eventually closed down and shifted support to MeeGo. When MeeGo stopped – thanks to its open nature – we, Carsten Munk and I, were able to reincarnate Mer as an open community project and continue to develop a core OS and a suite of open development tools around it. Over time a number of organisations used the Mer core as a base for their work. However, there was one that stood out: Jolla with Sailfish OS which started to use Mer core in its core and they have been by far the most consistent contributors and supporters of Mer.

Once again, Mer has served it’s purpose and can retire. To clarify that this will be the official ‘working in the open’ core of SailfishOS we’re going to gradually merge merproject.org and sailfishos.org.

 

What will this mean in practice?

I’d like to just say that the colours of the websites will change and we’ll be able to access the existing resources using new sailfishos.org links.

So whilst that summary is true, actually it’s more complex than that! Yes, the same hardware will run the same services and Jolla’s sailors will continue to push code to the same systems. There will be more time to keep the servers updated and to improve community contribution mechanisms.

However, there are a couple of areas we need to develop: User identities and an open workflow with community contributions and bug reports.

We want to allow users/community members registered at jolla.com to access sailfishos.org resources. To this end we’ll need to somehow merge the user bases. There are some important privacy and security issues that need to be handled so we’re being careful in how we handle this merge.  We’ll start by just continuing to use the old Mer usernames and credentials. We will not be migrating accounts or any personal data from Mer to Jolla so switching to using the sailfishos.org user database managed by Jolla needs a little work. We will compare the databases to notify users of their options and allow them to register as sailfishos.org users with Jolla if they wish. Accounts with matching emails/usernames will be activated at once. Other accounts will be validated and activated manually by request. As a courtesy Jolla will also reserve all active usernames to ensure that ‘old’ Mer accounts cannot be hijacked or used where the email does not match.

At the end of all of this you’ll be able to manage your sailfishos.org account online, which also makes it easier for people to join and start contributing to the code.

In the meantime feel free to raise any questions on this dedicated discussion topic in together.jolla.com , in the Sailfish OS community meetings or with me in the #mer or #sailfishos irc channels on freenode.

 

Sincerely,

David / lbt

The post A Message in a Bottle – from the Mer Project appeared first on Jolla Blog.

Thursday, 28 March

Wednesday, 27 March

02:00

Setting kernel command line arguments with Fedora 30 [Fedora Magazine]

Adding options to the kernel command line is a common task when debugging or experimenting with the kernel. The upcoming Fedora 30 release made a change to use Bootloader Spec (BLS). Depending on how you are used to modifying kernel command line options, your workflow may now change. Read on for more information.

To determine if your system is running with BLS or the older layout, look in the file

/etc/default/grub
If you see
GRUB_ENABLE_BLSCFG=true
in there, you are running with the BLS setup and you may need to change how you set kernel command line arguments.

If you only want to modify a single kernel entry (for example, to temporarily work around a display problem) you can use a grubby command

$ grubby --update-kernel /boot/vmlinuz-5.0.1-300.fc30.x86_64 --args="amdgpu.dc=0"

To remove a kernel argument, you can use the

--remove-args

argument to grubby

$ grubby --update-kernel /boot/vmlinuz-5.0.1-300.fc30.x86_64 --remove-args="amdgpu.dc=0"

If there is an option that should be added to every kernel command line (for example, you always want to disable the use of the rdrand instruction for random number generation) you can run a grubby command:

$ grubby --update-kernel=ALL --args="nordrand"

This will update the command line of all kernel entries and save the option to the saved kernel command line for future entries.

If you later want to remove the option from all kernels, you can again use

--remove-args
with
--update-kernel=ALL

$ grubby --update-kernel=ALL --remove-args="nordrand"

Tuesday, 26 March

03:46

New enhanced Sailfish SDK is here [Jolla Blog]

Today we released Sailfish SDK 2.0, the latest version of our app SDK. The SDK has provided good value for our Sailfish users and developers, and has now matured enough for it to be move out of Beta status.

The new version adds the ability to install different Sailfish emulators to match the OS release of your choice. Currently there are emulators available for all of Sailfish 3 releases.

Highlights

The new SDK includes several features that enhance the development of apps. We have listed few of our favorite highlights:

Multiplatform

Create Sailfish applications using your platform of choice; Linux, Windows or macOS.

Multitarget

Use it to develop for the Sailfish OS version of your choice, you can even target multiple versions at the same time.

Integrated debugging

You now have the debugging tools right at your fingertips, integrated directly into the Qt Creator frontend.

Easy deployment

Test and debug your applications using the inbulit emulator, or using your own physical device.

Easy internationalisation

With the SDK you get the necessary tools to create localisations for your apps.

Agile

QmlLive enables you to test UI changes without recompiling.

There are also a lot of minor changes and bugfixes in this latest release. Please see the release notes for more information. As always, the Jolla SDK team is committed to improving the application development experience for Sailfish OS, and will continue improving and implementing new features in Sailfish SDK.

Next in the pipeline will be a command line interface (CLI), making it possible to build packages without using the IDE. We will also be improving the compilation performance and fixing problems which prevent building of some of the more complicated packages.

 

Sincerely,

Jolla SDK Team

The post New enhanced Sailfish SDK is here appeared first on Jolla Blog.

Monday, 25 March

06:05

Contribute at the Fedora Test Day for Fedora Modularity [Fedora Magazine]

Modularity lets you keep the right version of an application, language runtime, or other software on your Fedora system even as the operating system is updated. You can read more about Modularity in general on the Fedora documentation site.

The Modularity folks have been working on Modules for everyone. As a result, the Fedora Modularity and QA teams have organized a test day for Tuesday, March 26, 2019. Refer to the wiki page for links to the test images you’ll need to participate. Read on for more information on the test day.

How do test days work?

A test day is an event where anyone can help make sure changes in Fedora work well in an upcoming release. Fedora community members often participate, and the public is welcome at these events. If you’ve never contributed before, this is a perfect way to get started.

To contribute, you only need to be able to do the following things:

  • Download test materials, which include some large files
  • Read and follow directions step by step

The wiki page for the modularity test day has a lot of good information on what and how to test. After you’ve done some testing, you can log your results in the test day web application. If you’re available on or around the day of the event, please do some testing and report your results.

Happy testing, and we hope to see you on test day.

02:00

Backup on Fedora Silverblue with Borg [Fedora Magazine]

When it comes to backing up a Fedora Silverblue system, some of the traditional tools may not function as expected. BorgBackup (Borg) is an alternative available that can provide backup capability for your Silverblue based systems. This how-to explains the steps for using BorgBackup 1.1.8 as a layered package to back up Fedora Silverblue 29 system.

On a normal Fedora Workstation system, dnf is used to install a package. However, on Fedora Silverblue, rpm-ostree install is used to install new software. This is termed layering on the Silverblue system, since the core ostree is an immutable image and the rpm package is layered onto the core system during the install process resulting in a new local image with the layered package.

“BorgBackup (short: Borg) is a deduplicating backup program. Optionally, it supports compression and authenticated encryption.”

From the Borg website

Additionally, the main way to interact with Borg is via the command line. Reading the Quick Start guide it becomes apparent that Borg is well suited to scripting. In fact, it is pretty much necessary to use some form of shell script when performing repeated thorough backup’s of a system. A basic script is provided in the Borg Quick Start guide , as a point to get started.

Installing Borg

In a terminal, type the following command to install BorgBackup as a layered package:

$rpm-ostree install borgbackup

This installs BorgBackup to the Fedora Silverblue system. To use it, reboot into the new ostree with:

$systemctl reboot

Now Borg is installed, and ready to use.

Some notes about Silverblue and its file system, layered packages and flatpaks

The file system

Silverblue is an immutable operating system based on ostree, with support for layering rpm’s through the use of rpm-ostree. At the user level, this means the path that appears as /home in a flatpak, will actually be /var/home to the system. For programs like Borg, and other backup tools this is important to remember since they often require the actual path, so in this example that would be /var/home instead of just /home.

Before starting a backup it’s a good idea to understand where potential data could be stored, and then if that data should be backed up. Silverblue’s file system layout is very specific with respect to what is writable and what is not. On Silverblue /etc and /var are the only places that are not immutable, therefore writable. On a single user system, typically the user home directory would be a likely choice for data backup. Normally excluding Downloads, but including Documents and more. Also, /etc is a logical choice for some configuration options you don’t want to go through again. Take notes of what to exclude from your home directory and from /etc. Some files and subdirectories of /etc you need root or sudo privileges to access.

Flatpaks

Flatpak applications store data in your home directory under $HOME/.var/app/flatpakapp, regardless of whether they were installed as user or system. If installed at a user level, there is also data found in $HOME/.local/share/flatpak/app/, or if installed at a system level it will be found in /var/lib/flatpak/app For the purposes of this article, it was enough to list the flatpak’s installed and redirect the output to a file for backing up. Reasoning that if there is a need to reinstall them (flatpaks) the list file could be used to do it from. For a more robust approach, examining the flatpak file system layouts can be done here.

Layering and rpm-ostree

There is no easy way for a user to retrieve the layered package information aside from the

$rpm-ostree status
command. Which shows the current and previous ostree commit’s layered packages, and if any commits are pinned they would be listed too. Below is the output on my system, note the LayeredPackages label at the end of each commit listing.

Terminal output of rpm-ostree status command.

The command

$ostree log
is useful to retrieve a history of commits for the system. Type it in your terminal to see the output.

Preparing the backup repo

In order to use Borg to back up a system, you need to first initialize a Borg repo. Before initializing, the decision must be made to use encryption (or not) and if so, what mode.

With Borg the data can be protected using 256-bit AES encryption. The integrity and authenticity of the data, which is encrypted on the clientside, is verified using HMAC-SHA256. The encryption modes are listed below.

Encryption modes

Hash/MACNot encrypted no authNot encrypted, but authenticatedEncrypted (AEAD w/ AES) and authenticated
SHA-256noneauthenticatedrepokey keyfile
BLAKE2bn/aauthenticated-blake2repokey-blake2 keyfile-blake2

The encryption mode decided on was keyfile-blake2, which requires a passphrase to be entered as well as the keyfile being needed.

Borg can use the following compression types which you can specify at backup creation time.

  • lz4 (super fast, low compression)
  • zstd (wide range from high speed and low compression to high compression and lower speed)
  • zlib (medium speed and compression)
  • lzma (low speed, high compression)

For compression lzma was chosen at setting 6, the highest sensible compression level. The initial backup took 4 minutes 59.98 seconds to complete, while subsequent ones have taken less than 20 seconds as a rule.

Borg init

To be able to perform backups with Borg, first, create a directory for your Borg repo:

$mkdir borg_testdir

and then change to it.

$cd borg_testdir

Next, initialize the Borg repo with the borg init command:

$borg init -e=keyfile-blake2 .

Borg will prompt for your passphrase, which is case sensitive, and at creation must be entered twice. A suitable passphrase of alpha-numeric characters and symbols, and of a reasonable length should be created. It can be changed later on if needed without affecting the keyfile, or your encrypted data. The keyfile can be exported and should be for backup purposes, along with the passphrase, and stored somewhere secure.

Creating a backup

Next, create a test backup of the Documents directory, remember on Silverblue the actual path to the user Documents directory is /var/home/username/Documents. In practice on Silverblue, it is suitable to use ~/ or $HOME to indicate your home directory. The distinction between the actual path and environment variables being the real path does not change whereas the environment variable can be changed. From within the Borg repo, type the following command

$borg create .::borgtest /var/home/username/Documents

and that will create a backup of the Documents directory named borgtest. To break down the command a bit; create requires a repo location, in this case . since we are in the top level of the repo. That makes the path .::borgtest for the backup name. Finally /var/home/username/Documents is the location of the data we are backing up.

The following command

$borg list

returns a listing of your backups, after a few days it look similar to this:

Output of borg list command in my backup repo.

To delete the test backup, type the following in the terminal

$borg delete .::borgtest

at this time Borg will prompt for the encryption passphrase in order to delete the backup.

Pulling it together into a shell script

As mentioned Borg is an eminently script friendly tool. The Borg documentation links provided are great places to find out more about BorgBackup, and there is more. The example script provided by Borg was modified to suit this article. Below is a version with the basic parts that others could use as a starting point if desired. It tries to capture the three information pieces of the system and apps mentioned earlier. The output of flatpak list, rpm-ostree status, and ostree log as human readable files given the same names each time so overwritten each time. The repo setup had to be changed since the original example is for a remote server login with ssh, and this was intended to be used locally. The other changes mostly involved correcting directory paths, tailoring the excluded content to suit this systems home directory, and choosing the compression.


#!/bin/sh

# This gets the ostree commit data, this file is overwritten each time
sudo ostree log fedora-workstation:fedora/29/x86_64/silverblue > ostree.log

rpm-ostree status > rpm-ostree-status.lst

# Flatpaks get listed too
flatpak list > flatpak.lst

# Setting this, so the repo does not need to be given on the commandline:
export BORG_REPO=/var/home/usernamehere/borg_testdir

# Setting this, so you won't be asked for your repository passphrase:(Caution advised!)
export BORG_PASSPHRASE='usercomplexpassphrasehere'

# some helpers and error handling:
info() { printf "\n%s %s\n\n" "$( date )" "$*" >&2; }
trap 'echo $( date ) Backup interrupted >&2; exit 2' INT TERM

info "Starting backup"

# Backup the most important directories into an archive named after
# the machine this script is currently running on:
borg create                         \
    --verbose                       \
    --filter AME                    \
    --list                          \
    --stats                         \
    --show-rc                       \
    --compression auto,lzma,6       \
    --exclude-caches                \
    --exclude '/var/home/*/borg_testdir'\
    --exclude '/var/home/*/Downloads/'\
    --exclude '/var/home/*/.var/'   \
    --exclude '/var/home/*/Desktop/'\
    --exclude '/var/home/*/bin/'    \
                                    \
    ::'{hostname}-{now}'            \
    /etc                            \
    /var/home/ssnow                 \

    backup_exit=$?

    info "Pruning repository"

    # Use the `prune` subcommand to maintain 7 daily, 4 weekly and 6 monthly
    # archives of THIS machine. The '{hostname}-' prefix is very important to
    # limit prune's operation to this machine's archives and not apply to
    # other machines' archives also:

    borg prune                          \
        --list                          \
        --prefix '{hostname}-'          \
        --show-rc                       \
        --keep-daily    7               \
        --keep-weekly   4               \
        --keep-monthly  6               \

    prune_exit=$?

    # use highest exit code as global exit code
    global_exit=$(( backup_exit > prune_exit ? backup_exit : prune_exit ))

    if [ ${global_exit} -eq 0 ]; then
        info "Backup and Prune finished successfully"
    elif [ ${global_exit} -eq 1 ]; then
        info "Backup and/or Prune finished with warnings"
    else
        info "Backup and/or Prune finished with errors"
    fi

    exit ${global_exit}

This listing is missing some more excludes that were specific to the test system setup and backup intentions, and is very basic with room for customization and improvement. For this test to write an article it wasn’t a problem having the passphrase inside of a shell script file. Under normal use it is better to enter the passphrase each time when performing the backup.

Sunday, 24 March

Saturday, 23 March

Friday, 22 March

02:00

How to set up Fedora Silverblue as a gaming station [Fedora Magazine]

This article gives you a step by step guide to turn your Fedora Silverblue into an awesome gaming station with the help of Flatpak and Steam.

Note: Do you need the NVIDIA proprietary driver on Fedora 29 Silverblue for a complete experience? Check out this blog post for pointers.

Add the Flathub repository

This process starts with a clean Fedora 29 Silverblue installation with a user already created for you.

First, go to https://flathub.org/home and enable the Flathub repository on your system. To do this, click the Quick setup button on the main page.

Quick setup button on flathub.org/home

This redirects you to https://flatpak.org/setup/ where you should click on the Fedora icon.

Fedora icon on flatpak.org/setup

Now you just need to click on Flathub repository file. Open the downloaded file with the Software Install application.

Flathub repository file button on flatpak.org/setup/Fedora

The GNOME Software application opens. Next, click on the Install button. This action needs sudo permissions, because it installs the Flathub repository for use by the whole system.

Install button in GNOME Software

Install the Steam flatpak

You can now search for the Steam flatpak in GNOME Software. If you can’t find it, try rebooting — or logout and login — in case GNOME Software didn’t read the metadata. That happens automatically when you next login.

Searching for Steam

Click on the Steam row and the Steam page opens in GNOME Software. Next, click on Install.

Steam page in GNOME Software

And now you have installed Steam flatpak on your system.

Enable Steam Play in Steam

Now that you have Steam installed, launch it and log in. To play Windows games too, you need to enable Steam Play in Steam. To enable it, choose Steam > Settings from the menu in the main window.

Settings button in Steam

Navigate to the Steam Play section. You should see the option Enable Steam Play for supported titles is already ticked, but it’s recommended you also tick the Enable Steam Play option for all other titles. There are plenty of games that are actually playable, but not whitelisted yet on Steam. To see which games are playable, visit ProtonDB and search for your favorite game. Or just look for the games with the most platinum reports.

Steam Play settings menu on Steam

If you want to know more about Steam Play, you can read the article about it here on Fedora Magazine:

Appendix

You’re now ready to play plenty of games on Linux. Please remember to share your experience with others using the Contribute button on ProtonDB and report bugs you find on GitHub, because sharing is nice. 🙂


Photo by Hardik Sharma on Unsplash.

Thursday, 21 March

02:47

Sailfish OS Oulanka is now available [Jolla Blog]

The new software release, Sailfish OS Oulanka is now available! This time, the name for Sailfish OS 3.0.2 update was inspired by one of our sailor’s favorite locations: Oulanka National Park.

Oulanka is a national park in Lapland and Northern Ostrobothnia regions of Finland, covering 270 km². This park is known in Finland by adventurers due to it is famous trekking route, Karhunkierros, a four day – eighty kilometer route – located in Oulanka and accessible all year round. Oulanka was the first of the two Finnish national parks to become part of World Wide Fund for Nature’s PAN Parks.

 

Release Highlights

Oulanka brings in some new Sailfish OS features, and over 44 fixed issues reported in Together.Jolla.com.  With this new update you will find that the Top Menu has a new switch for silencing ringtones and there’s a new battery saving mode to make the most out of low battery in those moments you need to stretch productivity. Email app supports now sending read receipts to inform that you have read the senders’ email. Connectivity was improved in terms of firewall and global proxy. As for the user interface, home screen had memory optimizations for handling wallpapers, freeing memory for running other apps.

Power management

Power management in Sailfish OS has been improved. This is possible thanks to a new battery saving mode.

Battery Saving Mode

In Oulanka we introduce a new battery saving mode, which  is automatically activated by default when the battery level goes bellow 20%. You can enable or adjust the battery saving threshold in the  new battery settings section. To do this, just go to the settings menu, scroll down to the bottom and you will find the new “Battery” section.

battery1

 

Connectivity

As for Connectivity, Sailfish OS copes better in environments with large numbers of Bluetooth and WLAN devices. Bluetooth and WLAN network scan no longer slow down your device. As well the Firewall introduced in the previous update, Sipoonkorpi, gained many improvements, in general robustness and IPv6 support in particular.

wlanbshort

 

Corporate API

Improvements have been made to the Corporate API. It should be noted that by default all Device Management features are disabled on vanilla Sailfish OS devices. Some of the devices management API’s created include Data counters, call statistics, location data sources, proxy settings, app auto start, roaming status, and cellular settings.

 

Sailfish X Beta for Xperia XA2

Sailfish X continues to be a Beta release for Xperia XA2 with the Oulanka update, but we have fixed several important issues, and will continue to improve in the following Sailfish OS updates. Oulanka improves several aspects of Android™ 8.1 App Support Beta for Xperia XA2 devices. Android apps can now more reliably connect to Internet via mobile data. There is still an issue in using second SIM of a dual SIM device, and in some cases apps do not correctly detect connectivity status. Apps that had invisible icons should now have their icons correctly presented in the App Grid. Using force stop for an Android app from app setting now works correctly without wiping app data. Lock screen control support for audio playback was  added for Android apps. Memory leak and other issues were fixed to improve overall stability.sonyxperia

There are still important issues on XA2 that we are aware of and working to fix them as soon as possible, for these complicated issues we need time to completely analyze and fix. Two major issues on top of our list that we continue to work on are battery drainage, and the malfunctions in the proximity sensor, which create a black screen after answering a phone call.

Bug Fixes

As always, we want to thank our community for your continuous support and help! Some bugs that were fixed include; events view not loading correctly and Calendar crashing when deleting entries, just to name a few.

For more information please read the release notes and for detailed instructions on how to update your Sailfish OS powered device please check it here.

The post Sailfish OS Oulanka is now available appeared first on Jolla Blog.

Wednesday, 20 March

02:00

4 cool terminal multiplexers [Fedora Magazine]

The Fedora OS is comfortable and easy for lots of users. It has a stunning desktop that makes it easy to get everyday tasks done. Under the hood is all the power of a Linux system, and the terminal is the easiest way for power users to harness it. By default terminals are simple and somewhat limited. However, a terminal multiplexer allows you to turn your terminal into an even more incredible powerhouse. This article shows off some popular terminal multiplexers and how to install them.

Why would you want to use one? Well, for one thing, it lets you logout of your system while leaving your terminal session undisturbed. It’s incredibly useful to logout of your console, secure it, travel somewhere else, then remotely login with SSH and continue where you left off. Here are some utilities to check out.

One of the oldest and most well-known terminal multiplexers is screen. However, because the code is no longer maintained, this article focuses on more recent apps. (“Recent” is relative — some of these have been around for years!)

Tmux

The tmux utility is one of the most widely used replacements for screen. It has a highly configurable interface. You can program tmux to start up specific kinds of sessions based on your needs. You’ll find a lot more about tmux in this article published earlier:

Already a tmux user? You might like this additional article on making your tmux sessions more effective.

To install tmux, use the sudo command along with dnf, since you’re probably in a terminal already:

$ sudo dnf install tmux

To start learning, run the tmux command. A single pane window starts with your default shell. Tmux uses a modifier key to signal that a command is coming next. This key is Ctrl+B by default. If you enter Ctrl+B, C you’ll create a new window with a shell in it.

Here’s a hint: Use Ctrl+B, ? to enter a help mode that lists all the keys you can use. To keep things simple, look for the lines starting with bind-key -T prefix at first. These are keys you can use right after the modifier key to configure your tmux session. You can hit Ctrl+C to exit the help mode back to tmux.

To completely exit tmux, use the standard exit command or Ctrl+D keystroke to exit all the shells.

Dvtm

You might have recently seen the Magazine article on dwm, a dynamic window manager. Like dwm, dvtm is for tiling window management — but in a terminal. It’s designed to adhere to the legacy UNIX philosophy of “do one thing well” — in this case managing windows in a terminal.

Installing dvtm is easy as well. However, if you want the logout functionality mentioned earlier, you’ll also need the abduco package which handles session management for dvtm.

$ sudo dnf install dvtm abduco

The dvtm utility has many keystrokes already mapped to allow you to manage windows in the terminal. By default, it uses Ctrl+G as its modifier key. This keystroke tells dvtm that the following character is going to be a command it should process. For instance, Ctrl+G, C creates a new window and Ctrl+G, X removes it.

For more information on using dvtm, check out the dvtm home page which includes numerous tips and get-started information.

Byobu

While byobu isn’t truly a multiplexer on its own — it wraps tmux or even the older screen to add functions — it’s worth covering here too. Byobu makes terminal multiplexers better for novices, by adding a help menu and window tabs that are slightly easier to navigate.

Of course it’s available in the Fedora repos as well. To install, use this command:

$ sudo dnf install byobu

By default the byobu command runs screen underneath, so you might want to run byobu-tmux to wrap tmux instead. You can then use the F9 key to open up a help menu for more information to help you get started.

Mtm

The mtm utility is one of the smallest multiplexers you’ll find. In fact, it’s only about 1000 lines of code! You might find it helpful if you’re in a limited environment such as old hardware, a minimal container, and so forth. To get started, you’ll need a couple packages.

$ sudo dnf install git ncurses-devel make gcc

Then clone the repository where mtm lives:

$ git clone https://github.com/deadpixi/mtm.git

Change directory into the mtm folder and build the program:

$ make

You might receive a few warnings, but when you’re done, you’ll have the very small mtm utility. Run it with this command:

$ ./mtm

You can find all the documentation for the utility on its GitHub page.

These are just some of the terminal multiplexers out there. Got one you’d like to recommend? Leave a comment below with your tips and enjoy building windows in your terminal!


Photo by Michael on Unsplash.

Tuesday, 19 March

Monday, 18 March

07:50

What it’s Like to Intern at Etsy? – Part I [Code as Craft]

I secretly like seeing people’s surprise when I told them that I chose to intern at Etsy because it was the only company that asked for a cover letter. I enjoyed every second of filling out my Etsy software engineering internship application because I felt like I was really telling my story to a company that cared about my whole self. I interned at Etsy during summer 2016 and started working full-time after I graduated from college in 2017. The human touch embedded in Etsy’s engineering culture, business strategy and company vision is still the number one thing I am proud of.

Over the past three years, I have gotten many questions about what it’s like to intern and have my first job out of college at Etsy. It always gives me a warm feeling when students are curious and excited about careers at Etsy, and I think it’s time we give this question answers that will live on the interweb.

This past winter, I met five interns that Etsy hosted for WiTNY (Women in Technology and Entrepreneurship in New York)’s Winternship program. At the end of their three-week internships, they were super excited to share their experiences. One of the winterns, Nia Laureano, wrote a fantastic recap of her time at Etsy, and I thought it would be a great way to start sharing the Etsy internship experience!

Inventing a Process: Five Interns Navigate a Complex Problem Thanks to Etsy’s Relentlessly Human Touch

by Nia Laureano

Interning at Etsy is a unique experience because so much about Etsy’s identity has to be understood in order to move forward with any sort of work. For three weeks in January, a team of four girls and I joined the Etsy family as interns and were tasked with solving an issue being faced by a product team that helps the buyers.

Coming into our first day, the details of our task were overwhelmingly foreign to us. The subject we were dealing with was Etsy’s listing page. It’s a complicated page, due to the fact that 60 million listings exist on Etsy and they are all vastly different. When engineers make changes to the listing page, it is difficult to test their code against every possible variation of the page that exists. Sometimes, a variation slips from their mind — they forget to account for it, which could potentially cause the page to break when they push code. This is what engineers call an edge case, and our job was to create a tool that allows Etsy engineers to test for edge cases more thoroughly. Specifically, we were asked to create a reference for them to easily find listings that match different criteria and variations to test code against. But solving a project that we barely understood ourselves seemed daunting, if not impossible.

The entirety of our first week was spent immersing ourselves in the context of this world we were working in. We strolled through the typical workflow of an Etsy engineer, trying to imagine where our solution would fit neatly into the puzzle. We spoke to engineers about their frustrations to get to the root of their needs. We became engineers by being thrusted into the process of pushing code to Etsy’s repository. We couldn’t commit to our craft without first understanding how these employees live and work; then we had to imagine what we could do to make their world better.

After interviewing several engineers, we realized that they each had their own ways of testing for edge cases. “I just have two folders of bookmarks that have some links in them,” said one engineer. “But I’m not sure what other people use.” It was surprising to hear that engineers weren’t sure what other people on their team were doing. We realized, at this point, that the problem wasn’t a faulty process — there was no process to begin with. It was up to us to invent a process, or at least establish a basic standard when it comes to testing for edge cases.

In ideation, the solutions we envisioned ranged dramatically. Something as basic as a spreadsheet would have been helpful, but we also dreamed bigger. We thought about creating an automated Etsy shop that auto-generates listings that represent the edge cases that needed to be tested. We wanted to create something ambitious, but it also had to be something we could attain in three weeks. Ultimately, we focused on creating a solution that would deliver on three crucial needs of our engineers: structure, convenience and confidence.

Structure. While some engineers relied on their own bookmarks or spreadsheets to keep track of edge cases, some relied on sheer memory, or asking their coworkers via Slack. Testing for something that could potentially break the listing page, we realized, shouldn’t be such a structureless process. Our solution needed to provide an element of uniformity; it needed to eliminate that glaring unawareness about what other teammates were doing. It needed to be a unifier.

Convenience. In order to make a tool that was accessible and easy to use, we needed to identify and understand the environment in which engineers complete the bulk of their work, because that’s where we would want our tool to live. We quickly noticed one common thread woven through the workflow of not only Etsy’s engineers, but the company as a whole: our messaging platform, Slack. We observed that so much important work at Etsy is already accomplished via Slack; it’s where employees collaborate and even push code. It made perfect sense for our solution to be integrated within the environment that was already so lived-in.

Confidence. Bugs are inevitable, but our engineers deserve to feel confident that the code they are pushing is as clean as it can be. The more edge cases they can test for, the more certain they can feel that their code is quality and fully functional. Therefore, our solution had to be thorough and reliable; it had to be something engineers could trust.

After three weeks, our project was completed in two phases. Our first phase was focused on creating a spreadsheet. This was the skeleton of our final product, which mirrored the anatomy of the listing page itself. To build this, we broke down the different components of the listing page and identified all of the variations that could occur within those components. Then, we spent several days creating almost one hundred of our own listings on Etsy that represented each of those variations. We ended up with a thorough, intuitively structured catalog of edge cases which can now be accessed by anyone at Etsy who needs it.

The second phase of our project was a Slack-integrated bot. Using our spreadsheet as a backbone, we aimed to design a bot that can retrieve edge cases on command via Slack. Engineers can input commands that return single, multiple, or all edge cases they may be looking for. Due to our time constraint, we were only able to create a bot that utilizes test data, but we hope to see a future iteration that fully integrated with our spreadsheet.

A universe of terminology and culture had to be packed into our brains in order to accomplish what we did in three weeks. Yet, we somehow felt so seamlessly integrated into Etsy’s ecosystem from day one, thanks to the friendly and enthusiastic nature of everyone around us. We were never afraid to ask questions, because no one ever talked down to us or made us feel inferior. There are no mechanisms in place at Etsy that make power dynamics apparent, not even from the perspective of an intern.

Our project was completed not because of crash courses in PHP or because we overloaded on cold brew; it was thanks to the people who nurtured us along the way. It was the prospect of creating something that could make a lasting impact on a company we loved that motivated us. Etsy’s relentlessly human touch makes even the smallest of projects feel meaningful, and it can turn three weeks into an unforgettable experience that I will never stop feeling passionate about.

A note about our internship & our organization:

WiTNY (Women in Technology and Entrepreneurship in New York) is a collaborative initiative between Cornell Tech x CUNY designed to inspire young women to pursue careers in technology. WiTNY offers workshops and program that teach important skills and provide real work experience.

The Winternship program is a paid, three-week, mini-internship for first and second-year undergraduate students at CUNY schools, during their January academic recess. Etsy is one of many companies who participated in the Winternship program this year, taking a team of five young women and giving them a challenging project to complete while also teaching them about the different roles within a tech company.

 

02:01

Let’s try dwm — dynamic window manager [Fedora Magazine]

If you like efficiency and minimalism, and are looking for a new window manager for your Linux desktop, you should try dwm — dynamic window manager. Written in under 2000 standard lines of code, dwm is extremely fast yet powerful and highly customizable window manager.

You can dynamically choose between tiling, monocle and floating layouts, organize your windows into multiple workspaces using tags, and quickly navigate through using keyboard shortcuts. This article helps you get started using dwm.

Installation

To install dwm on Fedora, run:

$ sudo dnf install dwm dwm-user

The dwm package installs the window manager itself, and the dwm-user package significantly simplifies configuration which will be explained later in this article.

Additionally, to be able to lock the screen when needed, we’ll also install slock — a simple X display locker.

$ sudo dnf install slock

However, you can use a different one based on your personal preference.

Quick start

To start dwm, choose the dwm-user option on the login screen.

After you log in, you’ll see a very simple desktop. In fact, the only thing there will be a bar at the top listing our nine tags that represent workspaces and a []= symbol that represents the layout of your windows.

Launching applications

Before looking into the layouts, first launch some applications so you can play with the layouts as you go. Apps can be started by pressing Alt+p and typing the name of the app followed by Enter. There’s also a shortcut Alt+Shift+Enter for opening a terminal.

Now that some apps are running, have a look at the layouts.

Layouts

There are three layouts available by default: the tiling layout, the monocle layout, and the floating layout.

The tiling layout, represented by []= on the bar, organizes windows into two main areas: master on the left, and stack on the right. You can activate the tiling layout by pressing Alt+t.

The idea behind the tiling layout is that you have your primary window in the master area while still seeing the other ones in the stack. You can quickly switch between them as needed.

To swap windows between the two areas, hover your mouse over one in the stack area and press Alt+Enter to swap it with the one in the master area.

The monocle layout, represented by [N] on the top bar, makes your primary window take the whole screen. You can switch to it by pressing Alt+m.

Finally, the floating layout lets you move and resize your windows freely. The shortcut for it is Alt+f and the symbol on the top bar is ><>.

Workspaces and tags

Each window is assigned to a tag (1-9) listed at the top bar. To view a specific tag, either click on its number using your mouse or press Alt+1..9. You can even view multiple tags at once by clicking on their number using the secondary mouse button.

Windows can be moved between different tags by highlighting them using your mouse, and pressing Alt+Shift+1..9. 

Configuration

To make dwm as minimalistic as possible, it doesn’t use typical configuration files. Instead, you modify a C header file representing the configuration, and recompile it. But don’t worry, in Fedora it’s as simple as just editing one file in your home directory and everything else happens in the background thanks to the dwm-user package provided by the maintainer in Fedora.

First, you need to copy the file into your home directory using a command similar to the following:

$ mkdir ~/.dwm
$ cp /usr/src/dwm-VERSION-RELEASE/config.def.h ~/.dwm/config.h

You can get the exact path by running man dwm-start.

Second, just edit the ~/.dwm/config.h file. As an example, let’s configure a new shortcut to lock the screen by pressing Alt+Shift+L.

Considering we’ve installed the slock package mentioned earlier in this post, we need to add the following two lines into the file to make it work:

Under the /* commands */ comment, add:

static const char *slockcmd[] = { "slock", NULL };

And the following line into static Key keys[]:

{ MODKEY|ShiftMask, XK_l, spawn, {.v = slockcmd } },

In the end, it should look like as follows: (added lines are highlighted)

...
/* commands */
static char dmenumon[2] = "0"; /* component of dmenucmd, manipulated in spawn() */
static const char *dmenucmd[] = { "dmenu_run", "-m", dmenumon, "-fn", dmenufont, "-nb", normbgcolor, "-nf", normfgcolor, "-sb", selbgcolor, "-sf", selfgcolor, NULL };
static const char *termcmd[]  = { "st", NULL };
static const char *slockcmd[] = { "slock", NULL };

static Key keys[] = {
/* modifier                     key        function        argument */
{ MODKEY|ShiftMask,             XK_l,      spawn,          {.v = slockcmd } },
{ MODKEY,                       XK_p,      spawn,          {.v = dmenucmd } },
{ MODKEY|ShiftMask,             XK_Return, spawn,          {.v = termcmd } },
...

Save the file.

Finally, just log out by pressing Alt+Shift+q and log in again. The scripts provided by the dwm-user package will recognize that you have changed the config.h file in your home directory and recompile dwm on login. And becuse dwm is so tiny, it’s fast enough you won’t even notice it.

You can try locking your screen now by pressing Alt+Shift+L, and then logging back in again by typing your password and pressing enter.

Conclusion

If you like minimalism and want a very fast yet powerful window manager, dwm might be just what you’ve been looking for. However, it probably isn’t for beginners. There might be a lot of additional configuration you’ll need to do in order to make it just as you like it.

To learn more about dwm, see the project’s homepage at https://dwm.suckless.org/.

Sunday, 17 March

18:00

Saturday, 16 March

Thursday, 14 March

20:34

GNOME 3.32 released & coming to Fedora 30 [Fedora Magazine]

Today, the GNOME project announced the release of GNOME 3.32.

The release of the GNOME desktop is the default desktop environment in the upcoming release of Fedora 30 Workstation. GNOME 3.32 includes a wide range of enhancements, including: new default application icons, a new emoji chooser in the on screen keyboard, and improved per-app permissions control.

GNOME 3.32

New Icons

GNOME 3.32 features a range of UI tweaks and improvements. Notably, the entire default icon library has been updated and refreshed, featuring more vibrant colours.

Some of the new icons in GNOME 3.32

Additionally, the colours of the desktop are tweaked to the brighter colour palette to match the new icons.

App Menus deprecated

In GNOME 3. the App Menu is the dropdown that appeared in the top left of the panel next to the Activities hotspot. As of GNOME 3.32, this UI feature is deprecated, and all core GNOME default applications now no longer have App Menus.

Fractional Scaling

Previously, the GNOME UI could only scale in increments of 1. With the wide range of different DPI screens available this may cause a strange middle ground on some displays, where the UI is either too small or too large when scaled. GNOME 3.32 provides experimental support for scaling the UI by more granular amounts.

Better emoji input

GNOME 3.32 features an updated on-screen keyboard implementation. Most notably, this includes the ability to easily “type” emoji with the on-screen keyboard

Emoji on-screen keyboard in GNOME 3.32

Improved App permissions control

The new “Application Permissions” in the main settings dialog allows users to view and change permissions for applications.

Read more about this release

There are many more changes and enhancements in this major version of GNOME. Check out the release announcement and the release notes from the GNOME Project for more information.


Screenshots in this post are from the GNOME 3.32 release notes

Wednesday, 13 March

03:00

Libravatar has a new home [Fedora Magazine]

Libravatar is a free and open source service that anyone can use to host and share an avatar (profile picture) to other websites. Read on for some news about the service and its relevance to the Fedora Project.

As defined in the project’s blog, The Libravatar project is part of a movement working to give control back to people, away from centralized services and the organizations running them. It addresses a simple problem: putting a face on an email address.

The project originated from the will to have a free, as in freedom, service alternative to Gravatar, giving the users the possibility to use a hosted service or to run their own instance of the service and have full control of their data.

In April 2018 the Libravatar project announced that the service will be shutting down. The service is/was being used by many communities like Fedora, Mozilla and the Linux Kernel to name a few. The announcement triggered a big response from the community, of people interested and willing to help to keep it running.

After some coordination, and a complete rewrite of the application the launch of the new service was announced Tuesday 19th February 2019. The Fedora Project is proud to sponsor Libravatar by providing the infrastructure needed to run the service.

Tuesday, 12 March

Monday, 11 March

02:00

Discuss everything Fedora [Fedora Magazine]

Are you interested in how Fedora is being developed? Do you want to get involved, or see what goes into making a release? You want to check out Fedora Discussion. It is a relatively new place where members of the Fedora Community meet to discuss, ask questions, and interact. Keep reading for more information.

Note that the Fedora Discussion system is mainly aimed at contributors. If you have questions on using Fedora, check out Ask Fedora (which is being migrated in the future).

Fedora Discussion is a forum and discussion site that uses the Discourse open source discussion platform.

There are already several categories useful for Fedora users, including Desktop (covering Fedora Workstation, Fedora Silverblue, KDE, XFCE, and more) and the Server, Cloud, and IoT category . Additionally, some of the Fedora Special Interest Groups (SIGs) have discussions as well. Finally, the Fedora Friends category helps you connect with other Fedora users and Community members by providing discussions about upcoming meetups and hackfests.

Sunday, 10 March

01:00

Contribute at the Kernel and Fedora IoT Edition Test Days [Fedora Magazine]

Fedora test days are events where anyone can help make sure changes in Fedora work well in an upcoming release. Fedora community members often participate, and the public is welcome at these events. If you’ve never contributed to Fedora before, this is a perfect way to get started.

There are two upcoming test days this week. The first, on Tuesday March 12, is to test the Kernel 5.0. Wednesday March 13, the test day is focusing on Fedora IoT Edition. Come and test with us to make the upcoming Fedora 30 even better.

Kernel test day

The kernel team is working on final integration for kernel 5.0. This version was just recently released and will arrive soon in Fedora. This version will also be the shipping kernel for Fedora 30. As a
result, the Fedora kernel and QA teams have organized a test day for
Tuesday, March 12. Refer to the wiki page for links to the test images you’ll need to participate.

Fedora IoT Edition test day

Fedora Internet of Things is a variant of Fedora focused on IoT ecosystems. Whether you’re working on a home assistant, industrial gateways, or data storage and analytics, Fedora IoT provides a trusted open source platform to build on. Fedora IoT produces a monthly rolling release to help you keep your ecosystem up-to-date. The IoT and QA teams will have this test day for on Wednesday, March 13. Refer to the wiki page for links and resources to test the IoT Edition.

How do test days work?

A test day is an event where anyone can help make sure changes in Fedora work well in an upcoming release. Fedora community members often participate, and the public is welcome at these events. If you’ve never contributed before, this is a perfect way to get started.

To contribute, you only need to be able to download test materials (which include some large files) and then read and follow directions step by step.

Detailed information about both test days are on the wiki pages above. If you’re available on or around the days of the events, please do some testing and report your results.

Saturday, 09 March

Thursday, 07 March

Wednesday, 06 March

Tuesday, 05 March

Monday, 04 March

06:50

China’s Huawei has big ambitions to weaken the US grip on AI leadership [Top News - MIT Technology Review]

In spite of tensions with the US and its allies, Huawei is rapidly building a suite of AI offerings unmatched by any other company on the planet.

Sunday, 03 March

17:00

Tech Intersections Conference [Yelp Engineering and Product Blog]

This year Yelp sponsored the second annual Tech Intersections conference in Oakland, CA. It was a great opportunity to celebrate womxn of color in tech and to come together and learn from each other’s successes, challenges, and experiences. The conference, which featured ALL womxn speakers and attendees, highlighted topics ranging from tech entrepreneurship to self-care and career skills. Kelly Greenia, Engineering Recruiter, with some Yelp Swag! Two members of Yelp’s Awesome Women in Engineering (AWE) group attended the conference and below are some of their takeaways. This past weekend, we had the opportunity to attend the Tech Intersections conference at...