sorted by: new top controversial old
[-] pnutzh4x0r@lemmy.ndlug.org 6 points 4 days ago

Still using mutt after two decades (with isync for fetching).

[-] pnutzh4x0r@lemmy.ndlug.org 4 points 4 days ago

Yes, based on the diagrams on their blog, it looks like this only impacts Snaps.

71

Over the past few years, the evolution of AI-driven tools like GitHub’s Copilot and other large language models (LLMs) has promised to revolutionise programming. By leveraging deep learning, these tools can generate code, suggest solutions, and even troubleshoot issues in real-time, saving developers hours of work. While these tools have obvious benefits in terms of productivity, there’s a growing concern that they may also have unintended consequences on the quality and skillset of programmers.

[-] pnutzh4x0r@lemmy.ndlug.org 12 points 5 days ago

From the Discourse Blog:

The Linux desktop provides XDG Desktop Portals as a standardised way for applications to access resources that are outside of the sandbox. Applications that have been updated to use XDG Desktop Portals will continue to use them. Prompting is not intended to replace XDG Desktop Portals but to complement them by providing the desktop an alternative way to ask the user for permission. Either when an application has not been updated to use XDG Desktop Portals, or when it makes access requests not covered by XDG Desktop Portals.

Since prompting works at the syscall level, it does not require an application’s awareness or cooperation to work and extends the set of applications that can be run inside of a sandbox, allowing for a safer desktop. It is designed to enable desktop applications to take full advantage of snap packaging that might otherwise require classic confinement.

So this looks like it complements and not replaces the XDG Desktop Portals, especially for applications that have not implemented the Portals. It allows you to still run those applications in confinement while providing some more granular access controls.

62

cross-posted from: https://lemmy.ndlug.org/post/1104312

The upcoming Ubuntu 24.10 operating system promises a new feature called “permissions prompting” for an extra layer of privacy and security.

The new permissions prompting feature in Ubuntu will let users control, manage, and understand the behavior of apps running on their machines. It leverages Ubuntu’s AppArmor implementation and enables fine-grained access control over unmodified binaries without having to change the app’s source code.

From Ubuntu Discourse: Ubuntu Desktop’s 24.10 Dev Cycle - Part 5: Introducing Permissions Prompting

This solution consists of two new seeded components in Ubuntu 24.10, prompting-client and desktop-security-center alongside deeper changes to snapd and AppArmor available in the upcoming snapd 2.65. The first is a new prompting client (built in Flutter) that surfaces the prompt requests from the application via snapd. The second is our new Security Center:

In this release the Security Center is the home for managing your prompt rules, over time we will expand its functionality to cover additional security-related settings for your desktop such as encryption management and firewall control.

...

With prompting enabled, an application that has access to the home interface in its AppArmor profile will trigger a request to snapd to ask the user for more granular permissions at the moment of access:

As a result, users now have direct control over the specific directories and file paths an application has access to, as well its duration. The results of prompts are then stored in snapd so they can be queried and managed by the user via the Security Center.

67

NT is often touted as a "very advanced" operating system. Why is that? What made NT better than Unix, if anything? And is that still the case?

...

Which brings me to this article—a collection of thoughts comparing the design of NT (July 1993) against contemporary Unix systems such as 4.4BSD (June 1994) or Linux 1.0 (March 1994). Beware that, due to my background, the text is written from the point of view of a Unix “expert” and an NT “clueless”, so it focuses on describing the things that NT does differently.

Long but interesting article that compares the Windows NT kernel to traditional Unix kernels such as that found in BSDs or Linux.

61

How does Linux move from an awake machine to a hibernating one? How does it then manage to restore all state? These questions led me to read way too much C in trying to figure out how this particular hardware/software boundary is navigated.

105

elementary OS may not be as much as popular as it used to be.

That being said, elementary OS 8 release is still on the horizon with some useful changes based on Ubuntu 24.04 LTS.

...

However, amidst disagreement between co-founders during the pandemic in 2022, co-founder Cassidy quit the elementary OS team.

Right after that, the development pace took a big hit, and we saw elementary OS 7 being released almost a year after Ubuntu 22.04 LTS came up.

...

A good indicator about its development activity is its upcoming major release, elementary OS 8, based on Ubuntu 24.04 LTS.

I took a sneak peek at it using the daily build, and elementary OS 8 is almost ready to have an RC release.

...

You can expect things like:

  • The settings app handles system updates (instead of AppCenter)
  • AppCenter is now Flatpak only
  • New toggle menu icon giving you easy access to the screen reader, onscreen keyboard, font size, and other system settings
  • WireGuard VPN support
[-] pnutzh4x0r@lemmy.ndlug.org 18 points 1 week ago

I think you meant Pop!_OS (is developed by System76). TuxedoOS is developed by Tuxedo Computers, which is a European Linux focused hardware company.

That said, the point stands... there are hardware companies making Linux supported devices.

29

In this article we will explore some lesser known, but interesting and useful corners of Python standard library.

...

