CTI Digital: Enhancing Drupal Content Editing with Same Page Preview Module

Planet Drupal - Fri, 2023-11-24 04:36

As I embarked on a recent journey to enhance the usability of Drupal from the perspective of both site owners and editors, I stumbled upon what could be a game changer for content editors – the "Same Page Preview" module.

Categories: FLOSS Project Planets

Golems GABB: Building a Mobile App with Drupal as a Backend

Planet Drupal - Fri, 2023-11-24 03:00
Building a Mobile App with Drupal as a Backend Editor Fri, 11/24/2023 - 10:00

Do you know that almost 90% of developers who use Drupal as a backend for their mobile apps have their stash, lucky coding socks? This is interesting because developers believe it allows them to work more efficiently.
We may have exaggerated about 90 percent, but building a mobile app development with Drupal as a backend is perfect. There are many reasons for this because Drupal as a tool has all the necessary features and capabilities to unleash the potential of the application fully and, of course, emphasize the skill of its creator. But how does it work?

Categories: FLOSS Project Planets

LN Webworks: Drupal 11's Arrival in 2024 – Is Your Website Prepared?

Planet Drupal - Fri, 2023-11-24 01:42

Drupal 11 is on the horizon, set to make its debut in either August or December 2024. That may seem like a distant future, but in the ever-evolving world of web development, a year and a half can go by in the blink of an eye. So, the big question we're here to explore is this: Is your website ready for the release of Drupal 11?

Let’s take a closer look at why it's crucial not to procrastinate when it comes to Drupal 11 preparation. We'll also discuss the importance of getting a head start and why the process should be more of a steady, consistent effort rather than a last-minute scramble.

An Overview of The Why and How of Drupal 11 

Drupal 11 is generating quite the buzz, and for good reason. Anticipation is building as the Drupal community delves into discussions about Drupal 11, even before Drupal 10 has made its grand exit. This unprecedented level of excitement around Drupal 11 makes it a release like no other.

Categories: FLOSS Project Planets

Paolo Melchiorre: Database generated columns⁽²⁾: Django & PostgreSQL

Planet Python - Thu, 2023-11-23 18:00

An introduction to database generated columns, using PostgreSQL and the new GeneratedField added in Django 5.0.

Categories: FLOSS Project Planets

parallel @ Savannah: GNU Parallel 20231122 ('Grindavík') released

GNU Planet! - Thu, 2023-11-23 17:50

GNU Parallel 20231122 ('Grindavík') has been released. It is available for download at: lbry://@GnuParallel:4

Quote of the month:

  Got around to using GNU parallel for the first time from a suggestion by @jdwasmuth ... now I'm wishing I started using this years ago
    -- Stefan Gavriliuc @GavriliucStefan@twitter

New in this release:

  • -a file1 -a +file2 will link file2 to file1 similar to ::::+
  • --bar shows total time when all jobs are done.
  • Bug fixes and man page updates.

News about GNU Parallel:

GNU Parallel - For people who live life in the parallel lane.

If you like GNU Parallel record a video testimonial: Say who you are, what you use GNU Parallel for, how it helps you, and what you like most about it. Include a command that uses GNU Parallel if you feel like it.

About GNU Parallel

GNU Parallel is a shell tool for executing jobs in parallel using one or more computers. A job can be a single command or a small script that has to be run for each of the lines in the input. The typical input is a list of files, a list of hosts, a list of users, a list of URLs, or a list of tables. A job can also be a command that reads from a pipe. GNU Parallel can then split the input and pipe it into commands in parallel.

If you use xargs and tee today you will find GNU Parallel very easy to use as GNU Parallel is written to have the same options as xargs. If you write loops in shell, you will find GNU Parallel may be able to replace most of the loops and make them run faster by running several jobs in parallel. GNU Parallel can even replace nested loops.

GNU Parallel makes sure output from the commands is the same output as you would get had you run the commands sequentially. This makes it possible to use output from GNU Parallel as input for other programs.

For example you can run this to convert all jpeg files into png and gif files and have a progress bar:

  parallel --bar convert {1} {1.}.{2} ::: *.jpg ::: png gif

