13

I'm accessing a fresh install of Ubuntu 18.10 and Samba 4.8.4 from macOS clients running Mojave. When connected via SMB, I want the Finder icon to look like a Mac Mini (because that's what Ubuntu 18.10 is running on).

In /etc/samba/smb.conf ([global] section), these values for fruit:model worked:

  • Xserve
  • MacPro
  • iMac

All of these values also work, but resulted in the default icon (that looks like an Apple Cinema Display):

  • MacBook
  • MacMini
  • MacSamba
  • TimeCapsule
  • RackMac

Saw a post recommending model names from /System/Library/CoreServices/CoreTypes.bundle/Contents/Info.plist on a Mac. While there are many there, the ones I tried didn't work.

Re: avahi-daemon, Samba 4.8.4 can set the icon for connected macOS clients without avahi-daemon running (worked for the three models above). While having avahi-daemon helps the server be perpetually visible in the Finder, I'm trying to understand only the working values for fruit:model in the smb.conf.

Anyone have any insight?

3 Answers 3

7

There are plenty of other model strings that should work as values; I believe they are directly read from /System/Library/CoreServices/CoreTypes.bundle/Contents/Info.plist.

Browsing through that file, you should be able to intuit valid values. For example, from the line

UTTypeTagSpecification = { com.apple.device-model-code = ( "Macmini", "Macmini5", "Macmini6", "Macmini7" ); };

I deduced that the proper string for the Mac Mini is Macmini (no CamelCase). MacBook should work, though. As should AppleTV, MacBook5,2, and many more appearing in the aforementioned file.

5
  • Had tried several combinations from Info.plist including ones with the model number without success. That was back on 4.8.4. I understand there were fixes in 4.9. I'm now on 4.10. I ended up disabling Samba's ability to set the icon and instead did it through Avahi. That ended up being successful for me. I'm curious if you've tried some of the model names in your setup and if you were able to get Samba to use the right icon. Commented May 20, 2019 at 21:46
  • @nstuyvesant , Did some quick testing on 19.04 + 4.10. Seems to work. E.x., MacBookPro14,3: see screenshot
    – Leeron R
    Commented May 22, 2019 at 6:12
  • @nstuyvesant , not sure which if any of these lines affect the issue; but when sharing to Macs, always advisable to add in smb.conf: fruit:encoding = native, fruit:metadata = stream, vfs objects = catia fruit streams_xattr. If you find they improve the answer, let me know and I will edit to reflect. Cheers
    – Leeron R
    Commented May 22, 2019 at 6:18
  • Thanks @Leeron. Bug 13746 was corrected in 4.9.4. This was why my previous attempts on 4.8.4 didn't work. I do use some of the other settings you recommended. There's a pretty good Wiki article for Samba with macOS clients at wiki.samba.org/index.php/…. Some of the defaults have changed in newer versions so we should check if some of these are no longer needed. Commented May 22, 2019 at 13:53
  • 1
    Just a note: to see icon/share changes in the Finder you need to restart it. Finder caches network stuff, so you'll not see any changes after modifying/restarting Samba until you restart Finder with Alt+Cmd+Esc.
    – Oleksandr
    Commented Jan 19, 2020 at 11:59
3

One can use the following python script to get the latest available models.

import plistlib
from contextlib import suppress

types = plistlib.load(open("/System/Library/CoreServices/CoreTypes.bundle/Contents/Info.plist", "rb"))

models = []
for uttype in types['UTExportedTypeDeclarations']:
    with suppress(KeyError):
        model = uttype['UTTypeTagSpecification']['com.apple.device-model-code']
        if isinstance(model, str):
            models.append(model)
        else:
            models.extend(model)
fmt = ""
i = 4
models.sort()
prev = models[0][:i]

for model in models:
    if prev != (prev:=model[:i]):
        fmt += "\n\n"
    fmt += f"{model}, "
    
print(fmt)

The currently available values for the 'fruit:model' parameter are:

ADP2,1, 

ADP3,2, 

AirPort, AirPort4, AirPort4,102, AirPort4,107, AirPort5, AirPort5,104, AirPort5,105, AirPort5,108, AirPort5,114, AirPort5,117, AirPort6, AirPort6,106, AirPort7,120, 

AppleTV, AppleTV1,1, 

D201AP, D201AP, D201AP, 

D20AP, D20AP, D20AP, 

D211AP, D211AP, D211AP, 

D21AP, D21AP, D21AP, 

D221AP, D221AP, 

D22AP, D22AP, 

K48AP, 

Laptop, 

M68AP, 