To provide more powerful containers for storing data in memory Python ships a collection module ...

Python has with keyword to create context manager that will auto-cleanup things within lexical scope ...

To address this problem, Python ships decimal module that allows us represent decimal numbers as Python objects with operator overloading ...

Likewise, we can run into problem when dealing with fractions - one third is not exactly equal to 0.333… Python ships with fractions module to represent them as Python objects with operator overloading ...

The standard Python installation ships with dis module that takes Python code units (e.g. a function) and disassembles the code into a kind of pseudo-assembler ...

Python statistics module provides a small toolkit of statistical algorithms for relatively simple applications where it is an overkill to use Pandas or Numpy: standard deviation, several kinds of average of numeric data, linear regression, correlation, normal distribution and others ...

To make this easier Python ships a webbrowser module with simple API to make a browser show a page ...

To make this less terrible Python ships zipapp module with CLI tool and Python API to package Python code into single file packages ...

114

I have completed an initial new port of systemd to musl. This patch set does not share much in common with the existing OpenEmbedded patchset. I wanted to make a fully updated patch series targeting more current releases of systemd and musl, taking advantage of the latest features and updates in both. I also took a focus on writing patches that could be sent for consideration of inclusion upstream.

The final result is a system that appears to be surprisingly reliable considering the newness of the port, and very fast to boot.

...

And that is how I became the first person alive to see systemd passing its entire test suite on a big-endian 64-bit PowerPC musl libc system.

...

While the system works really well, and boots in 1/3rd the time of OpenRC on the same system, it isn’t ready for prime time just yet.

...

There aren’t any service unit files written or packaged yet, other than OpenSSH and utmps. We are working with our sponsor on an effort to add -systemd split packages to any of the packages with -openrc splits. We should be able to rely on upstream units where present, and lean on Gentoo and Fedora’s systemd experts to have good base files to reference when needed. I’ve already landed support for this in abuild.

This work is part of Adélie Linux

76

For those unfamiliar with it, power-profiles-daemon is a low-level component to provide power handling over DBus. Ever used the Power Mode options in the Quick Settings menu in GNOME Shell? Those options interface through this.

From 0.22 Release Notes:

Since this release power-profiles-daemon is also battery-level aware and some drivers use this value to be smarter at tuning their optimizations. In particular both the AMD panel power action now uses a progressive approach, changing the the ABM based on the battery percentage.

AMD p-state received various features and improvements:

  • it supports core performance boost when not in power-saver mode.
  • uses minimum frequency to lowest non-linear frequency
  • it is more impervious to faulty firmware and kernel bugs

This should be included in the upcoming Ubuntu 24.10 release.

18

There has been a steady uptick of people stating that they will migrate (or already have) to Debian – seeking refuge from what they see as greedy corporate influence. I understand the sentiment fully. However, there’s a problem here that I want to talk about: security.

The ugly truth is that security is hard. It’s tedious. Unpleasant. And requires a lot of work to get right.

Debian does not do enough here to protect users.

Long ago, Red Hat embraced the usage of SELinux. And they took it beyond just enabling the feature in their kernel. They put in the arduous work of crafting default SELinux policies for their distribution.

...

However, its default security framework leaves much to be desired. Debian’s decision to enable AppArmor by default starting with version 10 signifies a positive step towards improved security, yet it falls short due to the half-baked implementation across the system.

...

The fundamental difference between AppArmor and SELinux lies in their approach to Mandatory Access Control (MAC). AppArmor operates on a path-based model, while SELinux employs a significantly more complex type enforcement system. This distinction becomes particularly evident in container environments.

...

The practical implications of these differences are significant. In a SELinux environment, a compromised container faces substantial hurdles in accessing or affecting the host system or other containers, thanks to the dual barriers of type enforcement and MCS labels.

TLDR: According to the author, Debian's use of AppArmour is not as effective as RedHat's use of SELinux when it comes to security.

62

cross-posted from: https://lemmy.ndlug.org/post/1064425

And Linux isn't minimal effort. It's an operating system that demands more of you than does the commercial offerings from Microsoft and Apple. Thus, it serves as a dojo for understanding computers better. With a sensei who keeps demanding you figure problems out on your own in order to learn and level up.

...

That's why I'd love to see more developers take another look at Linux. Such that they may develop better proficiency in the basic katas of the internet. Such that they aren't scared to connect a computer to the internet without the cover of a cloud.

Related: Omakub

91

And Linux isn't minimal effort. It's an operating system that demands more of you than does the commercial offerings from Microsoft and Apple. Thus, it serves as a dojo for understanding computers better. With a sensei who keeps demanding you figure problems out on your own in order to learn and level up.

...

That's why I'd love to see more developers take another look at Linux. Such that they may develop better proficiency in the basic katas of the internet. Such that they aren't scared to connect a computer to the internet without the cover of a cloud.

Related: Omakub

25

