- Cờ
--no-quarantine, vốn được dùng để buộc vượt qua macOS Gatekeeper để chạy phần mềm chưa được ký, sẽ bị loại bỏ
- Thay đổi này là biện pháp tăng cường bảo mật, và sẽ được vận hành theo hướng tuân thủ chính sách ký mã và công chứng của Apple
- Khi macOS Tahoe trở thành phiên bản macOS cuối cùng dành cho Intel, nhu cầu đối với tính năng này đã giảm đi đáng kể
- Trên ARM Mac, không thể chạy mã arm64 không có chữ ký
- Từ ngày 1 tháng 9 năm 2026, sẽ ngừng hỗ trợ cask thất bại kiểm tra Gatekeeper
Động cơ
- Cả Apple và Homebrew đều đang đi theo hướng chấm dứt hỗ trợ Intel Mac, và
--no-quarantine là một tính năng vượt qua bảo mật nên không còn lý do để duy trì
Ảnh hưởng đến người dùng
- Việc loại bỏ tùy chọn này sẽ mang lại môi trường cài đặt phù hợp với tiêu chuẩn bảo mật của macOS, và Homebrew sẽ không còn cung cấp tính năng vượt qua bảo mật nữa
1 bình luận
Ý kiến Hacker News
Theo cách tôi hiểu, thay đổi lần này dường như chủ yếu chỉ ảnh hưởng đến cask trên macOS
cask được dùng để cài các ứng dụng nhị phân dạng dmg hoặc pkg, và đa số trong đó vốn đã là nhị phân có chữ ký
Có vẻ nó không ảnh hưởng đến chức năng tải về·biên dịch·cài đặt phần mềm mã nguồn mở của Homebrew
Thực ra điểm duy nhất khiến Homebrew tốt hơn các trình quản lý gói khác chính là cask
Tôi cài Homebrew vào một prefix tách biệt để chỉ dùng cask, và không thêm nó vào PATH
Tôi cũng đang dùng vài ứng dụng không có chữ ký
Theo tôi, quan trọng hơn việc có chữ ký hay không là quy trình tuyển chọn·xác minh như của Homebrew hay Debian
Nếu tùy chọn
--no-quarantinebiến mất thì mỗi lần cập nhật lại phải duyệt thủ công, khá bất tiệnNhìn vào danh sách gói chính thức thì dài đến hàng trăm trang
Ở đó ghi rõ rằng “mục tiêu là cung cấp mọi thứ dưới dạng bottle”
Vì vậy thay đổi lần này không tác động trực tiếp, nhưng vẫn cần biết rằng nó không còn thiên về build từ source như trước nữa
Thảo luận liên quan: Homebrew Discussions #6334
Từ lâu tôi đã dự đoán Gatekeeper sẽ dần bị siết chặt, và giờ điều đó đang thành hiện thực
Bài viết liên quan: Ars Technica, MacRumors, Daring Fireball
Đến lúc chiếc M1 MacBook Air của tôi bắt đầu chậm đi, có lẽ tôi sẽ chuyển hẳn sang Linux được
Mua phần cứng Apple là một cách dung túng cho kiểu hành xử đó
Xét đến quy mô thị trường Mac và tỷ lệ lập trình viên sử dụng nó, tôi cho rằng Apple khó có thể chặn hoàn toàn
Homebrew là một trình quản lý gói thân thiện với người dùng phổ thông hơn là công cụ cho dân chuyên
Có rất nhiều bất mãn về việc ép cập nhật, loại bỏ phiên bản cũ, chặn thảo luận, v.v.
Vì vậy tôi đang cân nhắc chuyển sang MacPorts
Thái độ công kích của các maintainer cũng là một vấn đề
Tôi nhớ thời nó vẫn build ổn ngay cả trên những chiếc PowerBook cũ
Bắt chước Apple bỏ hỗ trợ phiên bản cũ đi ngược lại tinh thần mã nguồn mở
Tôi bị sốc khi thấy dòng chữ “kết thúc hỗ trợ Intel”
Tôi cho rằng vấn đề là cách giao tiếp thiếu thân thiện của các maintainer Homebrew
Về mặt kỹ thuật, chạy
xattrở bước postinstall là hợp lý, nhưng thái độ thì cần được cải thiệnBan đầu tôi không hiểu chính xác thay đổi này có ý nghĩa gì
Tôi bối rối không biết có phải build từ source bằng Homebrew bị chặn hay chỉ các nhị phân có chữ ký mới chạy được
Tùy chọn
--no-quarantineđã bị bỏ, nhưng người dùng vẫn có thể tự gỡ cờ đóCuối cùng đây là một biện pháp nhằm đẩy người dùng theo hướng ưu tiên nhị phân có chữ ký
Các nhị phân tự build vẫn có thể chạy được
Việc tự thân xóa tùy chọn
--no-gatekeeperkhông phải chuyện lớnNó đơn thuần chỉ có vai trò xóa thuộc tính
com.apple.quarantineVấn đề thực sự là mọi cask nay phải có chữ ký·công chứng từ Apple Developer Program
Với các nhà phát triển mã nguồn mở, chi phí 99 USD mỗi năm và việc phải công khai danh tính pháp lý là một gánh nặng
Sẽ thật tốt nếu Apple cho phép dùng Xcode Cloud để ký miễn phí
Thảo luận liên quan: #6334, #6482
Tôi hiểu mục tiêu là bảo vệ người dùng, nhưng vấn đề là Gatekeeper đã bị biến chất thành một công cụ kiếm tiền cho App Store
Tuy vậy, với sinh viên làm phát triển thì đó vẫn có thể là gánh nặng
Sẽ tốt hơn nếu Apple cho phép tin cậy chứng chỉ bên thứ ba
Tùy chọn
--no-quarantinevà hạn chế chữ ký trên ARM64 là hai chuyện khác nhauCác ứng dụng không có chữ ký sẽ không chạy được kể cả khi đã xóa thuộc tính đó
macOS cho phép ký adhoc, nên có thể dùng cách đó để chạy
com.apple.quarantineXProtect và AMFI sẽ thực hiện thêm các bước kiểm tra trong nền
Nếu xóa thuộc tính đó thì bất kỳ nhị phân nào cũng có thể chạy, miễn là XProtect không chặn
Tôi thấy đáng tiếc khi Homebrew có thái độ khóa issue quá nhanh
Từ góc nhìn người dùng, điều đó đồng nghĩa nếu không có phê duyệt của Apple thì tôi không thể chạy ứng dụng trên chính máy tính của mình
Alacritty cũng bị ảnh hưởng bởi thay đổi lần này
Khả năng các nhà phát triển chịu trả phí ký cho Apple là không cao
Issue liên quan: alacritty/alacritty#8749
Có lẽ tôi sẽ phải tìm ứng dụng thay thế