Bug 53656 - Remove ntp or plymouth also remove almost Univention packages
Remove ntp or plymouth also remove almost Univention packages
Status: RESOLVED WONTFIX
Product: UCS
Classification: Unclassified
Component: pkgdb
UCS 5.0
amd64 Mac OS X 10.10
: P5 normal (vote)
: ---
Assigned To: UCS maintainers
UCS maintainers
:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2021-08-16 06:45 CEST by Antonio Nguyen
Modified: 2021-08-16 12:55 CEST (History)
3 users (show)

See Also:
What kind of report is it?: Feature Request
What type of bug is this?: ---
Who will be affected by this bug?: ---
How will those affected feel about the bug?: ---
User Pain:
Enterprise Customer affected?:
School Customer affected?:
ISV affected?:
Waiting Support:
Flags outvoted (downgraded) after PO Review:
Ticket number:
Bug group (optional):
Max CVSS v3 score:


Attachments
apt purge (2.34 KB, text/plain)
2021-08-16 06:45 CEST, Antonio Nguyen
Details
univention-remove (2.38 KB, text/plain)
2021-08-16 06:47 CEST, Antonio Nguyen
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Antonio Nguyen 2021-08-16 06:45:45 CEST
Created attachment 10797 [details]
apt purge

Hi there,
when removing ntp or plymouth, I've noticed it also remove other univention packages too.
I've tried with Saltstack state pkg.purged and apt purge and univention-remove which I attached log in Attachment
Comment 1 Antonio Nguyen 2021-08-16 06:47:24 CEST
Created attachment 10798 [details]
univention-remove
Comment 2 Philipp Hahn univentionstaff 2021-08-16 07:02:51 CEST
"ntp" is essential for UCS to work. Therefore it is fulled in by the role meta package. You MUST NOT remove this package!
"plymouth" currently is also pulled in as a hard "Dependency" by this meta package and thus cannot be removed.

The packages as installed for a purpose and are required for proper functioning of UCS. Removing them will break some functionality of UCS. We (Univention) decided to use certain implementations (NTP over chrony or systemd-timed, ...) and there provide no option to choose a different implementation just because you don't like our choosing.
Instead of removing them you can disable some of them if those services are not needed in your environment, e.g. plymouth by setting `ucr set grub/bootsplash=nosplash`.

FYI: There already is a feature request to switch to a different NTP implementation Bug #47939
Comment 3 Antonio Nguyen 2021-08-16 08:50:00 CEST
(In reply to Philipp Hahn from comment #2)
> "ntp" is essential for UCS to work. Therefore it is fulled in by the role
> meta package. You MUST NOT remove this package!
> "plymouth" currently is also pulled in as a hard "Dependency" by this meta
> package and thus cannot be removed.
> 
> The packages as installed for a purpose and are required for proper
> functioning of UCS. Removing them will break some functionality of UCS. We
> (Univention) decided to use certain implementations (NTP over chrony or
> systemd-timed, ...) and there provide no option to choose a different
> implementation just because you don't like our choosing.
> Instead of removing them you can disable some of them if those services are
> not needed in your environment, e.g. plymouth by setting `ucr set
> grub/bootsplash=nosplash`.
> 
> FYI: There already is a feature request to switch to a different NTP
> implementation Bug #47939

Hi,
Is there any document listed essential packages not just ntp/plymouth, then I can update our Saltstack to work with Univention?

Thanks
Comment 4 Philipp Hahn univentionstaff 2021-08-16 09:34:12 CEST
(In reply to Antonio Nguyen from comment #3)
> Is there any document listed essential packages not just ntp/plymouth, then
> I can update our Saltstack to work with Univention?

I know of no such list.
Depending the the components you have installed (Mail-Server, AD compatible DC, ...) and the server role you have chosen for your systems (Primary/Backup/Replica/Member) there are the high-level packages
  univention-mail
  univention-samba
  ...
  univention-server-master (UCA-5: Primary)
  univention-server-backup
  univention-server-slave (UCS-5: Replica)
  univention-server-member
which pull in all the required Packages through their "Depends" statements in the debian/control files <https://www.debian.org/doc/debian-policy/ch-relationships.html>.
  Pre-Depends / Depends: hard requirement
  Recommends: soft requirement installed by default
  Suggests: soft requirement NOT installed by default

The role packages next pull in either
  univention-role-server-common (when running in a VM or on hardware)
  univention-container-role-server-common (when running inside a container)
when then depends on
  univention-role-common
  univention-container-role-common
respectively. Following that chain transitively you get all the essential UCS packages.
For example you can build a list of all packages via this on a Member Server:
  apt-cache depends --no-recommends --no-suggests --no-conflicts --no-breaks --no-replaces --no-enhances --recurse --installed univention-server-member

Packages ONLY "Recommended" or "Suggested" by any other packages - but there MUST NOT be any other essential package having a (transitive) "Depends" - can be removed, but this might breaks other packages in subtle ways, e.g. you can remove `univention-docker` but this will prevent you from using Apps from the App-Center.
Comment 5 Arvid Requate univentionstaff 2021-08-16 12:55:38 CEST
FYI If you don't want ntp to be active you could set `ucr set ntp/autostart=false"