Page MenuHomeSolus

Update Samba to 4.8.6 (from the previous 4.7.x branch)
Closed, ResolvedPublic

Description

Rationale:

Samba 4.7.10 introduces stricter buildreq version checking (requires ldb <1.3.x for instance). Since we already moved to ldb 1.3.x with our Samba 4.7.x upgrade, and since the Samba 4.8.x series is now maturing, it makes more sense to switch to the 4.8.x series than to downgrade a stack which is already proven to work with our other applications.

No changes to the default Solus Samba configuration have been made, so the upgrade is expected to be seamless for users.

This issue tracks the stack upgrade status.

4.8.x feature highlights relevant to the default Solus Samba config:

  • Time Machine Support with vfs_fruit
  • Support for lower casing the MDNS Name
  • * BUG 13606: wafsamba: Fix 'make -j<jobs>'. (Yay! \o/)

Build and configuration changes from 4.7.x:

  • Disable the Active Directory Domain Controller functionality since Solus is a Personal Computing -- as opposed to Enterprise -- Client OS. In addition, the AD DC functionality was never tested to work on Solus. Has the additional benefit of removing the confusing 'samba.service' systemd service file (see T6659).
  • Change permissions on /var/lib/samba/private from 0755 to 0700 (like fedora)
  • No-op reorganization of build option order to improve readability
  • Use upstream systemd units (disable unneded samba.service)
  • Depends on updates to talloc, tevent, tdb and ldb. As far as I can tell these buildreq changes only add ABI symbols (no apparent symbol removals).

Release Notes:

Samba rebuild stack:

* samba (4.8.5)
|
+-> tevent (0.9.37) -> talloc (2.1.14)
|
+-> tdb (1.3.16)
|
`-> ldb (1.3.6)

Rebuild stack captured in D3943 now.

sources: https://www.samba.org/ftp/

Rebuilds needed (according to eopkg-deps):

$ eopkg-deps rev ldb
Package: ldb                                                                                                                       
                                           
Reverse Dependency  Release                                                                                                        
samba               6                         
                                                            
Total: 1                             

$ eopkg-deps rev tdb
Package: tdb                      
                                 
Reverse Dependency  Release                                                                                                        
ldb                 11                                                                                                             
rhythmbox           11                                                                                                             
samba               11                                                                                                             
tdb-utils           0                                                                                                              
                                                                                                                                   
Total: 4                                                                                                                           

$ eopkg-deps rev tevent                                                                               
Package: tevent                                                                                                                    
                                                                                                                                   
Reverse Dependency  Release                                                                                                        
ldb                 8                                                                                                              
samba               8                       
                                                   
Total: 2      

$ eopkg-deps rev talloc
Package: talloc              
                       
Reverse Dependency  Release
ldb                 7   
notmuch             7   
samba               7   
tevent              7   
                        
Total: 4

$ eopkg-deps rev samba
Package: samba

Reverse Dependency    Release
acccheck              0
gnome-control-center  41
gvfs                  37
kio-extras            41
kodi                  41
mpd                   39
mpv                   41
mpv-libs              41
nautilus-share        0
python-pysmbc         37
vlc                   41

Total: 11

Test Plan:

  • Build Samba 4.8.6 against ldb-1.3.6, tdb-1.3.16 and tevent-0.9.37
  • Build tevent-0.9.37 against talloc-2.1.14
  • Run sudo testparm -v and check for anomalies
  • sudo systemctl enable --now smb ; smbclient -N -L localhost<- check that the service runs and that it is possible to connect to the smb daemon
  • Build against gvfs-1.36.2, reboot, and ensure that anonymous and authenticated user access works in Nautilus

Event Timeline

ermo created this task.Aug 28 2018, 2:04 PM
Herald removed ermo as the assignee of this task. · View Herald TranscriptAug 28 2018, 2:04 PM
ermo claimed this task.Aug 28 2018, 2:04 PM
ermo updated the task description. (Show Details)
ermo updated the task description. (Show Details)Aug 28 2018, 2:08 PM
ermo updated the task description. (Show Details)Sep 28 2018, 7:13 AM
ermo updated the task description. (Show Details)Sep 29 2018, 12:22 PM
JoshStrobl triaged this task as Normal priority.Oct 16 2018, 10:59 PM
JoshStrobl moved this task from Backlog to Improvement on the Software board.
JoshStrobl added a subscriber: JoshStrobl.

@ermo So I guess the questions are:

  1. What is the state of gvfs compatibility with 4.8.x branch?
  2. Is this going to require us to upgrade the GNOME stack or could this in theory go in now?
ermo added a comment.EditedOct 21 2018, 5:43 PM

@JoshStrobl

  1. gvfs-1.36.2 works when recompiled against samba-4.8.5 (rebuilt and rebooted, checked anonymous and non-anonymous access to share from Nautilus)
  2. Since 1. worked I would say that an upgrade isn't needed and that it can go in now.
ermo renamed this task from Update Samba to 4.8.5 (from the previous 4.7.x branch) to Update Samba to 4.8.6 (from the previous 4.7.x branch).Oct 24 2018, 1:58 PM
ermo updated the task description. (Show Details)
ermo updated the task description. (Show Details)Oct 24 2018, 9:19 PM
ermo reassigned this task from ermo to JoshStrobl.Oct 24 2018, 9:21 PM

Over to you champ -- enjoy! 👍

JoshStrobl changed the task status from Open to In Progress.Oct 24 2018, 10:04 PM
JoshStrobl raised the priority of this task from Normal to Unbreak Now!.