For every bytecode compiled language, the most interesting part of its implementation is its virtual machine (also referred to as the bytecode interpreter) where the bytecode execution takes place. Because this is such a crucial part of the language machinery, its implementation has to be highly performant. Even if you are not a compiler engineer, learning about such internal implementation can give you new performance tricks and insights that you may be able to use in other places of your job. And, if you are a compiler engineer then you should always look around how other languages are implemented to pickup implementation details that you may not be aware of.

In this article, we are going to be discussing the bytecode instruction format of CPython, followed by the implementation of the bytecode evaluation loop of the interpreter where the bytecode execution takes place.

[-] pnutzh4x0r@lemmy.ndlug.org 6 points 2 weeks ago

I've been using Weechat-Android to connect to my self-hosted Weechat for over a decade. This is one of the killer mobile apps that keeps me on Android and I love it.

I also have a couple instances of thelounge that people use on mobile via the PWA (progressive web app).

[-] pnutzh4x0r@lemmy.ndlug.org 6 points 2 weeks ago

Oh. I'm sorry if this was discussed previously... I only returned to lemmy a few weeks ago and didn't see the story covered yet.

[-] pnutzh4x0r@lemmy.ndlug.org 32 points 2 weeks ago

I think the WINE project was maintaining a fork of Mono that was used to support running certain Windows applications:

https://wiki.winehq.org/Mono

So in addition to translating traditional WIN32 system calls, WINE also supports .NET applications, which a number of Windows programs require.

[-] pnutzh4x0r@lemmy.ndlug.org 11 points 3 weeks ago

Coincidentally, I received a firmware (EFI) update from Dell today via LVFS. Really nice that it works so smoothly on native Linux (no more manually downloading firmware to USB drives, or relying on Windows).

[-] pnutzh4x0r@lemmy.ndlug.org 40 points 3 weeks ago

The reasons for this shift in budget away from funding Free Software and the NGI initiative seems to be an allocation of more funds for AI, leaving internet infrastructure by the wayside. Meanwhile, the EC has thus far declined to comment to share its official reasoning for striking this funding from its budget.

Sigh. It appears that they are chasing after the latest "shiny" thing instead of investing in existing infrastructure. Not surprising, but disappointing.

[-] pnutzh4x0r@lemmy.ndlug.org 2 points 3 weeks ago

+1 For xournal++. That is what I usually use for annotating slides and drawing with my wacom tablet.

[-] pnutzh4x0r@lemmy.ndlug.org 6 points 3 weeks ago

I agree that the amount of work for many students can get quite out of hand and to be honest when I first started teaching, I was pretty guilty of having very work intensive courses.

That said, over the years, I've worked to streamline my courses to only have what I believe to be absolutely critical to learning and have added a lot of scaffolding and automated tests (for immediate results). In general, I try to have no busy work and make sure everything assignment is meaningful (as much as it can be anyway).

Additionally, because I understand that sometimes life happens, I have built-in facilities for automate extensions for assignments and even have a system for dropping certain homeworks.

This not to say that there isn't work in my classes... it's just that the work is intended to be relevant and reasonable, which most students seem to agree with these days.

I think students should be expected to work less over a longer period of time.

I think this would be a great idea. Or rather, I think it would be great to allow students to learn at different rates... some may want to go faster, some may want or need to go slower.

I think the modern course-based education system is often too rigid and not flexible enough to adequately accommodate the needs of students with different experience levels, resources, or constraints. Something like a Montessori model would be a lot better IMHO.

[-] pnutzh4x0r@lemmy.ndlug.org 5 points 3 weeks ago

First off, 10 is an integer square root. Of 100.

Right, what I was trying to say is that 10 itself is not a perfect square. You cannot take the square root of 10 and get an integer (ie. 1, 4, 9, 16, 25, etc.).

I was told by multiple English teachers (including the head of the department) that I was a math student and should never attempt to write because I saw through the regurgitation assignments, didn't agree with teacher assessments of what Dickens "was trying to do" and had zero interest in confirming their biases.

I think that is unfortunate and probably inappropriate. I try to avoid classifying students as particular types and generally try to encourage them whenever possible to pursue whatever their interests are (even if I disagree or don't have the same interest myself).

College coursework on the whole is a waste of time reinventing wheels. I don't need to spend a couple of weeks working up to "Hello, world!" in C and as such left CS as a major my first quarter at uni.

There is a reason for reinventing wheels; it is to understand why they are round and why they are so effective. To build the future, it helps to understand the past.

That said, perhaps the course was too slow for you, which is understandable... I frequently hear that about various classes (including ones I've taught).

But teachers do this shit every day, year after year, and we blindly say they're doing important work even as they discourage people from finding their path and voice, because god forbid a 16-year-old challenges someone in their 50s.

Again, I think you've had an unfortunate experience and I think it's a good thing to challenge your teachers. I certainly did when I was a student and I appreciate it now when students do that with me. I recognize that I am not perfect nor do I know everything. I make mistakes and can be wrong.

I wish you had a more supportive environment in secondary school and I have a better understanding of your perspective. Thanks for the dialogue.

view more: next ›

pnutzh4x0r

joined 1 year ago