ISO icon indicating copy to clipboard operation
ISO copied to clipboard

Introduce a rc script for persistent helloSystem specific system changes

Open probonopd opened this issue 4 years ago • 1 comments

Since package updates can overwrite files that we have modified or removed in helloSystem, we need a way to allow for package updates without resorting to pkg lock.

Example: /usr/local/share/dbus-1/services/org.gtk.vfs.UDisks2VolumeMonitor.service must not be present in helloSystem, yet updating the package will reinstall it.

The idea is to apply the helloSystem specific system changes on each system boot and maybe also after every package installation/update by running an rc script.

This can potentially address

  • https://github.com/helloSystem/Filer/issues/65
  • https://github.com/helloSystem/ISO/issues/14
  • Parts of https://github.com/helloSystem/hello/issues/161

probonopd avatar Nov 17 '21 19:11 probonopd

Since rcorder cannot be changed when rc is already running, maybe it's best to run such a script at shutdown time. This way it already ran before the next boot starts, meaning the next boot will already have the changes.

This of course implies that the installer will have to run this script manually once, right after installation to disk.

probonopd avatar Nov 22 '21 11:11 probonopd

/usr/local/share/dbus-1/services/org.gtk.vfs.UDisks2VolumeMonitor.service

Contexts:

% pkg provides /usr/local/share/dbus-1/services/org.gtk.vfs.UDisks2VolumeMonitor.service
Name    : gvfs-1.50.2
Comment : GNOME virtual file system
Repo    : FreeBSD
Filename: usr/local/share/dbus-1/services/org.gtk.vfs.UDisks2VolumeMonitor.service
% file /usr/local/share/dbus-1/services/org.gtk.vfs.UDisks2VolumeMonitor.service
/usr/local/share/dbus-1/services/org.gtk.vfs.UDisks2VolumeMonitor.service: ASCII text
% less /usr/local/share/dbus-1/services/org.gtk.vfs.UDisks2VolumeMonitor.service
% pkg search -o gvfs
devel/gvfs                     GNOME virtual file system
% pkg info --list devel/gvfs | less
% 

https://dbus.freedesktop.org/doc/dbus-specification.html#id-1.13.5.11.5

grahamperrin avatar Sep 25 '22 14:09 grahamperrin

@grahamperrin your previous post ist really hard for me to understand, because it contains no subects and no verbs.

What does it want to tell me?

"Updating the gvfs package will restore the unwanted file /usr/local/share/dbus-1/services/org.gtk.vfs.UDisks2VolumeMonitor.service"?

probonopd avatar Sep 25 '22 15:09 probonopd

Originally linked https://github.com/helloSystem/Filer/issues/65 was difficult to digest.

https://github.com/helloSystem/ISO/issues/312#issuecomment-1257209155 is a condensed point of reference, to know that:

  • the DBUS-oriented file that you mentioned is provided by devel/gvfs.

grahamperrin avatar Sep 25 '22 15:09 grahamperrin

Thanks @grahamperrin. Would appreciate if you could use such sentences for all of your posts, as it makes them that much faster and easier to understand.

We are deleting the unwanted file /usr/local/share/dbus-1/services/org.gtk.vfs.UDisks2VolumeMonitor.service manually, but how can we prevent it from being written again by pkg when the devel/gvfs. package gets updated?

Things like this make me believe that package managers are not suitable for end users, as they can screw up a formerly nicely running (albeit heavily customized) system in unexpected ways. Unless you package the whole system in your own custom packages. Which I don't have the time to do.

probonopd avatar Sep 25 '22 18:09 probonopd