Hi all,
I’m getting a pc for my daughter. I’ll install Fedora KDE Spin. I’m looking for a parental control solution that also integrates with her Android phone. I’m currently using Google’s Family Link which while not great it offers enough. I’d be happy to move to any other solution that can count both device’s usage screen time as one so she doesn’t use up her phone and then move to the PC.
Any cool recommendations?
Parental controls are one of the under developed parts of Linux, the only major one I know of is timekpr
That does make sense as Linux generally is freedom focused
I think the main reason is that most people who use Linux installed it on their own and at that point no parental control is stopping you.
// sry for offtop but
Is everyone is fine with parental control nowadays? It was for paranoid parents only in my childhood and I didn’t know anyone with parental control really.
The worst thing to me and my friends was hidden power supply cable if you did something really wrong.
It’s not really random internet strangers’ place to judge someone’s parenting choices. We don’t know their overall parenting style, the personality of the child, what lessons they may be trying to teach, etc. The only thing we know for certain is that they want to use parental controls, perhaps to ensure they stay safe as they learn how to use the internet responsibly while also having a level of autonomy.
That’s not helicopter parenting, that’s just prudent.
My daughter has ADHD and if we don’t limit her screen time she can literally spend the whole day sitting and watching Minecraft videos, and then later she gets very grumpy, so yeah while I absolutely hate having to do it, it’s more for her own health than content exposure (not blocking websites and app installation other than by age recommendation).
I wonder if maybe some kind of notification system for her, and you, would be useful (in addition to blocking).
Then maybe you can interrupt her, perhaps talk about it, or setup some tools for her to use to help manage stuff and learn along the way.
Guess what I’m going for is the learning/growth angle, rather than just automatic constraints (which hy themselves don’t teach or help us learn to manage this stuff ourselves).
Seems like there’s a need for all this for all kids, not just neuro-atypical.
If your goal is to interrupt her usage to avoid excessive usage, would a pomodoro timer help?
I dunno if that can be setup to force lock the screen or something, but maybe its helpful? Depends if its easy to override?
Oh, sorry, that sounds totally understandable - I wish my best to both you and her!
And don’t see anything wrong with that either way - was just interested how common it is
You should absolutely monitor and restrict content for for children
I agree that parents can get overzealoused but that doesn’t mean it needs to be the wild west with no monitoring
Try ActivityWatch! Releases page here. There is even an AppImage.
Then also install: aw-watcher-web to track duration on sites (eg. firefox).
What’s Activity Watch do?
I looked at Github, by like so many projects there, the descriptions vary from minimal to non-existant.
ActivityWatch tracks time under Linux across all your applications and windows. So you know where you spent your most time on. It can categorize them as well for you. And there are plugin for eg. for Firefox to also track time on sites, etc. So you get a much better understanding about how you spent your time (maybe too much youtube? Or are you too much recompiling the kernel all day?).
Oh, cool. Thanks for the recommendation!
This is very cool
Seems like this topic got lots of attention over night, I really appreciate it!
It looks like there’s really no solution for what I’m looking for, even if I’d move to windows I don’t think I’d get what I want. Apparently only Apple has that but I’m not sure, never owned an apple device.
Seems like this would be a cool project to work on, cross platform cross device parental control with Linux as a first class citizen.
For phone, a couple things.
Look for Mobile Device Management. I’ve been meaning to do this for family for years.
Flyve is an open source MDM. I’ve only tested it so far. You may want to look around for others.
To help with file management on Android, I setup sync jobs between the phone and a desktop (or a user’s laptop) for certain folders, things like DCIM, Download, Movies, Pictures, etc (and certain app data folders such as Camscanner) using Syncthing-Fork on the phone, and Syncthing or SyncTrayzor on a pc. Doing this enables file management from the pc, as changes can sync back to the phone (and since I want my photos on my pc anyway…). Syncthing can work across most any network, including the internet and your phone data plan (so don’t let it sync big stuff using data). It can be locked with a password too, to prevent little hands from mucking things up.
You could, in theory, just let it sync the entire sdcard, but lots of stuff changes all the time, such as app data in the Android folder. No reason to sync that stuff. Plus doing that doesn’t permit finer control of sync for things like DCIM, which I permit to sync over any network and any power state.
Syncthing also works between two or more phones, or PCs (windows or Linux), and has lots of flexibility for sync. I use it extensively to share stuff with friends so we don’t have to think about sharing, especially for larger files. I sync files between phones with no PC, some sync jobs use a pc as intermediary so both phones don’t need to be connected all the time, etc.
Another sync tool, Resilio, is really good. But on the phone it’s a major memory and battery hog, so I use it only for it’s selective Sync feature, and keep it turned off otherwise.
These are just my ideas, everyone’s use-case is different. Your problem is one I’ve been lazily working on for years, so I look forward to the other ideas that come up here.
Flyve’s site says that it’s ceased development, which I found to be slightly amusing since this is the first I’ve heard of it. I have a lot of experience in the MDM space, and to be perfectly frank, for Android your best option is staying first party and sticking with Family Link. The MDM APIs in android land are a hot mess, and have been since their inception, and 3rd party solutions have only ever been adequate at best.
The MDM APIs in android land are a hot mess
Ain’t that the truth.
I avoid Google stuff, actually going Google free on the phone I’m setting up now, so Family Link is out for me. And I try to avoid all-eggs-in-a-basket anyway.
Yea, it sucks. I’ve looked at a LOT of MDM for Android.
Create a new user and give explicit permissions via doas + SELinux (corporate style lockdown). And deal with network policies with a DNS filter on your LAN (or maybe run an unbound service on her device with a different user without a login so she can’t change the config). Easy
For Android, use a FOSS MDM
Any recommendations on a FOSS MDM?
I found this but it’s from a while back: https://h-mdm.com/advanced-web-panel-installation/
Not too many out there TBH. If I had a daughter she’d be getting a Pixel with Grapehene and a DNS server on it (different user) if she really didn’t have any self control
For Android there is TimeLimit.io which is open spurce and in the F-Droid store.
For Linux maybe timekpr-next and some custom scripts to sync the time with the time limit server?
There are various tools (2-3 of them) but they’re all different ones and don’t work with eachother. Usually, a parent needs an easy to use panel to set screentimes, blocked sites, and which apps are allowed or not (and possibly a checkbox to allow the games subcategory every weekend). But all these tools, while exist, are separate and difficult to either install or make work properly.
I recently did a bug report at Linux Mint to create such an admin panel. While this was a feature request, I presented it as a bug, arguing that because of Mint’s unique position as a “home” or “first” distro to new users, its absence is more like a bug. To my surprise, the creator of Mint, while not replying anything additionally, he assigned it a bug status, as if he agreed with the argument. So we might see something like it on Mint, but not for a couple of years yet… By that time you might not need it anymore, but I believe it’ll come eventually to Linux too.
What are you looking to do? I personally would look into more generic management tools. You definitely want to setup blocks for any questionable content and you should be monitoring everything. I would create them an account and then lock it down so that there ability to break things is limited. You can either use Gnome or Xfce4. They both support restrictions. To my knowledge KDE does not focus on restrictions at all.
To start I would setup a Firewall on your family network and then lock down what sites are available. You can block things like adult content and any other things like social media. You say you don’t want her sitting and watching YouTube all day so you could just only allow YouTube at certain times a day. You could then tie her phone into a VPN that goes back to the home network. On the phone you can also use https://timelimit.io/
if you want a paid version similar to pihole with a bit more control and insights I recommend a smart DNS service like Control D.
There’s some free dns servers which block certain stuff (pretty sure adguard has them, other products are available) which can be set on the router and/or the device itself. This is not very flexible but it’s easy to set up.
I haven’t researched this (I don’t have kids), but out of curiosity, what type of mobile device is your daughter using? Also, I think PiHole is a solid recommendation like others recommend.
Otherwise, from a quick Google, I don’t know of anything that can integrate both Linux PC and mobile phone screen time. Honestly, this sounds like a fun project I could implement someday if I ever had the will. However, for right now, in terms of screen time all I can think of is reading system logs (perhaps via SSH) to manually analyze your daughter’s screen time.
She’s using a Samsung android phone with Family Link, it’s meh but does it’s job. I’m looking into limiting screen time more than content restrictions, and having the total screen time across all devices in a centralised service is very much what I’m looking for.