[HOWTO] automatic package updates like Android

Disable any app like Discover which automatically does the updates.

Install os-update (an app supplied by openSUSE).
see GitHub - openSUSE/os-update: Update automatically package based OS and reboot if necessary

this installs two services :
os-update
os-update-timer

os-update-timer triggers os-update daily.

Enable the timer to make sure that it is activated on boot:

sudo systemctl enable os-update.timer

check it is enabled

sudo systemctl status os-update.timer

you must read something like this

● os-update.timer - Update of system timer
Loaded: loaded (/usr/lib/systemd/system/os-update.timer; enabled; preset: disabled)
Active: active (waiting) since Sat 2025-04-19 09:27:12 CEST; 1h 8min ago
Invocation: 2eefc73def344957b6dc7058bac173a5
Trigger: Sun 2025-04-20 01:01:50 CEST; 14h left
Triggers: ● os-update.service

check it is well activated in the list of timers

sudo systemctl list-timers

you must read something like this

NEXT LEFT LAST PASSED UNIT ACTIVATES

Sun 2025-04-20 01:01:50 CEST 14h - - os-update.timer os-update.service

The timer will trigger the update in 14 h

Enjoy :grinning:

openSUSE doc

https://manpages.opensuse.org/Tumbleweed/os-update/os-update.8.en.html

1 Like

I advise you to forbid any reboot during your use of your PC.

Add in /usr/share/os-update/os-update.conf file the following statement :

REBOOT_CMD=none

1 Like

The updating occurs once a day randomly.

In my case:

  • the first time at 0 h 5 mn
    • the second time at 23 h

For me a better hour is everyday at 23 h

To do this

sudo systemctl edit os-update.timer

add the following statements

The updating occurs once a day randomly.

In my case:

  • the first time at 0 h 5 mn
    • the second time at 23 h

For me a better hour is every day at 23 h

To do this

sudo systemctl edit os-update.timer

add the following statements

[Timer]
OnCalendar=*-*-* 23:00
1 Like

Beware

If I want to update Tumbleweed at 23 h each day then I use the following statement
OnCalendar= *-*-* 23:00

but the update occurs at 24 h !

I must use OnCalendar= *-*-* 22:00 if I want the updating occurs at 23 h !

1 Like

OK i understand the problem.

In the file os-update.timer there is in [Timer] the statement RandomizedDelaySec=2h.

This adds a delay randomly from 0 to 2 h.

So you must add in the file /etc/systemd/system/os-update.timer.d/override.conf in [Timer]
the statement RandomizedDelaySec=0h

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.