update bitcoin, new host related fixes
[distro-setup] / filesystem / etc / systemd / system / bitcoind.service
index 1a754e9b1745bfd564dd8a25baa46ead50ebb87d..1c3377f3e1c13009303db8e73548d0fc2b9a59e3 100644 (file)
@@ -1,5 +1,5 @@
 # iank: copied from /a/opt/bitcoin/contrib/init/bitcoind.service
-# for sources as of 2022-11-14
+# for sources as of 2024-04-22
 
 # It is not recommended to modify this file in-place, because it will
 # be overwritten during package upgrades. If you want to add further
@@ -25,10 +25,11 @@ Wants=network-online.target
 # between 100% and 180% cpu and makes the fan spin annoyingly.
 # 50% still had annoying fan spin. trying out 20%
 CPUQuota=20%
-ExecStart=/usr/bin/bitcoind -daemonwait \
-                            -pid=/run/bitcoind/bitcoind.pid \
+ExecStart=/usr/bin/bitcoind -pid=/run/bitcoind/bitcoind.pid \
                             -conf=/etc/bitcoin/bitcoin.conf \
-                            -datadir=/var/lib/bitcoind
+                            -datadir=/var/lib/bitcoind \
+                            -startupnotify='systemd-notify --ready' \
+                            -shutdownnotify='systemd-notify --stopping'
 
 # Make sure the config directory is readable by the service user
 PermissionsStartOnly=true
@@ -37,8 +38,10 @@ ExecStartPre=/bin/chgrp bitcoin /etc/bitcoin
 # Process management
 ####################
 
-Type=forking
+Type=notify
+NotifyAccess=all
 PIDFile=/run/bitcoind/bitcoind.pid
+
 Restart=on-failure
 TimeoutStartSec=infinity
 TimeoutStopSec=600
@@ -85,5 +88,8 @@ PrivateDevices=true
 # Deny the creation of writable and executable memory mappings.
 MemoryDenyWriteExecute=true
 
+# Restrict ABIs to help ensure MemoryDenyWriteExecute is enforced
+SystemCallArchitectures=native
+
 [Install]
 WantedBy=multi-user.target