mirror of
https://github.com/kfattic/cupsadmin.git
synced 2026-11-13 19:06:43 -05:00
Flag queues whose driver filters need Rosetta or are missing
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -103,6 +103,8 @@ final class PrinterStore {
|
||||
private(set) var defaultPrinter: String?
|
||||
/// Driver PPD + IPP attributes per queue, for enabling Quick Actions.
|
||||
private(set) var drivers: [String: DriverContext] = [:]
|
||||
/// Filter check per queue (Intel-only or missing filters), from the cached PPDs.
|
||||
private(set) var driverFilters: [String: DriverFilterReport] = [:]
|
||||
var failure: Failure?
|
||||
|
||||
let client = CupsClient()
|
||||
@@ -201,6 +203,11 @@ final class PrinterStore {
|
||||
for printer in printers where drivers[printer.name] == nil {
|
||||
if let context = try? await DriverContext.load(client: client, queue: printer.name) {
|
||||
drivers[printer.name] = context
|
||||
if let ppd = context.ppd {
|
||||
driverFilters[printer.name] = await Task.detached { DriverFilterCheck.check(ppd) }.value
|
||||
} else {
|
||||
driverFilters[printer.name] = nil
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user