MacBook, MacBook1,1, MacBook1,1,Black, MacBook1,1,White, MacBook10,1@ECOLOR=157,157,160, MacBook10,1@ECOLOR=217,180,154, MacBook10,1@ECOLOR=225,225,223, MacBook10,1@ECOLOR=232,201,195, MacBook10,1@ECOLOR=235,215,191, MacBook2,1, MacBook2,1,Black, MacBook2,1,White, MacBook3,1, MacBook3,1,Black, MacBook3,1,White, MacBook4,1, MacBook4,1,Black, MacBook4,1,White, MacBook5,1, MacBook5,2, MacBook6,1, MacBook7,1, MacBook8,1, MacBook8,1@ECOLOR=155,158,159, MacBook8,1@ECOLOR=157,157,160, MacBook8,1@ECOLOR=225,225,223, MacBook8,1@ECOLOR=235,215,191, MacBook9,1, MacBook9,1@ECOLOR=157,157,160, MacBook9,1@ECOLOR=225,225,223, MacBook9,1@ECOLOR=232,201,195, MacBook9,1@ECOLOR=235,215,191, MacBookAir, MacBookAir1,1, MacBookAir10,1, MacBookAir10,1@ECOLOR=1, MacBookAir10,1@ECOLOR=2, MacBookAir10,1@ECOLOR=3, MacBookAir2,1, MacBookAir3,1, MacBookAir3,2, MacBookAir4,1, MacBookAir4,2, MacBookAir5,1, MacBookAir5,2, MacBookAir6,1, MacBookAir6,2, MacBookAir7,1, MacBookAir7,2, MacBookAir8,1, MacBookAir8,1@ECOLOR=157,157,160, MacBookAir8,1@ECOLOR=217,180,154, MacBookAir8,1@ECOLOR=225,225,223, MacBookAir8,2, MacBookAir8,2@ECOLOR=157,157,160, MacBookAir8,2@ECOLOR=217,180,154, MacBookAir8,2@ECOLOR=225,225,223, MacBookAir9,1, MacBookAir9,1@ECOLOR=157,157,160, MacBookAir9,1@ECOLOR=217,180,154, MacBookAir9,1@ECOLOR=225,225,223, MacBookPro, MacBookPro1,1, MacBookPro1,2, MacBookPro10,1, MacBookPro10,2, MacBookPro11,1, MacBookPro11,2, MacBookPro11,3, MacBookPro11,4, MacBookPro11,5, MacBookPro12,1, MacBookPro13,1, MacBookPro13,1@ECOLOR=157,157,160, MacBookPro13,1@ECOLOR=225,225,223, MacBookPro13,2, MacBookPro13,2@ECOLOR=157,157,160, MacBookPro13,2@ECOLOR=225,225,223, MacBookPro13,3, MacBookPro13,3@ECOLOR=157,157,160, MacBookPro13,3@ECOLOR=225,225,223, MacBookPro14,1, MacBookPro14,1@ECOLOR=157,157,160, MacBookPro14,1@ECOLOR=225,225,223, MacBookPro14,2, MacBookPro14,2@ECOLOR=157,157,160, MacBookPro14,2@ECOLOR=225,225,223, MacBookPro14,3, MacBookPro14,3@ECOLOR=157,157,160, MacBookPro14,3@ECOLOR=225,225,223, MacBookPro15,1, MacBookPro15,1@ECOLOR=157,157,160, MacBookPro15,1@ECOLOR=225,225,223, MacBookPro15,2, MacBookPro15,2@ECOLOR=157,157,160, MacBookPro15,2@ECOLOR=225,225,223, MacBookPro15,3, MacBookPro15,3@ECOLOR=157,157,160, MacBookPro15,3@ECOLOR=225,225,223, MacBookPro15,4, MacBookPro15,4@ECOLOR=157,157,160, MacBookPro15,4@ECOLOR=225,225,223, MacBookPro16,1, MacBookPro16,1@ECOLOR=157,157,160, MacBookPro16,1@ECOLOR=225,225,223, MacBookPro16,2, MacBookPro16,2@ECOLOR=157,157,160, MacBookPro16,2@ECOLOR=225,225,223, MacBookPro16,3, MacBookPro16,3@ECOLOR=157,157,160, MacBookPro16,3@ECOLOR=225,225,223, MacBookPro16,4, MacBookPro16,4@ECOLOR=157,157,160, MacBookPro16,4@ECOLOR=225,225,223, MacBookPro17,1, MacBookPro17,1@ECOLOR=1, MacBookPro17,1@ECOLOR=2, MacBookPro2,1, MacBookPro2,2, MacBookPro3,1, MacBookPro4,1, MacBookPro5,1, MacBookPro5,2, MacBookPro5,3, MacBookPro5,4, MacBookPro5,5, MacBookPro6,1, MacBookPro6,2, MacBookPro7,1, MacBookPro8,1, MacBookPro8,2, MacBookPro8,3, MacBookPro9,1, MacBookPro9,2, 

