mirror of
https://github.com/oxen-io/lokinet.git
synced 2024-11-11 07:10:36 +00:00
27 lines
629 B
Swift
27 lines
629 B
Swift
|
import Foundation
|
||
|
import AppKit
|
||
|
|
||
|
// Apple deprecated their command line tools to set images on things and replaced them with a
|
||
|
// barely-documented swift function. Yay!
|
||
|
|
||
|
// Usage: ./seticon /path/to/my.icns /path/to/some.dmg
|
||
|
|
||
|
let args = CommandLine.arguments
|
||
|
|
||
|
if args.count != 3 {
|
||
|
print("Error: usage: ./seticon /path/to/my.icns /path/to/some.dmg")
|
||
|
exit(1)
|
||
|
}
|
||
|
|
||
|
var icns = args[1]
|
||
|
var dmg = args[2]
|
||
|
|
||
|
var img = NSImage(byReferencingFile: icns)!
|
||
|
|
||
|
if NSWorkspace.shared.setIcon(img, forFile: dmg) {
|
||
|
print("Set \(dmg) icon to \(icns) [\(img.size)]")
|
||
|
} else {
|
||
|
print("Setting icon failed, don't know why")
|
||
|
exit(2)
|
||
|
}
|