Show newer

Our fifth anniversary, the return of ARM and the Endeavour release with Plasma 6.1 is here

It has been five years since four former Antergos moderators took the plunge into creating a distro without any knowledge or experience at all. Creating EndeavourOS was a true endeavour for us, conquering mountains and deep valleys of code paired with frustration and

endeavouros.com/news/our-fifth

#News

Arch based distro EndeavourOS has a new release for their fifth anniversary. This update has restored support for ARM devices. There are now EndeavourOS ARM images for the Raspberry Pi 4, Raspberry Pi 5, ODROID N2, and Pinebook Pro. It also updates the kernel, Mesa, Plasma, among other programs as well as fixes several bugs. EndeavourOS uses the Calamares installer. It uses SystemD for the init system. If you choose the online installer then you get a choice of eight desktop environments or five window managers. You also get a choice between Grub, SystemD-Boot, or no bootloader. You can also choose between BTRFS and EXT4 for filesystems. All in all you get a lot of user choice during install outside of the sole init system option.



The main website for EndeavourOS is here:

https://endeavouros.com/




The release notes for this update are here:

https://endeavouros.com/news/our-fifth-anniversary-the-return-of-arm-and-the-endeavour-release-with-plasma-6-1-is-here/




The page for the ARM device downlaods is here:

https://endeavouros.com/endeavouros-arm-install/




The source code is available on Github:

https://github.com/endeavouros-team

https://github.com/endeavouros-arm




The project has a forum as well as a presence on the Fediverse and Matrix:

https://forum.endeavouros.com/

https://mastodon.social/@EndeavourOS

https://app.element.io/#/room/#endeavouros-space:matrix.org




If you wish to help the project financially they accept donations through Open Collective:

https://opencollective.com/endeavouros



Side scrolling action platformer " Angry Video Game Nerd I & II Deluxe" is now available on GOG. It was originally released back in 2020. It has a native Linux version and is now available DRM free.

gog.com/en/game/angry_video_ga

2D platformer "Love 3" is now available on GOG. It was originally released back in 2021. It has a native Linux version and is now available DRM free.

gog.com/en/game/love_3

Request for input:

The @fsf are curious to learn more about current practices of those who advise projects to accept LLM-generated source code contributions & whether they follow any rules or guidelines.

The FSF have therefore started a survey published at my.fsf.org/llm-contributions.

Please respond to the survey if you are in any way involved in or have opinions about accepting LLM-generated contributions to software projects. Feel free to spread the link.

CC: @fsfe

Some of you loved our JUMBO MUG and were disappointed when it went out of stock and our supplier discontinued.
We found a replacement!
Proceeds support independent reporting causes like the Sharyl Attkisson ION Awards and the Brechner Center for FOI.
https://store.sharylattkisson.com

Are there any developers in the fediverse who upload their apps to @flathub ?

#linux #flathub #question

In the Linux world, there are many interprocess communication (IPC) methods available for system programmers. After some web searching, I found that there are rarely blogs or books that summarize them all. This article roughly lists them all with minimal explanation and some links to official manuals.

POSIX IPCs

POSIX-flavor IPCs include semaphores, shared memory, and message queues.

semaphore

There are also two subtypes of semaphores: named and unnamed. For details, see man 7 sem_overview.

sem_getvalue(3)sem_post(3)sem_wait(3)sem_trywait(3)sem_timedwait(3)sem_open(3) // namedsem_close(3) // namedsem_unlink(3) // namedsem_init(3) // unnamedsem_destroy(3) // unnamed


shared memory

POSIX shared memory (shm) IPC only has named version, the shm objects are stored in Linux tmpfs (by default /dev/shm).

shm_open (3)shm_unlink (3)


message queue

POSIX message queue (mq) IPC objects are also named, but they are stored in a special filesystem, mqueue. A mqueue filesystem can be mounted with the following command,

mount -t mqueue none /dev/mqueue


The libc APIs and their syscall counterparts are listed below, details see man 7 mq_overview.

Library interface System callmq_close(3) close(2)mq_getattr(3) mq_getsetattr(2)mq_notify(3) mq_notify(2)mq_open(3) mq_open(2)mq_receive(3) mq_timedreceive(2)mq_send(3) mq_timedsend(2)mq_setattr(3) mq_getsetattr(2)mq_timedreceive(3) mq_timedreceive(2)mq_timedsend(3) mq_timedsend(2)mq_unlink(3) mq_unlink(2)


SystemV / XSI IPCs

Similar to the POSIX IPCs, SystemV/XSI-flavor IPCs have the same three types IPCs under Linux: semaphore, shared memory, and message queue. For details, see man 7 sysvipc.

semaphore

semget(2) // Create a new set or obtain the ID of an existing set. This call returns an identifier that is used in the remaining APIs.semop(2) // Perform operations on the semaphores in a set.
semctl(2) // Perform various control operations on a set, including deletion.


shared memory

shmget(2) // Create a new segment or obtain the ID of an existing segment. This call returns an identifier that is used in the remaining APIs.
shmat(2) // Attach an existing shared memory object into the calling process's address space.
shmdt(2) // Detach a segment from the calling process's address space.
shmctl(2) // Perform various control operations on a segment, including deletion.


message queue

msgget(2) // Create a new message queue or obtain the ID of an existing message queue. This call returns an identifier that is used in the remaining APIs.
msgsnd(2) // Add a message to a queue.
msgrcv(2) // Remove a message from a queue.
msgctl(2) // Perform various control operations on a queue, including deletion.


UNIX IPCs

There are some IPCs widely implemented in UNIX-like OSs, but not specified in the POSIX standard. These include pipe, FIFO, signal, and unix domain socket.

Pipe & FIFO

The pipe IPC and FIFO are fundamentally the same, except that FIFO is named while pipe is not.

popen(3) // pipe
pclose(3) // pipe
mkfifo(3) // FIFO
mkfifoat(3) // FIFO


Signal

For details see man 7 signal.

signal(2)
sigaction(2)
kill(2)
sigprocmask(2)
sigpending(2)
sigsuspend(2)
// and more ...


Unix Domain Socket

Unix domain sockets (UDS) use the socket programming interface for local IPC. For details, see man 7 unix.

socket(AF_UNIX, ...) (2)


Modern Linux IPCs

Binder

The binder IPC was initially implemented for the Android OS and has been merged into Linux upstream.
For details, see The Android binderfs Filesystem — The Linux Kernel documentation.

DBus / kdbus

The DBus IPC is now widely used. It is implemented in userspace. Efforts are made towards a kernel version (kdbus), but it has not been merged upstream. For details, see dbus (www.freedesktop.org).

https://blog.jcix.top/2024-07-01/linux_ipc/

#Linux

The P Diddy human trafficking investigation is being covered up in real time by the same asshole who covered up the Epstein & Maxwell human/child trafficking and foreign espionage network - from the great Nick Bryant

https://nickbryantnyc.com/blog/f/four-words-connect-epstein-and-p-diddy

Assigning your copyright to the FSF helps defend the GPL and keep software free. Thanks to Ignacio Ruiz Cejudo, Johan Sternerup, Rens Oliemans, Robert Burks, Sergei Golovin, and Toshihiro Umehara for assigning their copyright to the FSF! #GDB #Emacs #GNUAstro #GNUstep More: u.fsf.org/3ht #CopyrightAssignments

Show older
Game Liberty Mastodon

Mainly gaming/nerd instance for people who value free speech. Everyone is welcome.