Bug 2166124 - Split samba server package into [optional] components due to an insane number (19) of optional components
Summary: Split samba server package into [optional] components due to an insane number...
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: samba
Version: 37
Hardware: All
OS: Linux
unspecified
medium
Target Milestone: ---
Assignee: Pavel Filipensky
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2023-01-31 21:38 UTC by Artem S. Tashkinov
Modified: 2023-02-18 16:52 UTC (History)
11 users (show)

Fixed In Version: samba-4.18.0-0.4.rc2.fc38 samba-4.17.5-1.fc37
Clone Of:
Environment:
Last Closed: 2023-02-14 10:34:58 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)

Description Artem S. Tashkinov 2023-01-31 21:38:23 UTC
Why does the latest Samba update, 4.17.5-0.fc37, require so many python3 packages?

python3-charset-normalizer
python3-cryptography
python3-dns
python3-idna
python3-ldb
python3-pysocks
python3-requests
python3-samba
python3-samba-dc
python3-talloc
python3-tdb
python3-tevent
python3-urllib3

I want just the server with nothing fancy. Why am I forced to co-install tens of megabytes of python code?

Comment 1 Artem S. Tashkinov 2023-01-31 21:40:02 UTC
Why do I see Active Directory packages in the list?

python3-samba-dc
samba-dc-libs

And probably samba-dcerpc

Comment 2 Alexander Bokovoy 2023-02-01 06:46:35 UTC
samba-common-tools contains samba-tool Python-based utility. 

Originally it was done to manage Samba AD DC but since ~4.15 or so it was extended to also handle GPOs and other data relevant for member servers. Thus, it is provided as a part of the standard member server deployment:
https://www.samba.org/samba/history/samba-4.15.0.html

This is an upstream decision.

Comment 3 Artem S. Tashkinov 2023-02-01 10:18:25 UTC
I can't believe the samba server package/RPM requires any of these RPMs.

I've just done this and SAMBA works perfectly: rpm -ivh samba-4.17.5-0.fc37.x86_64.rpm samba-libs-4.17.5-0.fc37.x86_64.rpm libnetapi-4.17.5-0.fc37.x86_64.rpm --nodeps

$ systemctl status smb
● smb.service - Samba SMB Daemon
     Loaded: loaded (/usr/lib/systemd/system/smb.service; disabled; preset: disabled)
     Active: active (running) since Wed 2023-02-01 10:06:36 UTC; 2min 16s ago
       Docs: man:smbd(8)
             man:samba(7)
             man:smb.conf(5)
   Main PID: 24355 (smbd)
     Status: "smbd: ready to serve connections..."
      Tasks: 3 (limit: 77085)
     Memory: 18.5M
        CPU: 34ms
     CGroup: /system.slice/smb.service
             ├─24355 /usr/sbin/smbd --foreground --no-process-group
             ├─24359 /usr/sbin/smbd --foreground --no-process-group
             └─24360 /usr/sbin/smbd --foreground --no-process-group

Feb 01 10:06:36 zen systemd[1]: Starting smb.service - Samba SMB Daemon...
Feb 01 10:06:36 zen smbd[24355]: [2023/02/01 15:06:36.484931,  0] ../../source3/smbd/server.c:1741(main)
Feb 01 10:06:36 zen smbd[24355]:   smbd version 4.17.5 started.
Feb 01 10:06:36 zen smbd[24355]:   Copyright Andrew Tridgell and the Samba Team 1992-2022
Feb 01 10:06:36 zen systemd[1]: Started smb.service - Samba SMB Daemon.




This leaves my installation with just these packages (I'm pretty sure some of them are not dependencies but I got them installed earlier):

cifs-utils
cifs-utils-info
keyutils
libldb
libnetapi
libsmbclient
libtalloc
libtevent
libwbclient
samba
samba-client
samba-client-libs
samba-common
samba-common-libs
samba-libs



This is a far cry from what the default samba package enforces on you. Not only those python3 packages but also:

python3-charset-normalizer
python3-cryptography
python3-dns
python3-idna
python3-ldb
python3-pysocks
python3-requests
python3-samba
python3-samba-dc
python3-talloc
python3-tdb
python3-tevent
python3-urllib3

+

lmdb
samba-common-tools
samba-dc-libs
samba-dcerpc
samba-ldb-ldap-modules
tdb-tools


Would be great to have a separate package called:

samba-full

which includes the above 19 (!) optional (!) packages. Why are they optional? Many people need SAMBA _solely_ to share directories on the LAN. Such people need zero additional SAMBA features such as Active Directory support, various samba management utilities, etc. etc. etc.

What's worse I'm perfectly sure in the future "samba-full" will require even more python packages and even more libraries. This is getting out of hand.

Comment 4 Andreas Schneider 2023-02-07 13:17:27 UTC
We will discuss if it makes sense to split out samba-tool to its own package and recommend instead of requiring it.

Comment 5 Pavel Filipensky 2023-02-13 16:16:16 UTC
A new packgage samba-tools is created (containing samba-tool binary).

Comment 6 Fedora Update System 2023-02-14 10:27:52 UTC
FEDORA-2023-35f1c54fc3 has been submitted as an update to Fedora 38. https://bodhi.fedoraproject.org/updates/FEDORA-2023-35f1c54fc3

Comment 7 Fedora Update System 2023-02-14 10:34:58 UTC
FEDORA-2023-35f1c54fc3 has been pushed to the Fedora 38 stable repository.
If problem still persists, please make note of it in this bug report.

Comment 8 Fedora Update System 2023-02-14 10:48:33 UTC
FEDORA-2023-6d265da659 has been submitted as an update to Fedora 37. https://bodhi.fedoraproject.org/updates/FEDORA-2023-6d265da659

Comment 9 Fedora Update System 2023-02-15 01:34:39 UTC
FEDORA-2023-6d265da659 has been pushed to the Fedora 37 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --refresh --advisory=FEDORA-2023-6d265da659`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2023-6d265da659

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 10 Fedora Update System 2023-02-17 18:16:33 UTC
FEDORA-2023-6d265da659 has been pushed to the Fedora 37 stable repository.
If problem still persists, please make note of it in this bug report.

Comment 11 Artem S. Tashkinov 2023-02-18 16:52:33 UTC
(In reply to Pavel Filipensky from comment #5)

Thanks a ton for the fix/change! Really appreciated.


Note You need to log in before you can comment on or make changes to this bug.