Skip to content

Conversation

@ryonakano
Copy link
Member

@ryonakano ryonakano commented Jun 19, 2025

Fixes #158
Closes #177

TODO

  • The timer is not enabled (started automatically on login) unless you manually enable it for some reason 🤷
user@elementary-8:~$ systemctl --user status io.elementary.settings-daemon.system-update.timer 
○ io.elementary.settings-daemon.system-update.timer - Check for system updates daily
     Loaded: loaded (/usr/lib/systemd/user/io.elementary.settings-daemon.system-update.timer; disabled; preset: enabled)
     Active: inactive (dead)
    Trigger: n/a
   Triggers: ● io.elementary.settings-daemon.system-update.service
user@elementary-8:~$ systemctl enable --user io.elementary.settings-daemon.system-update.timer 
Created symlink /home/user/.config/systemd/user/timers.target.wants/io.elementary.settings-daemon.system-update.timer → /usr/lib/systemd/user/io.elementary.settings-daemon.system-update.timer.
user@elementary-8:~$

@Marukesu
Copy link
Contributor

The timer is not enabled (started automatically on login) unless you manually enable it for some reason 🤷

This should be a issue with manual building only. The deb package is supposed to enable it automatically during the installation.

@ryonakano
Copy link
Member Author

ryonakano commented Jun 22, 2025

The timer is not enabled (started automatically on login) unless you manually enable it for some reason 🤷

This should be a issue with manual building only. The deb package is supposed to enable it automatically during the installation.

Actually I got this result with the settings-daemon build with debuild -us -uc and installed with apt. This would be because the system-update timer and service is defined as user, not system one. Defining the timer and service as system results the timer is enabled by default as expected, but the timer fails to launch the service with the following error:

Failed to set bus address: $DBUS_SESSION_BUS_ADDRESS and $XDG_RUNTIME_DIR not defined (consider using --machine=<user>@.host --user to connect to bus of other user)

@lenemter
Copy link
Member

lenemter commented Jun 22, 2025

Deb package can't enable user services. We had the same issue during OS 8 development when trying to start the dock via the service

@ryonakano
Copy link
Member Author

We had the same issue during OS 8 development when trying to start the dock via the service

How did you resolve this issue?

@lenemter
Copy link
Member

We didn't solve it. We had to make gala launch the dock because of libmutter limitations

@leonardo-lemos
Copy link
Contributor

@ryonakano Can you publish your package branch, please? I'd like to take a look.

@leonardo-lemos
Copy link
Contributor

@ryonakano Changing the compat version from 10 to 12, as suggested here, solved the problem.

○ io.elementary.settings-daemon.system-update.timer - Check for system updates daily
     Loaded: loaded (/usr/lib/systemd/user/io.elementary.settings-daemon.system-update.timer; enabled; preset: enabled)
     Active: inactive (dead)
    Trigger: n/a
   Triggers: ● io.elementary.settings-daemon.system-update.service

@ryonakano
Copy link
Member Author

@leonardo-lemos Thank you very much, that works for me too! (sorry for Japanese texts)

user@elementary-8-daily:~/work$ sudo apt install ./io.elementary.settings-daemon_8.3.1_amd64.deb 
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています... 完了        
状態情報を読み取っています... 完了        
注意、'./io.elementary.settings-daemon_8.3.1_amd64.deb' の代わりに 'io.elementary.settings-daemon' を選択します
以下のパッケージはアップグレードされます:
  io.elementary.settings-daemon
アップグレード: 1 個、新規インストール: 0 個、削除: 0 個、保留: 79 個。
141 kB 中 0 B のアーカイブを取得する必要があります。
この操作後に追加で 66.6 kB のディスク容量が消費されます。
取得:1 /home/user/work/io.elementary.settings-daemon_8.3.1_amd64.deb io.elementary.settings-daemon amd64 8.3.1 [141 kB]
(データベースを読み込んでいます ... 現在 175923 個のファイルとディレクトリがインストールされています。)
.../io.elementary.settings-daemon_8.3.1_amd64.deb を展開する準備をしています ...
io.elementary.settings-daemon (8.3.1) で (8.3.0+r426+pkg20~daily~ubuntu8.1 に) 上書き展開しています ...
io.elementary.settings-daemon (8.3.1) を設定しています ...
Created symlink /etc/systemd/user/timers.target.wants/io.elementary.settings-daemon.system-update.timer 
→ /usr/lib/systemd/user/io.elementary.settings-daemon.system-update.timer.  ★★★Our timer is enabled
io.elementary.settings-daemon.check-for-firmware-updates.service is a disabled or a static unit not runn
ing, not starting it.
desktop-file-utils (0.27-2build1) のトリガを処理しています ...
gnome-menus (3.36.0-1.1ubuntu3) のトリガを処理しています ...
libglib2.0-0t64:amd64 (2.80.0-6ubuntu3.4) のトリガを処理しています ...
N: ファイル '/home/user/work/io.elementary.settings-daemon_8.3.1_amd64.deb' がユーザ '_apt' からアクセスできないため、ダウンロードは root でサンドボックスを通さずに行われます。 - pkgAcquire::Run (13: 許可がありません)
user@elementary-8-daily:~/work$ 

@ryonakano ryonakano mentioned this pull request Jun 22, 2025
@ryonakano ryonakano marked this pull request as ready for review June 22, 2025 22:34
@ryonakano
Copy link
Member Author

Marking as ready for review as building and installing a deb package with this branch and #201 enables the timer and updates are checked automatically after 1 minute of login as expected.

@ryonakano ryonakano requested a review from a team June 22, 2025 22:34
@ryonakano ryonakano merged commit 1e24129 into main Jun 23, 2025
4 checks passed
@ryonakano ryonakano deleted the ryonakano/sysupdate-systemd-timer branch June 23, 2025 11:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Introduce delay (60s) and interval (24h) for system / driver updates checks

5 participants