Hacker Public Radio

Hacker Public Radio

Hacker Public Radio is an podcast that releases shows every weekday Monday through Friday. Our shows are produced by the community (you) and can be on any topic that are of interest to hackers and hobbyists.

Episodes

  1. 15H AGO

    HPR4576: Responce to Lee/Elsbeth eps

    This show has been flagged as Explicit by the host. I don't even know where I went with this but the idea was just to say the stuff Elsbeth expereanced was typical for corp-o's and that some of the issues she had getting work or jobs could be exponentially compounded by the result of neurodiversity. More private ADHD resources [ ] 12 Principles for Raising a Chi - Russell A. Barkley.epub 2024-03-08 10:43 453K [ ] 12 Principles for Raising a Child with ADHD - Russell A. Barkley.epub 2021-08-11 19:34 967K [VID] ADD and Loving It.mp4 2023-10-24 09:11 260M [VID] ADHD - Understanding the Superpowers Within [ezwOHAo3O_k].webm 2022-07-01 09:36 161M [IMG] Autism+Spectrum.png 2024-03-03 08:50 520K [SND] BC_200_Answering_Your_Questionsa1qb8-BC_200_Answering_Your_Questionsa1qb8.mp3 2022-12-12 17:41 71M [TXT] BC_200_Answering_Your_Questionsa1qb8-BC_200_Answering_Your_Questionsa1qb8.txt 2023-01-03 10:58 32K [ ] Bubble Gum Brain A Picture Book About Growth Mindset 17.epub 2024-11-13 09:37 1.0M [DIR] Bubble Gum Brain_ A Picture Boo - Julia Cook/ 2024-03-08 10:46 - [DIR] Cognitive.Behavioral.Therapy.for.Daily.Life-xpost/ 2024-06-14 10:29 - [VID] Drugging Our Kids [L7lHeosq-FY].webm 2018-03-30 20:28 432M [SND] Full Audiobook _ You Mean I'm Not Lazy, Stupid or Crazy [A-4-OKGaLDs].mp3 2020-11-01 18:52 49M [ ] Gary Chapman - The Five Love Languages How to Express Heartfelt Commitment to Your Mate (retail) (epub).epub 2021-08-11 19:34 914K [ ] Gary Chapman - The Five Love Languages How to Express Heartfelt Commitment to Your Mate (retail) (epub).pdf 2021-08-11 19:34 1.7M [VID] Learning Differently (ADHD Documentary) [9JMroyfJtO4].webm 2023-09-18 22:29 463M [VID] Living With ADHD BBC Documentary [5lrcxmOolB8].webm 2015-04-08 01:15 138M [VID] Take Back Control - Presentation by Dr. Edward Hallowell [HhoXGXtShGs].webm 2019-10-28 18:32 163M [VID] The Disorder That Will Affect Us All (Dopamine Secrets)- ADHD Documentary [48JKfl0ggPI].webm 2022-12-21 08:32 1.3G [VID] The Disruptors (2021) - [WEBRIP-1080P][AAC 5.1][X264]-RARBG.mp4.mp4 2023-10-24 09:42 774M [ ] The Explosive Child.pdf 2024-11-13 06:21 714K [TXT] The Explosive Child.txt 2024-11-14 01:20 338K [SND] The Explosive Child Audiobook.mp3 2024-11-14 09:30 161M [VID] Trevor Noah on Depression, ADHD & Ketamine Therapy [eKQTS-hAAcI].webm 2024-05-21 14:32 181M [VID] Video by adhdoers Markiplier.mp4 2024-06-20 21:39 4.3M [ ] You Mean I'm Not Lazy, Stupid o - Kate Kelly.epub Provide feedback on this episode.

  2. 4D AGO

    HPR4574: UNIX Curio #0 - Introduction

    This show has been flagged as Clean by the host. This series is dedicated to exploring little-known—and occasionally useful—trinkets lurking in the dusty corners of UNIX-like operating systems. As the zeroth entry of this series, we'll have a little introduction to what it is supposed to be about and why you might want to listen. So that you don't leave without getting at least one piece of useful information, it will end with a little curio that you might find helpful someday. Back in 2010, I was the editor of the newsletter, titled The Open Pitt, for the Western Pennsylvania Linux Users Group in Pittsburgh. We distributed it as a two-page PDF, so had to have enough material to fill each issue. Because we were having some trouble getting contributions, I started writing columns in a series called "UNIX Curio" to occupy the empty space. They were inspired in large part by examples I had seen of people re-inventing ways to do things when utilities for the same purpose had already existed for a long time. The obvious question is: just what is a UNIX Curio? Let's start with the first word, UNIX. While a lot of people write it "Unix" instead, I have chosen to put it in all capitals because that is the way The Open Group, which controls the trademark and the certification process to use it, spells the word 1 . The history of UNIX is complex (search online for more details 2 )—the short version is that many variants emerged, often introducing incompatibilities. Even within AT&T/Bell Laboratories, two major branches came out. The Research UNIX lineage, which includes Seventh Edition (sometimes called Version 7), was often used in universities and government while System III and its more popular successor System V were clearly intended as commercial products 3 . The University of California's BSD was also very influential. My intention is to talk about things that are relatively common; ideally, they would be present on a large majority of systems so you can actually use them. Luckily, there were people who recognized the value in compatibility, so in the mid-1980s they initiated the development of the POSIX standards 4 . Publication of these not only caused commercial UNIX versions to aim for conformance—it gave Free Software implementations of utilities and operating systems a stable base to shoot for rather than having to chase multiple moving targets. As a result, today's GNU/Linux, FreeBSD, NetBSD, and OpenBSD systems generally behave as specified in POSIX, even if they haven't officially earned the UNIX or POSIX labels, so I treat them as part of the UNIX world. Moving on to the second word, "curio," it just means "an object of curiosity, often one considered novel, rare, or bizarre." There are many well-used utilities in the UNIX world, but people forget about others because they are only useful in specific circumstances. And when those circumstances arise, these obscure ones don't always get remembered. One purpose of this series is to point out some of them and describe where they can be appropriately put to use. With the flexible tools available on UNIX systems and the ability to string them together, it shouldn't be surprising that people come up with new ways to accomplish a task. I don't want to claim that these curios are always the best way to do something, just that it can be helpful to know they exist and see the way someone else solved the problem. Also, if you're using an unfamiliar system, sometimes programs you are accustomed to employing might not be installed so it's good to know about options that are widely available. So why am I the person to talk about this subject? I am not a UNIX graybeard with decades of professional computing experience. If I did grow a beard, it would only be partially gray, and my working life has been spent in the engineering world mainly around safety equipment. Sadly, there I have been forced to use Windows almost exclusively. However, in my academic and personal pursuits, I have been involved with using UNIX and Linux for more than 30 years, so I do have a bit of a historical perspective. For some reason, when I encounter an unusual or obscure tool, I want to learn more about it, especially so if I find it to be useful in some way. After gaining that information, I might as well share it with you. In addition, I have been involved with Toastmasters International, a public speaking organization, for about 15 years so I have experience in presenting things orally. I was inspired to turn this article series into podcasts by murph 5 , who delivered a presentation at the 2025 OLF Conference describing how and why to contribute to Hacker Public Radio 6 . The show notes for curios 1 through 3 will consist of the articles as they were originally written (though with references added). Because some examples, especially code, can be difficult to understand when they are read out loud, the podcasts will sometimes present the information in a different way. Show notes for this curio 0 and for curios 4 and later will be written with the podcast format in mind, so they will more closely match what I say. Let's end with an actual curio to kick off the series. Have you ever needed a quick reminder about whether the file you're looking for can be found under the /usr or /var directories? On many UNIX systems, man hier will give you an overview of how the file hierarchy is organized. This manual page is not a standard, but was present in Seventh Edition UNIX 7 and many descendents, direct and indirect, including every Linux distribution I have ever used. There are attempts to standardize the layout; in the Linux world, the Filesystem Hierarchy Standard (FHS) 8 , now hosted by Freedesktop.org 9 , intends to set a path to be followed. It should be noted that systemd has its own idea of how things should be laid out based on the FHS; if it is in use, try man file-hierarchy instead as it will likely be a more accurate description. I hope this gives you a good idea of what to expect in future episodes. The first one will be about shell archives, so keep an eye on Hacker Public Radio's schedule for it to appear. References: The Open Group Trademarks https://www.opengroup.org/trademarks History of Unix https://en.wikipedia.org/wiki/History_of_Unix The Unix Tutorial, Part 3 https://archive.org/details/byte-magazine-1983-10/page/n133/mode/2up POSIX Impact https://sites.google.com/site/jimisaak/posix-impact Correspondent: murph https://hackerpublicradio.org/correspondents/0444.html OLF Conference - December 6th, 2025 https://www.youtube.com/watch?v=hyEunLtqbrA&t=25882 File system hierarchy https://man.cat-v.org/unix_7th/7/hier Finding a successor to the FHS https://lwn.net/Articles/1032947/ Freedesktop.org now hosts the Filesystem Hierarchy Standard https://lwn.net/Articles/1045405/ Provide feedback on this episode.

  3. 5D AGO

    HPR4573: Nuclear Reactor Technology - Ep 6 Thorium Reactors

    This show has been flagged as Clean by the host. Thorium Reactors 01 Introduction In this episode we will describe the use of thorium in nuclear power, including what thorium is, how it differs from uranium, and what sort of reactors can use it. 03 What is thorium 05 How thorium differs from uranium 07 Sources of Thorium 09 Why there is interest in using thorium as a fuel 10 Abundance of Thorium 11 Some Countries Have a Lot of It 12 Thorium Breeder Reactors are Simpler than Uranium Breeder Reactors 14 Supposed Lower Nuclear Weapons Potential 16 What is Thorium Breeding 20 Breeding Ratio 21 What sorts of reactors can use thorium 22 PHWRs - Heavy Water Reactors (Including CANDU) 24 HTR - High Temperature Gas Cooled Reactors 26 MSR - Molten Salt Reactors 29 Light Water Reactors (PWR, BWR) 31 Fast Neutron Reactors 32 The Challenges Facing Thorium Fuelled Reactors 37 Thorium in India - An Example Use Case 39 Why is India Pursuing Using Thorium? 40 How a Thorium Fuel Cycle Would Work in India 43 Current Status 46 Conclusion Thorium is an abundant material that is seen as an alternative to uranium in nuclear power. Experimental thorium power reactors date back to at least the 1960s. No new reactor technology is required to use thorium. Existing well proven reactor designs which have been in use for decades can use thorium as fuel. The common light water reactor designs that popular in some countries however are not well suited to using thorium.  Initial interest in thorium was mainly driven by a perception that uranium would be in short supply in future, and slow neutron thorium reactors were cheaper and simpler than fast neutron uranium reactors. However, huge new high grade supplies of uranium were found in a number of countries, causing uranium prices to fall and reducing interest in finding alternatives. While some R&D continues on thorium fuel in a number of countries, the mainstream of development continues to be on uranium based fuel. Some countries with abundant thorium reserves though maintain a major interest in thorium, with India being the prime example.  In the next episode we will describe small modular reactors. Provide feedback on this episode.

  4. 6D AGO

    HPR4572: Uncommon Commands, Episode 3 - strace

    This show has been flagged as Clean by the host. These are the commands mentioned in the You may need to use "sudo" to run these commands depending on how your system is configured. strace uptime strace ls 2>&1 | grep open strace -e openat ls / strace ls /does/not/exist strace -o ls-trace.log ls strace -ff -o pid12345-trace.log -p 12345 HISTORY The original strace was written by Paul Kranenburg for SunOS and was inspired by its trace utility. The SunOS version of strace was ported to Linux and enhanced by Branko Lankester, who also wrote the Linux kernel support. Even though Paul released strace 2.5 in 1992, Branko's work was based on Paul's strace 1.5 release from 1991. In 1993, Rick Sladkey took on the project. He merged strace 2.5 for SunOS with the second release of strace for Linux, added many features from SVR4's truss(1), and produced a ver‐ sion of strace that worked on both platforms. In 1994 Rick ported strace to SVR4 and Solaris and wrote the automatic configuration support. In 1995 he ported strace to Irix (and became tired of writing about himself in the third person). Beginning with 1996, strace was maintained by Wichert Akkerman. During his tenure, strace development migrated to CVS; ports to FreeBSD and many architectures on Linux (including ARM, IA-64, MIPS, PA-RISC, PowerPC, s390, SPARC) were introduced. In 2002, responsibility for strace maintenance was transferred to Roland McGrath. Since then, strace gained support for several new Linux architectures (AMD64, s390x, SuperH), bi- architecture support for some of them, and received numerous additions and improvements in system calls decoders on Linux; strace development migrated to Git during that period. Since 2009, strace has been actively maintained by Dmitry Levin. During this period, strace has gained support for the AArch64, ARC, AVR32, Blackfin, C-SKY, LoongArch, Meta, Nios II, OpenRISC 1000, RISC-V, Tile/TileGx, and Xtensa architectures. In 2012, unmaintained and apparently broken support for non-Linux operating systems was removed. Also, in 2012 strace gained support for path tracing and file descriptor path decoding. In 2014, support for stack trace printing was added. In 2016, system call tampering was implemented. For the additional information, please refer to the NEWS file and strace repository commit log. Links https://strace.io https://en.wikipedia.org/wiki/Strace https://www.man7.org/linux/man-pages/man1/strace.1.html Provide feedback on this episode.

  5. FEB 6

    HPR4570: Playing Civilization V, Part 8

    This show has been flagged as Clean by the host. In our next look at the game mechanics for Civilization V we examine several related topics: Diplomacy, Spies, and Religious Pressure. They are all ways to interact with other players without the force of arms being involved. And we will discuss the Diplomatic Victory, which is a new victory type added in Civilization V and can be fun to play. Playing Civilization V, Part 8 - Diplomacy Other Players With other players you have a relationship based on their approach to you. They are: Neutral – This is not Friendly nor is it Hostile. Trades you make with them will be fair from their point of view Friendly – They like you, and will accept requests from you more often. Trades will be slightly in your favor from their point of view. Afraid – This only happens if you have a a very substantial advantage in strength, so this is rare. They will readily accept requests from you, and trades will be in your favor Guarded – They are suspicious and defensive, and will be more likely to be unfriendly. Trades will be harder to achieve, and favor them rather than you. Deceptive – They will pretend to be friendly, but they are plotting against you. They may bribe other players to declare war on you. They will not accept requests for help, and trades will be hard to achieve. Hostile – They hate you, and are completely open about it. Trade deals, if you can get them, will be heavily against you. War – This means they have decided to go to war with you. But they need the right conditions, so they may pretend to be Friendly, Neutral, Guarded, or Hostile while they wait for those conditions to mature. These are not set in stone, as you can modify how the other player feels towards you by your actions. If you have friends in common that will improve your relationship, or if you have enemies in common. Agreeing to their requests will also improve things. But if you cannot agree, just say so. The worst negative modifier is when you agree to do something, and then do the opposite. Saying no is also negative, but not as bad. Finally, remember that negatives will erode over time if they are not reinforced. If you want a very detailed look at the mechanics and details of this, check out https://civ-5-cbp.fandom.com/wiki/Detailed_Guide_to_Diplomacy. City-States City-States are also important diplomatic partners. We’ll cover all of the benefits in a different section, but here I want to focus on how they enable the Diplomatic Victory. At a certain point the United Nations will be born out of the World Congress, and when this happens a Diplomatic Victory is possible. This will occur when any player reaches the Information Era, or whenever half of the players have reached the Atomic Era. Diplomatic Victory requires that you get the votes of a certain number of delegates to the United Nations. Each player gets delegates based on their population, and there are also some additional delegates you can earn, such as through building the World Wonder Forbidden Palace which gives you two additional delegates. Anyone planning for a Diplomatic Victory should consider building this Wonder as mandatory. But each City-State gets one delegate, and if you are allied with them their delegate is yours. The mechanics of City-State relationships is that they love gifts, and cash is always the best. So anyone planning a Diplomatic Victory would be well-advised to focus on building a large Treasury. You will know when a World Leader vote is coming up in the United Nations, and can make cash drops on any City-States that are not already allied with you before the vote. But watch out that another player doesn’t do the same thing after you and snipe away some of your allies. Also, you can place your spies in City-States to rig elections, and that is another way to get them to ally with you. Spies and Espionage Spies are simply awarded to you whenever any player enters the Renaissance Era. After that you receive another spy each time to advance to another Era. So you can in general have as many as 5 Spies, but if you build the National Intelligence Agency you get one more. This is a National Wonder, and should be a mandatory build if you are going for a Diplomacy victory. And England starts with 1 extra Spy, so if you play as England you could get as many as 7 Spies. Spies can be used for offense or defense. If you station one of your spies in one of your cities it can operate as a counter-spy, and may thwart or even kill an enemy spy. If you are well ahead in technology, that might be a good use, since other players will be trying to steal your tech. But if you are behind, you might want to use your spies to steal tech from other players. You may be successful in this, but the theft does not go unnoticed, and other player may use one of his spies to counter your operation. If you spy is killed, you will get another one in 3-5 turns, but if your spy was a high-rank spy with promotions, that is a serious loss, so you may want to move that spy elsewhere for a while. Diplomats When you assign a spy to the capital of another player you can designate them as a Diplomat. They will take a few turns (depends on game speed, but around 6 turns on normal speeds) to get set up. This is called “Making Introductions”, but the point is that if you need an effective diplomat, don’t wait until the last minute. Diplomats can be useful in several ways. Early on, they allow you to trade votes in the World Congress. And they will bring you intelligence about intrigues, and you can then share that with other players. And it can also give you a view of the other player’s City Screen. Once you have researched Globalization your Diplomats can help with a Diplomatic Victory because each one counts as one additional vote in the United Nations for World Leader. You can change a spy into a Diplomat and vice versa just by moving the Spy/Diplomat from its current location to another location, which will trigger the ability to change the job assignment. This means that when you first get Spies, and they cannot yet be used to get additional Delegate votes as Diplomats, you can assign them to City-States, where they can help you get alliances. Then as you start to research Globalization, move them to the capitals of other players and turn them into Diplomats. This of course assumes you want to win a Diplomatic victory. If instead you are going for a Science victory and are ahead in Science, it is probably best to station them in your own cities to do counter-intelligence work. If you are ahead in Science, other players will be trying to steal tech from you. Religious Pressure If you have researched all of the Piety Social Policy Tree, you will have option to choose a Reformation Belief to add to your religion. One of these, Underground Sect, allows your spies to exert religious pressure against the city they have been sent to. However, this effect is fairly small. If there is not a Follower of your religion in the city, it seems to do nothing. But in combination it can flip cities to your religion. Start by sending in a Missionary to spread your religion, then your spy can add to that. And you should also combine that with a trade route to add additional religious pressure. And by gradually moving your spies, missionaries, and trade routes from city to city, you can make your religion dominant in a region. Diplomatic Victory This can be a fun way to win, and I have done it. If you want to get a leg up, start with a Civ that gives you advantages, such as Greece or Venice (although my last diplomatic Victory was achieved with Ethiopia, which is generally regarded as a military/domination Civ. You can win any victory type with any civ, and it can be fun to “play against type”). Greece gets an advantage from relations with City-States, which are key to a Diplomatic Victory because each one gets a vote for World Leader. And Venice is interesting because you cannot build settlers. But you can use cash to puppet City-States, and you can purchase units in puppeted City-States as well. Cash is king in the Venice strategy, and you will want to get as many Trade Routes as possible. The first two should send Food to Venice to help boost your population. Since you will only ever have one city as Venice you will want to max it out. All trade routes after that should focus on cash. Use your cash to purchase or upgrade military units, and employ a defensive strategy. You want enough military to deter any aggression against you, but you should avoid making any hostile moves against others if possible. Remember, this is a strategy for a Diplomatic Victory. If you want to go to war, don’t choose Venice. Instead choose one of the Domination Civs, like the Zulus or the Mongols. Links: https://civ-5-cbp.fandom.com/wiki/Detailed_Guide_to_Diplomacy https://www.palain.com/gaming/civilization-v/playing-civilization-v-part-8/ Provide feedback on this episode.

  6. FEB 5

    HPR4569: Kiosk with guest mode on Linux

    This show has been flagged as Clean by the host. Create a Linux kiosk at your library Start without a guest account The first few steps of this process don’t actually require a guest user directory to exist, so do NOT create your guest user account yet. However, you do need to choose what your guest user account is going to be called. A reasonable account name for Don’s purposes is libraryguest. On my personal computer I call my guest account guestaccount, and I’ve used kioskguest on some installations. I avoid just the name “guest” because in modern computing the term “guest” gets used in a few other ways (such as a “guest operating system” in a virtual environment), and it’s just easier to find something unique in logs. Choose a unique name for you guest account, but don’t create it yet. For this article, I’m using libraryguest. Create the PostSession script By default, GDM recognises several states: Init, PostLogin, PreSession, and PostSession. Each state has a directory located in /etc/gdm. When you place a shell script called Default in one of those directories, GDM runs the script when it reaches that state. To trigger actions to clean up a user’s environment upon logout, create the file /etc/gdm/PostSession/Default. You can add whatever actions you want to run upon logout to the Default script. In the case of Don’s library, we wanted to clear everything from the guest’s home directory, including browser history, any LibreOffice files or GIMP files they may have created, and so on. It was important that we limited the very drastic action of removing all user data to just the guest user. We didn’t want the admin’s data to be erased upon logout, so whatever rule we added to /etc/gdm/PostSession/Default had to be limited to the guest user. Here’s what we came up with: #!/usr/bin/sh echo "$USER logged out at `date`" >> /tmp/PostSession.log if [ "X$USER" = "Xlibraryguest" ]; then rm -rf "$HOME" fi exit 0 The first line is for logging purposes. The /tmp directory gets cleared out on most distributions automatically, so we weren’t worried about creating a file that’ll grow forever and eventually crash the computer. If your distribution of choice doesn’t clean out /tmp automatically, create a cron job to do that for you. GDM knows what user triggered the logout process, so the if statement verifies that the user logging out is definitely the libraryguest user (that’s the literal name of the user we created for library patrons).Note that the whitespace around the square brackets is important, so be precise when typing! As long as it is libraryguest, then the script removes the entire user directory ($HOME). That can be extremely dangerous if you make a mistake, so do thorough testing on a dummy system before implementing a script like this! If you get a condition wrong, you could erase your entire home directory upon logout. In this example, I’ve successfully limited the rm command to a logout action performed by user libraryguest. The entire /home/libraryguest directory is erased, and the computer returns to the GDM login screen. When a new user logs in, a fresh directory is created for the user. You can put any number of commands in your script, of course. You don’t have to erase an entire directory. If all you really want to do is clear browser history and any stray data, then you can do that instead. If you need to copy specific configuration files into the environment, you can do that during the PreSession state. Just be sure to test thoroughly before committing your creation to your users! What happens when the guest doesn’t log out At this point, the computer erases all of the user’s data when the user logs out, but a reboot or a shutdown is different to a logout. GDM doesn’t enter a PostSession state after a reboot signal has been received, even if the reboot occurs during an active GDM session. The easiest and safest way to erase an entire home directory when there’s a cut to system power is to use a temporary RAM filesystem (tmpfs) to house the data in the first place. If the systems you’re configuring have 8 GB or more, and the system is exclusively used as a guest computer, you can probably afford to use RAM as the guest’s home directory. If your system doesn’t have a lot of RAM, then you can use the systemd work-around in the next section. Assuming you have the RAM to spare, and that your systems are supported by a backup power supply, you can add a tmpfs entry in /etc/fstab. In this example, my tmpfs is mounted to /home/libraryguest and is just 2 GB: tmpfs /home/libraryguest tmpfs rw,nosuid,nodev,size=2G 0 0 That’s plenty of space for some Internet browsing and even a few LibreOffice documents to be saved while a user works. Mount the new volume: $ sudo mount /home/libraryguest Next, you must create the libraryguest user manually in a terminal.The useradd command creates user profiles: $ sudo useradd --home-dir /home/libraryguest libraryguest useradd: warning: the home directory /home/libraryguest/ already exists. useradd: Not copying any file from skel directory into it. Because you’ve already created a location for the home directory, you do get a warning after creating the user. It’s only a warning, not a fatal error, and the guest account is automatically populated later. Create a password for the new user: $ sudo passwd libraryguest That’s it! You’ve created a guest account that refreshes with every logout and every reboot. You can skip over the next section of this article. Using systemd targets instead of a ramdisk Assuming you can’t create a ramdisk for temporary user data, you can instead create a systemd service that runs a script when the reboot, poweroff, and multi-user targets are triggered: [Unit] Description=Kiosk cleanup [Service] Type=oneshot ExecStart=/usr/local/bin/kiosk-cleanup.sh [Install] WantedBy=poweroff.target reboot.target multi-user.target Save the file to /etc/systemd/system/kioskmode.service and then enable it: $ sudo systemctl enable --now kioskmode The script, like the GDM script, removes the libraryguest directory. Unlike GDM script, this one must also recreate an empty home directory and grant it user permissions: #!/usr/bin/bash rm -rf /home/libraryguest mkdir /home/libraryguest chown -R libraryguest:libraryguest /home/libraryguest Grant the script itself permission to run: $ sudo chmod +x /usr/local/bin/kiosk-cleanup.sh Now the libraryguest user data is erased after: Logout Reboot Shutdown Startup Essentially, no matter how the computer loses its session or its power, the libraryguest account starts fresh when a new session is started. Security and privacy Using systemd to erase data at shutdown and startup isn’t strictly as secure as using a temporary ramdisk for all user data. Should the computer lose power suddenly, all saved user data in the libraryguest account is present during the next boot. Of course, it’s erased as soon as multi-user.target is called by systemd, but it is technically possible to interrupt the boot process and mine for data. You must use full drive encryption to protect data from being discovered by an interrupted boot sequence. Why not just use xguest On many Linux distributions, the xguest package is designed to provide the Guest account, which resets after each logout. It was an extremely useful package that I installed on every machine I owned, because it’s handy to be able to let friends use my computer without risking them making a mess of my home directory. Lately, it seems that xguest is failing to launch a desktop, however, presumably because it relies on X11. If xguest works for you in your tests, then you may want to use it instead of the solution I’ve presented here. My solution offers a lot of flexibility, thanks to GDM’s autodetection of session states. Kiosks in libraries Privacy and personal information is more important than ever. Regardless of how you setup a kiosk for your library, you have an obligation to your users to keep them informed of how their data is being stored. This goes both ways. Users need to know that their data is destined to be erased as soon as they log out, and also they deserve to be assured that their data is not retained. However, it’s also your responsibility to admit that glitches and exceptions could occur. Users need to understand that the computer they’re using are public computers on a public network. Encryption is being used for traffic and for data storage, but you cannot guarantee absolute privacy. As long as everyone understands the arrangement, everyone can compute with confidence. Linux, GDM, and systemd are great tools to help libraries create a sustainable, robust, honest, and communal computing platform. Show notes taken from https://www.both.org/?p=13327Provide feedback on this episode.

  7. FEB 4

    HPR4568: Book reading The Cuckoo's Egg by Cliff Stoll

    This show has been flagged as Clean by the host. 1985, I started to work at a telecom equipment manufacturer. We had a main frame computer in our combined office- and lab room. We were four sitting in the room and it was this one terminal for all of us and maybe even for someone more. Downstairs, we at component technology department had our big climate controlled laboratories. I used an HP 85 computer having the Basic programming language to automize measurements of resistors. And there were several more of them for other measurements of various electronic components. Also more advanced computers were used in the labs and as I recall also with other languages than Basic. I remember I learned briefly a bit about one of those languages but have forgotten which one. The secretary at the department could send Telex messages around the world. We handed a hand written manuscript to her and she typed it into the Telex system. And she had a Xerox computer with big, at least the 8 inch floppy discs. Not so many years later my manager got a Personal computer running DOS and some years later it DOS computers also to the staff. But also very early we had a Sun Unix station. And for many years Unix became my daily driver at work. Before I started to work, in school we had some education in Basic programming. We were using the at least in Sweden very successful and good Luxor ABC 80 computer. At the end of my school time, my school got the top notch ABC 800 with colour screen. At home so I could get a chance to learn somewhat more about computers and Basic programming in my own pace, I got a Zinclair ZX 80 computer, which I later upgraded to ZX 81. One summer job when I was a student I was at Televerket, the Swedish PTT. It meant that I visited numerous of exchange stations. Many at the country side, some with very few subscribers so I could hear the relay start when someone was making a call. At bigger stations it was noise from relays all the time. As I mentioned, after studies were completed I was working with telecom equipment in particular for land line telephony. Not at least I worked with components for the line cards, the card at the telephone exchange that is facing towards the end user. The book The_Cuckoo's_Egg is a hacker thriller based on a true story that happened in the mid-1980's going on for a year. It was written by the hunter shortly after. Cliff Stoll describes Unix commands, which are similar to Linux. He talks about passwords, about encryption and a lot more. Many technical details he describes by using analogy with more common non technical life examples. A security hole in GNU-Emacs software, a software still around today, plays a central role in how the hacker could penetrate. To fix and update security holes are very relevant today as well. Many things in computers and technology have changed. But at the same time very much of the problems are valid today although they are somewhat different. And the way he describes technical details for the non-technical reader are relevant also today, I believe. At the same time as the book has many technical details, he also describes the daily life at home, the left wing culture he belonged to at the university, his long hair and the dress code he belonged to. And the music. He also describes his contacts to numerous authorities and frustration in those contacts. I am very impressed of his analytical research approach, his persistence, his skills and inventiveness including inventiveness of his girl friend and others. One take away for me is that he kept a detailed log book. It is an important research tool. The log book together with the print outs of exactly what the hacker did were core references for analyzing and make conclusions, retract and change conclusions when new information lead to that earlier assumptions were wrong. He also wrote a technical paper about it before he wrote the book. For those interested, there are several videos with him of later date on various topics. Provide feedback on this episode.

4.2
out of 5
34 Ratings

About

Hacker Public Radio is an podcast that releases shows every weekday Monday through Friday. Our shows are produced by the community (you) and can be on any topic that are of interest to hackers and hobbyists.

You Might Also Like