MacPro, MacPro1,1, MacPro2,1, MacPro3,1, MacPro4,1, MacPro5,1, MacPro6,1, MacPro7,1, MacPro7,1@ECOLOR=225,225,223, MacPro7,1@ECOLOR=226,226,224, 

Macintosh, 

Macmini, Macmini1,1, Macmini2,1, Macmini3,1, Macmini4,1, Macmini5, Macmini6, Macmini7, Macmini8,1, Macmini9,1, 

N18AP, 

N45AP, 

N72AP, 

N81AP, 

N82AP, 

N88AP, 

N90AP, 

PowerBook, PowerBook3,2, PowerBook3,3, PowerBook3,4, PowerBook3,5, PowerBook5,1, PowerBook5,2, PowerBook5,3, PowerBook5,4, PowerBook5,5, PowerBook5,6, PowerBook5,7, PowerBook5,8, PowerBook5,9, PowerBook6,1, PowerBook6,2, PowerBook6,3, PowerBook6,4, PowerBook6,5, PowerBook6,7, PowerBook6,8, PowerMac, PowerMac10,1, PowerMac10,2, PowerMac11,2, PowerMac11,2,Quad, PowerMac12,1, PowerMac3,5, PowerMac3,6, PowerMac4,2, PowerMac4,4, PowerMac4,5, PowerMac6,1, PowerMac6,3, PowerMac6,4, PowerMac7,2, PowerMac7,3, PowerMac8,1, PowerMac8,2, PowerMac9,1, 

RackMac, RackMac1,1, RackMac1,2, RackMac3,1, RackMount, 

TimeCapsule, TimeCapsule6, TimeCapsule6,106, TimeCapsule6,109, TimeCapsule6,113, TimeCapsule6,116, TimeCapsule8,119, 

Tower, 

Watch, 

Windows, Windows2000, Windows2003, Windows2008, Windows7, WindowsVista, WindowsXP, 

Xserve, Xserve1,1, Xserve2,1, Xserve3,1, 

iMac, iMac10,1, iMac11,1, iMac11,2, iMac11,3, iMac12,1, iMac12,2, iMac13,1, iMac13,2, iMac13,3, iMac14,1, iMac14,2, iMac14,3, iMac14,4, iMac15,1, iMac16,1, iMac16,2, iMac17,1, iMac18,1, iMac18,2, iMac18,3, iMac19,1, iMac19,2, iMac20,1, iMac20,2, iMac21,1, iMac21,1@ECOLOR=1, iMac21,1@ECOLOR=3, iMac21,1@ECOLOR=4, iMac21,1@ECOLOR=5, iMac21,1@ECOLOR=6, iMac21,1@ECOLOR=7, iMac21,1@ECOLOR=8, iMac21,2, iMac21,2@ECOLOR=1, iMac21,2@ECOLOR=4, iMac21,2@ECOLOR=5, iMac21,2@ECOLOR=6, iMac4,1, iMac4,2, iMac5,1, iMac5,2, iMac6,1, iMac7,1, iMac8,1, iMac9,1, iMacPro1,1, 

iPad, iPad1,1, 

iPhone, iPhone, iPhone, iPhone, iPhone, iPhone, iPhone, iPhone, iPhone, iPhone1,1, iPhone1,2, iPhone10,1, iPhone10,1, iPhone10,1, iPhone10,2, iPhone10,2, iPhone10,2, iPhone10,3, iPhone10,3, iPhone10,4, iPhone10,4, iPhone10,4, iPhone10,5, iPhone10,5, iPhone10,5, iPhone10,6, iPhone10,6, iPhone2,1, iPhone3,1, 

iPod, iPod1,1, iPod2,1, iPod3,1, iPod4,1

Remember to restart samba and avahi:

sudo service smbd restart
sudo avahi-daemon -k

As well as your Finder by clicking on the Finder while holding Ctrl + Option in that order.

I also had to put the 'fruit:model' parameter in the global section of my 'smb.conf'.

0
0

Plist: /System/Library/CoreServices/CoreTypes.bundle/Contents/Info.plist

Icons: /System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/*.icns

2
  • Your answer could be improved with additional supporting information. Please edit to add further details, such as citations or documentation, so that others can confirm that your answer is correct. You can find more information on how to write good answers in the help center.
    – Community Bot
    Commented Nov 14, 2023 at 1:55
  • How does this even address the question? Commented Nov 14, 2023 at 7:03

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .