---
title: "Oh No! Parent Control — Linux Parental Controls"
description: "Free Ubuntu parental controls: native, Snap, Flatpak and AppImage rules, filename patterns, homework/game approvals, and native execution enforcement."
url: "https://tech.puffyslippers.com/oh-no-parent-control/"
language: "en"
---

**Fedora Workstation 44 support:** Passed manual & automated testing, trying to release by Nov., stay tuned!

Free, open-source Linux parental controls

# Oh No! Parent Control for Linux

*   Set daily screen-time limits for each child, or require approval before any computer use.
*   Keep school apps available, make games ask-first, and block apps that stay off-limits.
*   Manage supported native apps, Snap, Flatpak, and AppImages in one graphical Parent App.
*   Keep supported AppImage updates covered with filename patterns in the same folder, even when version numbers change.
*   Approve extra time with or without game access, from the child’s sign-in screen or desktop. No need to change app blocking policies
*   See remaining time in the desktop panel; revoke approved time and temporary app access when plans change.
*   Use screen-time and app controls offline, without a cloud account.
*   Keep games running when time is up, so your child can resume, save, or quit when more time is approved. Or require running games to close before requesting more time—you choose.

[Explore app controls](https://tech.puffyslippers.com/oh-no-parent-control/#app-controls) [Install Instructions](https://tech.puffyslippers.com/oh-no-parent-control/#setup)

Extends GNOME’s parental-control foundation ([Malcontent](https://gitlab.freedesktop.org/pwithnall/malcontent) 0.14.0+) with app patterns, native execution enforcement, and combined time/app approvals.

Homework time remaining

00:47

Games

Blocked until approved

<a id="app-controls"></a>

## Family app rules that keep up with Linux games.

More than a screen-time timer: manage the apps your child actually uses, keep rules useful after supported AppImage updates, and approve homework time or gaming time in one request.

### Rules that keep matching after updates

Lunar Client changes its AppImage filename when it updates. A same-folder pattern such as Lunar Client-\*.AppImage can keep supported new versions covered by your rule.

[See the Lunar Client example](https://tech.puffyslippers.com/oh-no-parent-control/#appimage-patterns)

### Control more kinds of Linux apps

Choose from supported native apps, Snap, Flatpak, and AppImages, including apps installed just for your child. Manage matching and access from one Parent App.

[Explore app coverage](https://tech.puffyslippers.com/oh-no-parent-control/#app-coverage)

### Enforce rules across the desktop

Supported native targets stay blocked through their usual app-grid, shortcut, file-manager, and command launch routes. Relevant rule changes also close matching apps running under your child’s account.

[See how enforcement works](https://tech.puffyslippers.com/oh-no-parent-control/#desktop-enforcement)

<a id="appimage-patterns"></a>

Same-folder AppImage filename patterns

## A game update should not need a new rule for every filename.

Some AppImages put a version number or integration suffix in their filename. A rule tied to the old file can miss its replacement. Oh No! suggests patterns for supported versioned AppImages; you can edit the pattern or reset it to the default.

Illustrative Lunar Client filenames in the same application folder

| AppImage filename | One rule covers both |
| --- | --- |
| `Lunar Client-3.7.17-ow_GUID.AppImage` | `Lunar Client-*.AppImage` |
| `Lunar Client-3.7.20-ow.AppImage` | `Lunar Client-*.AppImage` |

### Match rule

Choose the precise executable or the versioned filenames your rule covers.

### Access rule

Choose Always Allowed, Soft Blocked, or Hard Blocked independently of matching.

Lunar Client → Pattern Match → Soft Blocked → available when a parent approves game access.

Patterns support \* and ? in the filename, within the same canonical folder. Moving the app to another folder needs a matching rule for that location. Coverage depends on the supported launcher and target; patterns do not recursively follow every moved or renamed program.

[Read the matching guide](https://tech.puffyslippers.com/oh-no-parent-control/help/#app-matching)

<a id="app-coverage"></a>

Supported native, Snap, Flatpak and AppImage app controls

## One place for the Linux apps your child uses.

App Limits discovers identifiable apps for the selected child, including child-only installations. It uses the child’s launcher catalogue rather than the parent’s personal app list. Installation format alone does not guarantee that every launcher is supported.

### Native apps

Match a supported installed executable, including its usual command and file-manager launch routes.

### Snap

Recognize supported Snap launchers by their individual public app command, rather than treating the shared snap launcher as one app.

### Flatpak

Recognize supported Flatpak application references, including apps installed for the child.

### AppImages

Use a precise target or a same-folder pattern for supported versioned files. Lunar Client illustrates why filename patterns matter.

App Limits means app access rules and executable matching. It does not set separate time quotas for individual apps. Screen Limits controls the child’s overall usable computer time.

[Explore App Limits in the guide](https://tech.puffyslippers.com/oh-no-parent-control/help/#app-limits)

<a id="desktop-enforcement"></a>

Per-child native execution enforcement

## Desktop integration with enforcement behind it.

Oh No! uses GNOME’s parental-control foundation and adds enforcement for supported native app targets. Rules cover the same executable launched from the app grid, a desktop shortcut, the file manager, or a command.

### Relevant running-app closure and grant revocation

Newly blocking an app, changing it from soft to hard blocked, approving homework-only access, or revoking a grant can close matching blocked apps across the selected child’s signed-in sessions. Other users’ apps stay open. Save your child’s work before changing access.

### Child-panel requests and restricted sign-in request station

The GNOME panel shows remaining time and opens the child’s request form. When usable time runs out, the screen locks and the session stays open. Sign-in and unlock checks enforce available time; the restricted request station provides an approval route before sign-in or after lockout.

For technical readers

Oh No! builds on AccountsService and Malcontent, integrates with GNOME Shell, PAM, and Polkit, and adds a privileged broker with per-child native execution policy through fapolicyd. Supported AppImageLauncher handling also denies relevant reads of blocked app files, covering its in-memory runtime route.

[Inspect the application policy](https://github.com/Puffy-Slippers-Tech-LLC/parent-control/blob/9ed654baf593d1a6ef89bb7e324317319251136d/docs/SystemDesign/Applications.md) [Read coverage and timing limits](https://tech.puffyslippers.com/oh-no-parent-control/compare-gnome/#coverage-and-timing-limits)

<a id="family-workflow"></a>

Approval with or without soft-app access

## Approve a purpose, as well as more time.

A single request combines computer time with the choice to allow all soft-blocked apps or keep them blocked. Hard-blocked launches remain blocked. Daily allowance and approval-only mode let you choose how much access needs a parent’s OK.

Approve a purpose, as well as more time.

| Family decision | Parent action | Result |
| --- | --- | --- |
| Homework now | Approve with soft apps excluded | School apps available; ask-first games blocked. |
| Gaming allowed | Approve with soft apps included | All soft-blocked apps available; hard-blocked launches stay blocked. |
| Return to homework | Approve without soft apps | Restore blocks and close matching blocked apps. |
| End approved access | Revoke the one-time grant | Remove approved time and temporary app access. Unused daily time remains. |
| Ask before all computer use | Set zero daily minutes | Computer access requires an active approval. |

Choose a preset, a custom duration, or the rest of the day. The request shows an estimate if approved and remembers selections. Parents approve through the OS password prompt; the child receives no administrator access.

Grant time counts elapsed time, including breaks and time spent locked. If daily time remains, natural grant expiry alone does not immediately restore soft-app blocks; session-entry checks or a restoring action apply them. Locking does not pause games or save work.

[Follow the quick start and request walkthrough](https://tech.puffyslippers.com/oh-no-parent-control/#why-this-app)

<a id="gnome-comparison"></a>

Compared with the official GNOME GUI

## A stronger fit for AppImage rules and homework/game approvals.

GNOME 50 already offers daily limits and extra-time approval. Oh No! extends that foundation with broader app management, editable filename patterns, conditional app access, native execution enforcement, and revocation. Those are substantial advantages for families managing Linux games.

| Capability | GNOME Parental Controls app | Oh No! Parent Control |
| --- | --- | --- |
| Individual app catalogue | Flatpak and explicitly opted-in applications in the upstream selector. | Broader supported native, Snap, Flatpak and AppImage catalogue, discovered for the selected child. |
| AppImage filename-pattern editor | Not provided by the reviewed official GUI. | Suggested, editable same-folder filename patterns for supported AppImages; reset to default. |
| Approve time and conditional app access together | Extra screen time is available; no combined soft-app choice in the reviewed official GUI. | Approve homework-only time or include all soft-blocked apps, while retaining hard launch blocks. |
| Additional native execution enforcement | The reviewed frontend uses the standard desktop filtering integrations; it provides no equivalent added fapolicyd policy. | Per-child fapolicyd policy for supported native targets, including usual file-manager and command launch routes. |
| Revoke approved time and app access | No equivalent combined revocation control provided by the reviewed official GUI. | Revoke the one-time grant and temporary app access; unused daily time remains. |

[Read the full, sourced comparison](https://tech.puffyslippers.com/oh-no-parent-control/compare-gnome/)

<a id="automated-testing"></a>

<a id="testing-title"></a>

## Seriously tested

Oh No! Parent Control’s automated tests cover core logic, desktop integration, and end-to-end family journeys. The live count refreshes daily from the public test inventory on GitHub.

Enable JavaScript for live counts, or explore the latest inventory on GitHub.

*   Core logic & edge cases
*   Desktop & system integration
*   End-to-end family journeys
*   Runs on every new release

[View test details](https://github.com/Puffy-Slippers-Tech-LLC/parent-control/blob/main/docs/Test-Coverage.md)

<a id="_R_mj9brivb_-title"></a>

## Okay, fellow dev nerd…

I’ve deliberately put a few hoops between you and this video: this dialog, a CAPTCHA, and an unlisted YouTube link. A little friction for bots; a little secret handshake between one proud dev nerd and another.

If you’ve spent years wrestling with large enterprise software, you’ll more likely feel my pride in massive concurrent fully automated UI testing. 5% efforts on product, 95% on automated testing. Agreed? We're the same people! Laughing? I'm cool!

If that’s not your thing, fair warning: don't waste your time. You’ve been warned. 🙂

### One tiny human check

Slide the puzzle piece into its matching outline to unlock the nerdy stuff.

<a id="_R_mj9brivb_-hint"></a>

Drag the piece, or focus it and use the arrow keys. Release when aligned to snap it into place. Passing over the outline doesn’t count.

<a id="setup"></a>

Available for Ubuntu 26.04 LTS Desktop (amd64 / x86-64) (Fedora 44 coming soon)

Want your distro / DE supported? Feature needs? [Let us know!](https://tech.puffyslippers.com/contact/)

1.  ## Install Oh No! Parent Control
    
    [View on GitHub](https://github.com/Puffy-Slippers-Tech-LLC/parent-control)
    
    ```
    sudo add-apt-repository ppa:puffyslipperstechllc/oh-no-parent-control
    sudo apt update
    sudo apt install oh-no-parent-control
    ```
    
2.  Restart your computer after installation to finish setup.
    

[Linux packages on Launchpad](https://launchpad.net/~puffyslipperstechllc/+archive/ubuntu/oh-no-parent-control) [GNU GPLv3 license](https://github.com/Puffy-Slippers-Tech-LLC/parent-control/blob/main/LICENSE)

<a id="why-this-app"></a>

<a id="quick-start"></a>

## Linux parental controls, step by step.

Install with the commands above and restart. Then use the graphical Parent App to choose your child, set screen-time limits, and choose app rules. The walkthrough shows how to allow homework now and games later; everyday settings and approvals do not need terminal commands.

[Open on YouTube](https://www.youtube.com/watch?v=UZcgZT6kFY4)

### Parent setup (once)

1.  Log in as the parent (admin), open the **Oh No! Parent Control** app and select your child’s standard account.
2.  In **Screen Limits**, turn **Screen Time Limit ON** and set **Daily Time Allowance** to **0 minutes**.
3.  In **App Limits**, set **Minecraft** and **Steam** to **Soft Blocked**. Leave school apps **Always Allowed**.

01

### “You can do homework, but no games.”

Give computer time with games blocked.

1.  Switch users to the **Oh No! Parent Control** Kiosk account at sign-in. Choose your child, the approving parent, and a duration.
2.  Set **“Allow soft blocked apps” OFF**, select **REQUEST**, and enter the parent’s password when asked by the OS.
3.  Return to sign-in and open your child’s account for homework.

School apps open; Soft Blocked games stay blocked.

02

### “Homework’s done. You can play now.”

Give computer time with games allowed.

1.  Switch users to the **Oh No! Parent Control** Kiosk account at sign-in. Choose your child, the approving parent, and a duration.
2.  Set **“Allow soft blocked apps” ON**, select **REQUEST**, and enter the parent’s password when asked by the OS.
3.  Return to sign-in and open your child’s account to play.

Soft Blocked apps can open. Hard Blocked apps stay off-limits.

[Browse the complete guide](https://tech.puffyslippers.com/oh-no-parent-control/help/)

<a id="request-flow"></a>

[

![Request station showing fictional child and parent account choices, duration, and soft-app access inside a colorful game-inspired portal](https://tech.puffyslippers.com/oh-no-parent-control/images/help-request-time.webp)

](https://tech.puffyslippers.com/oh-no-parent-control/images/help-request-time.png)

Sample accounts in an earlier screenshot. The current request footer shows a time estimate if approved. Select the image to enlarge.

When plans change

## “Can I have a little more time?”

Finishing an assignment or asking for another round? Use the same request, and choose whether games belong in that extra time.

1.  ### Child asks
    
    While time remains, select the desktop timer. Before sign-in or after lockout, use the “Oh No! Parent Control” Kiosk account at sign-in and choose the child.
    
2.  ### Parent checks the request
    
    Review the duration, time estimate, and “Allow soft blocked apps” choice: off for homework, on to include games. Approve in the OS password prompt.
    
3.  ### Child carries on
    
    On the desktop, approved time is ready to use. From the “Oh No! Parent Control” Kiosk account, return to sign-in and choose the child’s account to unlock or sign in.
    

### “How long do I have left?”

Remaining time stays in the panel, with a second-by-second countdown during the final minute.

### “Time’s up. Save your work.”

When usable time runs out, the screen locks and the desktop session stays open. Locking does not pause games or save work, so finish and save before the timer ends.

### “Back to homework now.”

Approve a new request with “Allow soft blocked apps” off to keep games blocked again. Running blocked apps close, so save progress first. The request remembers the last choice; check it each time.

[Follow both request routes in the user guide](https://tech.puffyslippers.com/oh-no-parent-control/help/#request-extra-time)

Your household rules

## School apps, ask-first games, and apps that stay off-limits.

In the Parent App, choose your child and open App Limits. Match the executable, then choose its access rule: Always Allowed, Soft Blocked, or Hard Blocked. These are access rules, not separate per-app time quotas.

### Schoolwork → Always Allowed

Use this for apps your child needs for homework. The app can open whenever the child has computer time; it does not bypass the screen-time limit.

### Games with permission → Soft Blocked

Use this for supported games and launchers that need a parent’s OK. They stay blocked during ordinary daily time or homework-only approvals. An approval with “Allow soft blocked apps” on temporarily allows all of them.

### Off-limits apps → Hard Blocked

Use this for apps your child should not open, even during game time. Extra-time approval cannot allow them; a parent must change the rule in App Limits.

### A daily homework allowance

Set Daily Time Allowance in Screen Limits for computer time your child can use without asking each day. Soft-blocked games stay blocked until you approve access. Leave Screen Time Limit on to use extra-time requests.

### “We’re done for today.”

In the Parent App, “Revoke one-time grant” removes approved extra time and game access. Running blocked apps close, so save first. Unused daily time stays available; if none remains, the screen locks.

App rules cover supported app targets; they do not filter web content or control other devices, and do not promise to block separately copied or renamed programs or unsupported launchers.

[Read about app limits](https://tech.puffyslippers.com/oh-no-parent-control/help/#app-limits)

Screen limits

[

![Oh No! Parent Control dashboard showing a child account, screen-time limit, daily allowance, and remaining time](https://tech.puffyslippers.com/oh-no-parent-control/images/help-screen-limits.png)

](https://tech.puffyslippers.com/oh-no-parent-control/images/help-screen-limits.png)

App limits

[

![Oh No! Parent Control dashboard showing installed apps with their match rules and access rules](https://tech.puffyslippers.com/oh-no-parent-control/images/help-app-limits.png)

](https://tech.puffyslippers.com/oh-no-parent-control/images/help-app-limits.png)

Sample accounts are shown. Names and available apps will be different on your computer. Select a screenshot to enlarge.

Private by design

## Local controls. Feedback when you choose.

The app is designed to do its job locally, without turning family routines into somebody else’s data.

### Passwords go straight to the OS

Parent passwords are entered in the system authentication prompt. The child app never receives, stores, or displays them.

### Local control, optional feedback.

Screen-time and app controls work locally, without an online account or internet connection. Optional feedback sends the message, attachments, and diagnostic logs you choose to include to support. There is no cloud dashboard, advertising, analytics, or profiling in the installed app.

### Approval stays narrowly scoped

A parent approves only the request on screen. Approval does not open parent settings or hand over administrator access.

[Read the complete privacy notice](https://tech.puffyslippers.com/oh-no-parent-control/privacy/)

## Linux parental control questions

<a id="ubuntu-parental-controls"></a>

### What is Oh No! Parent Control for Linux?

Oh No! Parent Control provides free, open-source Linux parental controls for families sharing a Linux computer. A graphical Parent App lets parents set daily screen-time allowances and rules for supported apps. Children can ask for extra time, which a parent approves using the OS authentication prompt. Controls work locally and build on the Malcontent parental-control system.

<a id="appimage-patterns"></a>

### Can Oh No! control AppImages such as Lunar Client?

Supported AppImages can be managed in App Limits. For versioned filenames, Oh No! can suggest a same-folder pattern such as Lunar Client-\*.AppImage. A filename pattern can cover supported replacements when version numbers or integration suffixes change. Edit the pattern or reset it to the default, then choose Always Allowed, Soft Blocked, or Hard Blocked. Patterns stay within the same canonical directory; they do not follow every moved or renamed copy.

<a id="gnome-frontend-comparison"></a>

### What does Oh No! add compared with GNOME’s Parental Controls app?

Compared with the official Malcontent 0.14.0 frontend, Oh No! provides a broader supported native/Snap/Flatpak/AppImage catalogue, editable AppImage filename patterns, conditional app permissions tied to time approval, additional native execution enforcement, running-app handling, combined revocation, and a restricted request station. GNOME 50 already supports extra screen time. The distinction is the richer app controls and workflow exposed by Oh No!’s interface; both use the Malcontent backend foundation.

<a id="app-access-not-quotas"></a>

### Does App Limits mean a separate time quota for each app?

No. App Limits controls which supported apps may run and how their executable targets are matched. Screen Limits controls the child’s overall usable computer time. A soft-app-inclusive approval allows all soft-blocked apps; it does not create individual per-game time counters.

<a id="native-launch-enforcement"></a>

### Does blocking work from the file manager or terminal?

For supported native targets, Oh No! adds per-child fapolicyd execution policy covering the same executable opened through the app grid, a shortcut, the file manager, or a command. Relevant restrictive changes also close matching apps owned by the selected child across their sessions, while other users’ apps stay open. This covers supported targets, not universal control of renamed copies, shared-interpreter scripts, or unsupported launchers.

<a id="automated-test-quality"></a>

### How is Oh No! Parent Control tested as it evolves?

The fully automated test suite grows with product changes and new features, checking new capabilities while guarding against regressions. It spans core logic, desktop interactions, installed-system behavior, and end-to-end family journeys. The public, generated test inventory on GitHub tracks ready and pending cases. The product page reads its latest counts directly; ready means runnable and passed, and inventory counts are not code-coverage percentages.

<a id="free-open-source"></a>

### Is Oh No! Parent Control free and open source?

Yes. Oh No! Parent Control is free to install and use, with source code published on GitHub under the GNU General Public License version 3 (GPLv3). Install the Linux package from the project's public PPA on Launchpad. Screen-time and app controls work locally without an online account or internet connection; downloading and updating the package requires internet access.

<a id="easy-parental-controls"></a>

### Is Oh No! Parent Control easy to use?

The installation instructions use three terminal commands to add the PPA and install Oh No! Parent Control, followed by a restart. After installation, everyday use is graphical: choose a child in the Parent App, set a daily allowance, and choose app rules. Children request extra time on screen; parents approve with their OS password. Routine settings and approvals do not require terminal commands, an online account, or a cloud dashboard. The setup walkthrough includes a video and screenshots.

<a id="screen-time-control"></a>

### How does screen-time control work?

Set a daily allowance for each child, or choose zero daily minutes to require parent-approved time. Children can request extra time from their desktop or the dedicated request account at sign-in. A parent approves through the OS authentication prompt. When usable time runs out, the child's screen locks and their session stays open. Locking does not pause games or save work.

<a id="app-blocking"></a>

### How do I allow homework now and gaming later?

In App Limits, leave school apps Always Allowed and set supported games and launchers, such as Minecraft or Steam when listed, to Soft Blocked. With Screen Time Limit on, approve a time request with “Allow soft blocked apps” off for homework, or on to allow all soft-blocked apps for the approved period. Hard Blocked apps cannot be allowed by an extra-time request. App rules cover supported apps, not website content or every game launched through another app.

<a id="offline-and-limits"></a>

### Does it work offline, filter websites, or manage other devices?

Screen-time and app controls work locally without an online account or internet connection. Optional feedback needs a connection. Oh No! Parent Control does not filter website content, provide a cloud dashboard, or control other devices. App rules do not promise to block separately copied or renamed programs or unsupported launchers.

<a id="resources"></a>

Help when you need it

## The details are easy to find.

Find setup help, see what’s new, or review the full privacy notice.

### [Help center](https://tech.puffyslippers.com/oh-no-parent-control/help/)

Quick start, screen limits, app rules, extra-time requests, revoking time, and common questions.

Browse the complete guide

### [Version history](https://tech.puffyslippers.com/oh-no-parent-control/version-history/)

New features, improvements, and bug fixes, with release notes for every version.

Explore the release notes

### [Privacy notice](https://tech.puffyslippers.com/oh-no-parent-control/privacy/)

A plain-language explanation of what stays on the computer, who can see it, and the choices families have.

Read the privacy notice

Still need a hand?[Contact product support](https://tech.puffyslippers.com/contact/)

## Product pages

- [Overview](https://tech.puffyslippers.com/oh-no-parent-control/)
- [User guide](https://tech.puffyslippers.com/oh-no-parent-control/help/)
- [Compare with GNOME](https://tech.puffyslippers.com/oh-no-parent-control/compare-gnome/)
- [Version history](https://tech.puffyslippers.com/oh-no-parent-control/version-history/)
- [App privacy](https://tech.puffyslippers.com/oh-no-parent-control/privacy/)
- [Coming Next?](https://tech.puffyslippers.com/oh-no-parent-control/coming-next/)