Or you can generate big, medium, and small thumbnails of all jpeg files in sub dirs:

  find . -name '*.jpg' |
    parallel convert -geometry {2} {1} {1//}/thumb{2}_{1/} :::: - ::: 50 100 200

You can find more about GNU Parallel at: http://www.gnu.org/s/parallel/

You can install GNU Parallel in just 10 seconds with:

    $ (wget -O - pi.dk/3 || lynx -source pi.dk/3 || curl pi.dk/3/ || \
       fetch -o - http://pi.dk/3 ) > install.sh
    $ sha1sum install.sh | grep 883c667e01eed62f975ad28b6d50e22a
    12345678 883c667e 01eed62f 975ad28b 6d50e22a
    $ md5sum install.sh | grep cc21b4c943fd03e93ae1ae49e28573c0
    cc21b4c9 43fd03e9 3ae1ae49 e28573c0
    $ sha512sum install.sh | grep ec113b49a54e705f86d51e784ebced224fdff3f52
    79945d9d 250b42a4 2067bb00 99da012e c113b49a 54e705f8 6d51e784 ebced224
    fdff3f52 ca588d64 e75f6033 61bd543f d631f592 2f87ceb2 ab034149 6df84a35
    $ bash install.sh

Watch the intro video on http://www.youtube.com/playlist?list=PL284C9FF2488BC6D1

Walk through the tutorial (man parallel_tutorial). Your command line will love you for it.

When using programs that use GNU Parallel to process data for publication please cite:

O. Tange (2018): GNU Parallel 2018, March 2018, https://doi.org/10.5281/zenodo.1146014.

If you like GNU Parallel:

  • Give a demo at your local user group/team/colleagues
  • Post the intro videos on Reddit/Diaspora*/forums/blogs/ Identi.ca/Google+/Twitter/Facebook/Linkedin/mailing lists
  • Get the merchandise https://gnuparallel.threadless.com/designs/gnu-parallel
  • Request or write a review for your favourite blog or magazine
  • Request or build a package for your favourite distribution (if it is not already there)
  • Invite me for your next conference

If you use programs that use GNU Parallel for research:

  • Please cite GNU Parallel in you publications (use --citation)

If GNU Parallel saves you money:


GNU sql aims to give a simple, unified interface for accessing databases through all the different databases' command line clients. So far the focus has been on giving a common way to specify login information (protocol, username, password, hostname, and port number), size (database and table size), and running queries.

The database is addressed using a DBURL. If commands are left out you will get that database's interactive shell.

When using GNU SQL for a publication please cite:

O. Tange (2011): GNU SQL - A Command Line Tool for Accessing Different Databases Using DBURLs, ;login: The USENIX Magazine, April 2011:29-32.

About GNU Niceload

GNU niceload slows down a program when the computer load average (or other system activity) is above a certain limit. When the limit is reached the program will be suspended for some time. If the limit is a soft limit the program will be allowed to run for short amounts of time before being suspended again. If the limit is a hard limit the program will only be allowed to run when the system is below the limit.

Categories: FLOSS Project Planets

Daniel Roy Greenfeld: Three Years at Kraken Tech

Planet Python - Thu, 2023-11-23 14:37

A summary of the past year as I finish my third year working for Kraken Tech, an Octopus Energy Group subsidiary.

Note: As I write this I'm recovering from a sprained shoulder I received in a bicycle accident that makes it hard to type. I'm mostly using voice-to-text, so the text might not be in my normal "writing voice".

I changed roles

I transitioned from leading the tech team for Kraken Tech USA to being an individual contributor for the global team. I do this periodically, cycling between writing code to leading teams, and back again.

It is never easy to transition between roles but this time in particular it was particularly hard. The US Kraken Tech team is a group of talented, diverse, and passionate people. I'm so honored I had the chance to work with them. I'm constantly amazed by what they have accomplished and what they continue to do.

In my new role I'm on the "Developer Foundations" team, exploring ways to improve the coding experience at the company. I've enjoyed writing code full-time again, there's a clarity of purpose that's been fun to embrace. Mostly that's been working in Python with a bit of Django, with short detours into Rust and Golang.

One more thing: For the moment I still have the old management-sounding title, but expect to get something more accurate in the next few months.

I blogged more

Due to that I'm coding full-time again, I more than doubled the number of posts I wrote in 2022.

I worked in the London, UK Office

Audrey and Uma joined me on a move to London, which I documented here.

It has been a delight being able to work in-person with my peers, or at least close in timezone. I'm usually in the office about three out of every five days. I would make it five-out-of-five but I do better with deep thinking outside normal office commotion.

I attended large in-person tech events

After a break of four years I managed to attend the following in chronological order, with transit mode specified:

  • Django London (walk or train)
  • PyCon Italy (airplane)
  • PyCon UK (train)
  • Django Paris (train)

I very much enjoyed meeting old friends and making new ones. Plus, exploring the cities of London, Cardiff, and Paris were adventures of their own.

Helped scale up Kraken Tech to address climate change

As an individual concerned about global climate change I do my part:

  • I compost about 80% of my family's food waste
  • Do our best to recyle all the family's cardboard and paper products
  • We live in a tiny flat with an electric stove
  • Am experimenting with using a portable electric heater instead of the methane gas boiler
  • Have reduced unnecessary air travel as much as possible (which is hard - I love airplanes and airports)

That's great, but I have managed to scale that up tens of thousands of times over by working for Kraken Tech.

As one employee of nine hundred and thirty seven (937) at Kraken Tech, I take payment from a collective of companies whose products are all designed with the purpose of saving the planet. Kraken Tech in particular is responsible for about 55 million people getting onto renewable energy or using non-renewable resources more efficiently.

Let's math that out, using conservative numbers:

58,697.97 = 55,000,000 / 937

Summary: Each employee of Kraken Tech is roughly responsible for 58,698 (rounding up) people contributing significantly less to global climate change.

So if you are in tech in any capacity (coding, management, etc), consider using your skills to help us in our mission of making a healthier planet.

Come and help me save the planet

I'll be upfront that if you want to make the biggest bucks possible in tech, travel a lot, and fly in first place seats, go work for a Big Tech Company or a fintech. Personally, I would rather work toward making the planet better for our descendants. That to me is much more important than helping a billionaire score another billion.

I invite anyone who is reading this to join me on my mission of saving the planet. Our careers page is here.

Please understand that Kraken Tech only hires in countries in which we have a legal entity. So if a role isn't listed for the country in which you can legally work, we probably can't hire you.

If for whatever reason you can't get a job working with me, apply to work at somewhere else into decarbonization. Let me know where you go and I'll celebrate your joining our shared mission.

Categories: FLOSS Project Planets

Andrew Cater: 20231123 - UEFI install on a Raspberry Pi 4 - step by step instructions to a modified d-i

Planet Debian - Thu, 2023-11-23 11:39

 Andy (RattusRattus) and I have been formalising instructions for using Pete Batard's version of Tianocore (and therefore UEFI booting) for the Raspberry Pi 4 together with a Debian arm64 netinst to make a modified Debian installer on a USB stick which "just works" for a Raspberry Pi 4.

Thanks also to Steve McIntyre for initial notes that got this working for us and also to Emmanuel Rocca for putting up some useful instructions for copying.


Plug in a USB stick - use dmesg or your favourite method to see how it is identified.

Make a couple of mount points under /mnt - /mnt/data and /mnt/cdrom

1. Grab a USB stick, Partition using MBR. Make a single VFAT
   partition, type 0xEF (i.e. EFI System Partition)

For a USB stick (identified as sdX) below:

$ sudo parted --script /dev/sdX mklabel msdos $ sudo parted --script /dev/sdX mkpart primary fat32 0% 100% $ sudo mkfs.vfat /dev/sdX1 $ sudo mount /dev/sdX1 /mnt/data/

Download an arm64 netinst.iso


2. Copy the complete contents of partition *1* from a Debian arm64
   installer image into the filesystem (partition 1 is the installer
   stuff itself) on the USB stick, in /

$ sudo kpartx -v -a debian-12.2.0-arm64-netinst.iso # Mount the first partition on the ISO and copy its contents to the stick $ sudo mount /dev/mapper/loop0p1 /mnt/cdrom/ $ sudo rsync -av /mnt/cdrom/ /mnt/data/ $ sudo umount /mnt/cdrom

3. Copy the complete contents of partition *2* from that Debian arm64
  installer image into that filesystem (partition 2 is the ESP) on
   the USB stick, in /

# Same story with the second partition on the ISO $ sudo mount /dev/mapper/loop0p2 /mnt/cdrom/ $ sudo rsync -av /mnt/cdrom/ /mnt/data/ $ sudo umount /mnt/cdrom
$ sudo kpartx -d debian-testing-amd64-netinst.iso $ sudo umount /mnt/data

4. Grab the rpi edk2 build from https://github.com/pftf/RPi4/releases
   (I used 1.35) and extract it. I copied the files there into *2*
   places for now on the USB stick:

   /      (so the Pi will boot using it)
   /rpi4  (so we can find the files again later)

5. Add the preseed.cfg file (attached) into *both* of the two initrd
   files on the USB stick

   - /install.a64/initrd.gz and
   - /install.a64/gtk/initrd.gz

   cpio is an awful tool to use :-(. In each case:

   $ cp /path/to/initrd.gz .
   $ gunzip initrd.gz
   $ echo preseed.cfg | cpio -H newc -o -A -F initrd

$ gzip -9v initrd


$ cp initrd.gz /path/to/initrd.gz

   If you look at the preseed file, it will do a few things:

   - Use an early_command to unmount /media (to work around Debian bug

   - Register a late_command call for /cdrom/finish-rpi (the next
     file - see below) to run at the end of the installation.

   - Force grub installation also to the EFI removable media path,
     needed as the rpi doesn't store EFI boot variables.

   - Stop the installer asking for firmware from removable media (as
     the rpi4 will ask for broadcom bluetooth fw that we can't
     ship. Can be ignored safely.)

6. Copy the finish-rpi script (attached) into / on the USB stick. It
   will be run at the end of the installation, triggered via the
   preseed. It does a couple of things:

   - Copy the edk2 firmware files into the ESP on the system that's
     just been installer

   - Remove shim-signed from the installed systems, as there's a bug
     that causes it to fail on rpi4. I need to dig into this to see
     what the issue is.

That's it! Run the installer as normal, all should Just Work (TM).


# The preseed file itself causes a problem - the installer medium is
# left mounted on /medis so things break in cdrom-detect. Let's see if
# we can fix that!
d-i preseed/early_command string umount /media || true

# Run our command to do rpi setup before reboot
d-i preseed/late_command string /cdrom/finish-rpi

# Force grub installation to the RM path
grub-efi-arm64  grub2/force_efi_extra_removable boolean true

# Don't prompt for missing firmware from removable media,
# e.g. broadcom bluetooth on the rpi.
d-i hw-detect/load_firmware boolean false



set -x

grep -q -a RPI4 /sys/firmware/acpi/tables/CSRT
if [ $? -ne 0 ]; then
    echo "Not running on a Pi 4, exit!"
    exit 0

# Copy the rpi4 firmware binaries onto the installed system.
# Assumes the installer media is mounted on /cdrom.
cp -vr /cdrom/rpi4/. /target/boot/efi/.

# shim-signed doesn't seem happy on rpi4, so remove it
mount --bind /sys /target/sys
mount --bind /proc /target/proc
mount --bind /dev /target/dev

in-target apt-get remove --purge --autoremove -y shim-signed

Categories: FLOSS Project Planets

Andrew Cater: Arm Cambridge - mini-Debcamp 23 November 2023

Planet Debian - Thu, 2023-11-23 09:32

 At Arm for two days before the mini-Debconf this weekend.

First time at Arm for a few years: huge new buildings, shiny lecture theatre.

Arm have made us very welcome. A superb buffet lunch and unlimited coffee plus soft drinks - I think they know what Debian folk are like.
Not enough power blocks laid out at the beginning - only one per table - but we soon fixed that 😀

The room is full of Debian folk: some I know, some new faces. Reminiscing about meeting some of them from 25 years ago - and the chance to thank people for help over a long time.

Andy (RattusRattus) and I have been working out the bugs on an install script using UEFI for a Raspberry Pi 4. More on that in the next post, maybe.

As ever, it's the sort of place where "I can't get into the wiki" is sorted by walking three metres across the room or where an "I can't find where to get X for Raspberry Pi" can be solved by asking the person who builds Raspbian. "Did you try and sign up to the Debian wiki last week - you didn't follow the instructions to mail wiki@ - I _know_ you didn't because I didn't see the mail ... "

My kind of place and my kind of people, as ever.

Thanks again to Arm who are one of our primary sponsors for this mini-Debconf.

Categories: FLOSS Project Planets

Reuven Lerner: Prepare yourself for a better career, with my new Python learning memberships

Planet Python - Thu, 2023-11-23 06:46

For years, students and clients have asked me for a membership program that includes all of my products. And for years, I’ve said, “No.”

Why not? Because I didn’t just want to offer access to my courses. I wanted to make something more than that — with a constant array of new content, interactions among Python users from around the world, and regular opportunities for me to speak with (and learn from) people like you.

Well, good news: After a few months of thought and work, I’m launching my new membership service with all of my Python content — plus much, much more.

Already sound interesting? Go here for more info: https://lernerpython.com/bfcm-2023/

Let’s start with the content: I have an extensive library of Python training and exercises. It costs many thousands of dollars to purchase all of these materials.

But these memberships are about much more than just the courses:

  • Get answers to your questions: I’ll be holding office hours twice each month, once for Python and once for Pandas. Come with your questions — from my courses, exercises, books, or your own projects — and I’ll do my best to answer. Can’t attend in person? Send me your question via e-mail, and I’ll answer on the recording.
  • Share with other Python coders: I’m opening a forum where you’ll be able to ask and answer questions, share code that you’re working on, and get general Python-related advice.
  • Sharpen your skills with exercises: My courses all include tons of exercises. A Python membership will get you access to Weekly Python Exercise, six 15-week courses full of Python practice. A Pandas membership will additionally give you access to Bamboo Weekly, with Pandas puzzles based on current events. We’re all interested in sharpening our skills, and I’m committed to creating exercises that help you to do so.
  • Keep up-to-date with special events: I’m going to give regular talks and lectures on a variety of topics — new developments in Python and Pandas, on machine learning, and on old favorite such as regular expressions, object-oriented programming, concurrency, and advanced Python techniques. I’m also planning to invite guest speakers who can enlighten us all on new and interesting topics. As a member, you’ll be invited to join me at these exclusive events.

My goal, as always, is to help people to earn more money, work on better projects, and ultimately have more opportunities. As part of this weekend’s Black Friday sale, I’m offering a 25% discount to the first 100 people to sign up for my community plans:

The post Prepare yourself for a better career, with my new Python learning memberships appeared first on Reuven Lerner.

Categories: FLOSS Project Planets

Qt Creator 12 released

Planet KDE - Thu, 2023-11-23 06:46

We are happy to announce the release of Qt Creator 12!

Categories: FLOSS Project Planets

TechBeamers Python: 40 Google Interview Questions You Need to Join Google in 2023

Planet Python - Thu, 2023-11-23 04:20

Thinking about Google interviews? It’s like going on an adventure! Google’s questions are like solving puzzles that let your creative side show. No need for big words; these questions are about everyday things. From simple thinking to practical solutions, it’s a fun ride. Explore the world of Google interview questions—where it’s simple yet exciting—and see [...]

The post 40 Google Interview Questions You Need to Join Google in 2023 appeared first on TechBeamers.

Categories: FLOSS Project Planets

Bits from Debian: Discontinuing rsync service on archive.debian.org

Planet Debian - Thu, 2023-11-23 02:00

The proposed and previously announced changes to the rsync service have become effective with archive.debian.org hostname now being discontinued.

The worldwide Debian mirrors network has served archive.debian.org via both HTTP and rsync. As part of improving the reliability of the service for users, the Debian mirrors team is separating the access methods to different host names:

  • http://archive.debian.org/ will remain the entry point for HTTP clients such as APT

  • rsync://rsync.archive.debian.org/debian-archive/ is now available for those who wish to mirror all or parts of the archives.

rsync service on archive.debian.org has stopped, and we encourage anyone using the service to migrate to the new host name as soon as possible.

If you are currently using rsync to the debian-archive from a debian.org server that forms part of the archive.debian.org rotation, we also encourage Administrators to move to the new service name. This will allow us to better manage which back-end servers offer rsync service in future.

Note that due to its nature the content of archive.debian.org does not change frequently - generally there will be several months, possibly more than a year, between updates - so checking for updates more than once a day is unnecessary.

For additional information please reach out to the Debian Mirrors Team maillist.

Categories: FLOSS Project Planets

Niels de Feyter: Maximize Productivity and Success as a Drupal Contractor: 6 Expert Tips

Planet Drupal - Thu, 2023-11-23 00:19
Working as a Drupal contractor can be rewarding and fulfilling, but it also comes with its own set of challenges. In this article, we'll explore 6 tips for boosting productivity and success as an independent contractor. From setting clear goals and priorities to staying organized and keeping your skills up-to-date, these tips can help you be more efficient and effective in your work. We'll also discuss the importance of networking and building relationships, as well as how to negotiate fair and reasonable rates for your services. By following these tips, you can set yourself up for success and enjoy a fulfilling career as an independent Drupal contractor.
Categories: FLOSS Project Planets

Niels de Feyter: Is Drupal Still the Leading CMS in 2022 and 2023?

Planet Drupal - Thu, 2023-11-23 00:19
The question we want to answer in this blog post is whether Drupal is still the leading CMS platform in 2022 and beyond. If you have been thinking of trying out Drupal, this article will help you decide whether it is still worth it in 2022. Let’s jump right in!
Categories: FLOSS Project Planets

Niels de Feyter: Retrospective Drupal Dev Days April 2022 in Gent Belgium

Planet Drupal - Thu, 2023-11-23 00:19
I have been attending Drupal Dev Days for the fifth time and I have to say that this year’s event was as great as the other ones. The tech talks were really interesting and I learned a lot about new trends in the industry. In this article my highlights.
Categories: FLOSS Project Planets

Niels de Feyter: Drupal 8 survey Feeds Migrate usage and functionality

Planet Drupal - Thu, 2023-11-23 00:19
We are working on porting Feeds to Drupal 8 today at the Global Sprints weekend in Amsterdam. We would like to know from you how you use these and similar import/export modules and what functionality you like but still miss in Drupal 8.
Categories: FLOSS Project Planets

Niels de Feyter: Watch Drupalcon Now Orleans sessions on Youtube

Planet Drupal - Thu, 2023-11-23 00:19
As always the Drupal Association puts videe-recording of most sessions on DrupalCon Youtube.
That is also true for the now ongoing DrupalCon New Orleans 2016.
An excellent option for learning and understanding Drupal. (and following the event!)
Categories: FLOSS Project Planets

Niels de Feyter: I am getting excited about Drupal 8

Planet Drupal - Thu, 2023-11-23 00:19
Drupal 8 is better than Drupal 7. Data-modelling, performance, multi-language. It feels so much more robust this day. More functionality is in-core and fully tested.
In a conceptual way, Drupal 8 is not so different from Drupal 7. The Administration-UI’s are the same and you probably will also use the same modules for a project. Site builders will feel really comfortable.
All-in-all I am getting excited about Drupal 8!
Categories: FLOSS Project Planets

Niels de Feyter: Watch Drupalcon Barcelona 2015 sessions on Youtube

Planet Drupal - Thu, 2023-11-23 00:19
More than 125+ sessions from last week's Drupalcon in Barcelona are on Youtube:


Posted by the Drupal Association.

Hope you can learn from it too!
Categories: FLOSS Project Planets

Niels de Feyter: Watch Drupalcon Barcelona 2015 sprinting on drupal.org

Planet Drupal - Thu, 2023-11-23 00:19
One little Drupal community secret: the main-event of a DrupalCon might be sprinting... Right now (Saturday 26th Sep) the Drupal community is pushing hard on the first next-gen CMS that will have stable releases early 2016.
Categories: FLOSS Project Planets