Title. Mainly asking for the library side, but PC cafe is also interesting to ask about.
Mainly since Windows 11 is 64-bit only, and it seems Windows 12 is going to subscription based on top of that, neither of which public libraries can afford tossing out computers and paying more in subscription fees than they make with overdue books.
My local library is only open for 2 days a week, due to a lack of funds for hiring more staff in the area. They use older Dell all in ones, and that just makes me think if they don’t have the money for being open 5 days a week, they don’t have the money to buy 4 new computers for the space.
Not even getting into the bigger libraries part of that system or the ones nearby. Some have 8 computers in groups, with 4 stations of groups.
So I was just wondering, if anyone has started or is aware of a Library/Public Computer focused linux-based OS? Perhaps one that allows immutable systems, and the library card system backed most use to enable end user access. Perhaps that’s a config file tucked away somewhere.
And I guess the PC cafe OS is interesting, simply due to the fact that Linux gaming has been making huge strides, and PC cafes are still popular in Japan, Korea, and China.
EDIT: I am not in control or assistance to the library, just looking if there’s a potential solution to libraries like mine. If I could give links to a library computer manager, or if I could give upstream bug reports to people making such software.
Work with informationsecurity and GDPR. And know as a fact that many danish municipalities which administrate the libraries are using, and are happy with, Linux as public facing citizen PC’s in libraries.
They use OS2borgerPC, which translates to OS2citizenPC which is maintained and supported by the danish company Magenta. But it’s open source, so if you are in another country you could just use it - or better, give Magenta a call. They’re great and very reseaonable.
Magenta: https://www.magenta.dk/en/ OS2borgerPC on github: https://github.com/OS2borgerPC
OS2🍔PC
Borgir
That is very cool
So, just to be clear, there’s no actual relation to OS/2?
Good question, but no 🙂
OS2 is a organization which coordinate software development for the participating municipalities and companies which sign up for delivering FOSS. I think OS2 stand for Open Source Software, but not sure.
More about OS2 here: https://www.os2.eu/in-english
You may want something like https://porteus-kiosk.org/
That is for kiosk, they are different from libraries PCs, as you want users to bring their software and just use one you picked.
Most libraries I’m aware of also have kiosks set up with their catalogue information. That’s probably what gems thinking of.
Honestly I’d
- take any distribution that someone at or close to the library is comfortable with, e.g popular Ubuntu or Debian,
- setup a user profile that fits the need of the average library user, e.g Firefox with as a start page the library website
- make sure the library card system do work
- copy /home/thatuser directory somewhere, e.g /root/thatuserunmodified and insure permissions make it unmodifiable
- add a cron task so that every evening 1h after the library close any thatuser session is terminated, /home/thatuser gets deleted, copy the /root/thatuserunmodified to /home/thatuser and fixer permission
- assuming it’s fast enough (I bet it’s take 1min at most as /home/thatuser would be mostly empty) I’d do the process after each logout so that each new visitor gets a fresh session, no downloads from previous users, history, bookmarks, etc. Only what the library consider useful.
That’s it. This way one can still let the OS do it’s updates but the user experience is consistent.
I am no expert. But I think there is an ‘easier’ way too manage this with an overlay filesystem.
Have an immutable base with all permissions set. When a session is started have it be done in an in-memory overlay. On logout drop the overlay.
This might be easier if you don’t want to rely on cronjobs. But as I have no experience myself setting this up… ‘easier’ should be taken with a grain of salt. I just took inspiration from docker.
True keeping it all in memory, especially as it would be of limited size, could be a good solution. That being said a single script and cron job is rather “easy” IMHO.
You are correct. I just have a coworker that has ingrained the philosophy in me to always look for a way to put it in configuration, and not in a script that you have to maintain.
I don’t always agree with that. And I find your solution as valid as mine. It is always a matter of taste and trust. In this case in the script, or the fsdriver. That’s why I always quote the “easier” when comparing solutions to Linux problems.
This is how we used to do it before we had NixOS with impermanence mode. https://nixos.wiki/wiki/Impermanence
Probably a cleaner way indeed but again mindful about how familiar people who can help the library are with NixOS vs Ubuntu/Debian.
All it takes is one person to share a complete config and I’d assert that it’s actually easier than Ubuntu/Debian to setup (especially if you’re talking about deploying a fleet of identical configurations or even a config that lives on a liveISO meant for installing the OS with these options baked-in).
Granted it’s not there yet and you’re correct but soon: One-click deployment would make it even easier than Debian/Ubuntu.Also, IMO Nix is a force-multiplier. For example, I alone could probably configure a whole fleet of systems declaratively with Nix AT LEAST as well as a config script repo that has 20 people contributing to it since, in Nix, if it builds, it’s pretty much ready for production.
The fact alone that Nix allows you to simply list the software you want on the computer and it takes care of everything else (rather than a long, error prone sudo apt-get install command list that may or may not install because dependencies aren’t locked) would cause me to select Nix every single time.
I’m just kind of bewildered how anyone can argue against Nix by invoking a method of Linux install where you sudo apt get 400 commands in a precise order (and if you accidentally go out of order, you might screw up your system) and you also have to carefully manage dependencies and will be SOL if one piece of software requires one version of python while another requires an entirely different version.
Depends on what you want. Search for “Gnome Cafe” for example.
There is an article about Fedora Silverblue as a Kiosk. Silverblue should be configured with weekly automatic updates, every half a year, waiting 3 weeks or so, it has to be updated (this could be automated too).
The only thing is the actualy library software. It can run on a server that is accessed through a website in Firefox fullscreen for example. Gnome has a a special kiosk compositor for that.
Tried to look up GNOME cafe but couldn’t find anything
I find the idea of going to not only an internet café, stereoscopically very nerdy and niche places, but an internet café with only Linux machines amusing
NixOS is immutable and highly reproducible, with the ability to rebuild identical systems with a declarative configuration file–including installed packages.
So in the case of multiple public computers, you would only need to create/maintain one configuration file that defines all of the user profiles, permissions, restrictions, settings, software packages, you name it.
It would without a doubt be what i’d choose for a fleet of public library computers. Extremely reliable and easy to setup to prevent tampering or misuse.
I wouldn’t. Relying on a cookie-cutter distro like NixOS is a recipe for disaster in the long run, IMO. I mean, sure, you could set it all up exactly how you want, but the next person coming in to replace you may not be familiar with NixOS. And there’s no guarantee you’d be around to train them - in my circles we call this the “getting run over by the bus” problem. More importantly, organisations need to be able to get reliable support - support from an actual organization they can count on, when shit hits the fan.
Choose an industry standard, well-supported distro like Debian/Fedora/OpenSUSE (or immutable variants like Fedora Silverblue/openSUSE MicroOS) deploy it using Kickstart/Preseed/Cobbler, and configure/maintain it using Ansible. If you’ve got large number of users to manage, use a centralized user/identity management system like FreeIPA or JumpCloid.
Don’t go for cookie-cutter distros unless you want to be their IT person forever.
What does “cookie-cutter” mean in this context?
If the config file is well documented, you don’t need to worry too much about that bus. And it isn’t several user accounts, it’s a computer that needs to be accessible to nearly everybody. Like said in other comments, a script to destroy everything on logout, and then add a configuration to logout on idle.
I agree that this is a good choice. But I doubt library staff will have the technical background to set this up. But if some local volunteer could do it, it would be a good option.
@queue
nixos with the surf display manager https://search.nixos.org/options?channel=23.05&show=services.xserver.desktopManager.surf-display.enable&from=0&size=50&sort=relevance&type=packages&query=surfservices.xserver.desktopManager.surf-display.enable = true; services.xserver.desktopManager.surf-display.defaultWwwUri = "https://yourlibrary.com/internalzone";
and you should be set. Depends of course on whether you want them to be able to run programs and stuff…
People couldn’t tamper with it even if they wanted to. Like literally how do I tamper with it??
-sincerely, trying to learn NixOS
As a librarian this is an awesome idea but unlikely to work out long term for a couple of reasons relating to the libraries.
-
Patrons will absolutely freak out if the computer they sit down at doesn’t look like the Windows machine they are expecting. Even the time-keeping software we use makes people uncomfortable and it’s just a countdown clock for the 30 minutes they signed up for. I’ve had a very expensive Mac desktop for art and music software go totally unused for years because most patrons want a Windows computer to check their Hotmail. Librarian sobs
-
Unless the library 'technologist" or IT team is already really into Linux in their off time AND paid well enough to bring that experience with them to the office, the people tasked with keeping it running will fail within 6 months and revert it back to something they can fix fast. Generally there’s one IT department that’s handing the libraries and other government run service offices and they will not take the time to do anything out of the ordinary.
Maybe for a subset of computers in a large library like the stand-up quick access stations or catalog lookup computers near the books. Linux can and does a lot of good keeping these one-use stations going despite the fact the run on 1998 Dell Potatoes.
In my experience as soon as they get a web browser, people don’t care. Most people are lost when they have to deal with the file manager on Windows anyway…
To your first point, a huge portion of the use library computers get is from people who don’t own or can’t afford their own computer but just need to print government/work/school docs with some minimal document editor. Sure you could run with LibreOffice or something and hope no one cares, but you’re right that most people would freak out if they can’t open something in Word or have to learn how to print something in Gnome/KDE/whatever.
Most of them are following instructions they are getting from elsewhere to do those tasks and most instructions the offices are giving out are expecting a Windows computer. I still have a lot of users looking for the Blue E. headdesk
I strongly disagree with your first point. Kids these days are more familiar with ChromeOS than Windows. Google has proven that as long as it has Chrome and a taskbar at the bottom people will be fine with it.
For long term support I also disagree with #2. The company I work for develops software that goes into both windows and Linux environments. The Windows environments are several orders of magnitude harder to secure and maintain because you never know what bullshit Microsoft is going to pull with their updates.
It may be easier to find a Windows IT person to maintain the system but it’s going to be significantly more expensive and significantly less reliable than an immutable OS like Fedora silverblue.
The vast majority of computer users at my libraries have been adults over 50. The kids in my areas use the Chrome OS Computers they are getting from the schools.
If we had a lot of under 25s coming in to use the public PCs, I agree that Chrome OS would be a good pick.
I live in a large metropolitan area in the US and my kids have never used ChromeOS. Our school district issues iPads for elementary school and middle school and beyond receive Windows laptops. Our public library is 100% Windows with the exception of the makerspace which has a few imacs scattered around. Their Windows computers re-image themselves after every use so securing them is really not much of an issue.
Sorry, but definitely not true.
Source: See my comment regarding the majority of danish municipalities using Linux. No problem for the users or the people doing the sysadmin work.
-
I don’t know if something like this exists, but I think the right solution for you would be something that my school did with our computers. They had installed Mint on it, but it was configured in a way, that when you rebooted the whole user profile would be resetted.
Windows has had this for literally decades, too. You have to use a 3rd party software, but it exists and is easy to use.
Honestly I think a bunch of simple scripts would be more than enough.
For guest account all you need is to clear their directory in /home/ every logout/login. If you don’t give them root permission, they cannot mess with the system.
I’m generally not a fan of endless os (very locked down), but this might be a good low-maintenance option for libraries.
Endless comes out of the box with offline educational materials and learning apps.
Flatpak based distribution.
ChromeOS Flex is an interesting choice for kiosks. There’s a great case study from Nordic Choice Hotels: https://cloud.google.com/blog/products/chrome-enterprise/nordic-choice-hotels-bounces-back-ransomware-attack-chromeos-flex.
Being a Google product, I don’t expect it to have a long life span
Are you in control of the library, or is this just as a recommendation?
Not in control, just curious if I could give assistance to my local library.
You people jump on wild rumors like crazy. Windows isn’t going to be subscription based on 12.
Boosting so I can revisit this comment in a couple years.
There have been rumors that Windows is going to become a subscription software for over 10 years. I remember it when Windows 8 was in development.
Neat.
They’ve been switching all their software to subscription based, it’s coming for windows too, it’s less a question of if but rather of when. I’m sure there’ll be a “free” edition though, with more ads and whatever else they can think of. Enshittification doesn’t stop.
Right? No where did it say that. People are insane. Anyone who seriously repeats things like that as fact, needs their internet privileges taken away.
We do not joke about such things
Then learn to fact check instead of believing rumours.
You misunderstand me. I was glibly remarking we don’t separate people from their rights
Omg. Is everyone on Lemmy autistic? You really think I was being serious? Jesus Christ.
You need your internet privileges removed for that reply.
Joking or not, autists and normal people alike are protected from wishes such as yours 😎
The public library in my city uses OpenSuse
They could do a thin client type of deal and just virtual desktops that get deleted at the end of the session. If they are on 32bit hardware that really limits options on operating systems but a single backend computer hosting virtual desktops can be a donated 64bit PC/Server.
The sad part is it seems that there isn’t much of any thin client solutions that don’t require a gigantic licensing fee that negates the savings of doing the thin clients
Also from my experience working helpdesk at an organization that was all thin clients, they’re a pain to support because if anything happens the first thing people try to do is reboot it which tends to cause orphaned sessions on the server. For the public computers at the library that would matter less since very few people would need their profile that got disconnected, but it’s still extra friction
My local library uses thin clients with virtual desktops but I have a feeling the library system here is funded much better than the OP’s library.
Yeah we only have a few decades of software to choose 32bit stuff from.
Software is fine but OS wise there are lots less than there was 5 years ago and it only going to get smaller but at least there Debian.
Puppy Linux and easyos have those options… It’s been a bit since I’ve used them tho…