1 điểm bởi GN⁺ 2025-11-14 | 1 bình luận | Chia sẻ qua WhatsApp
  • 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

 
GN⁺ 2025-11-14
Ý 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

    • Tôi không đồng ý với ý rằng phần lớn người tôi biết không cài nhiều cask
      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-quarantine biế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ện
    • Theo mặc định, Homebrew cũng phân phối phần mềm mã nguồn mở dưới dạng gói nhị phân (bottle)
      Nhì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
    • Trưởng dự án Homebrew đã trực tiếp xác nhận — thay đổi lần này không ảnh hưởng đến formulae, chỉ áp dụng cho cask
    • Các ứng dụng tiêu biểu được nhắc đến trong cuộc thảo luận này là LibrewolfFreetube
      Thảo luận liên quan: Homebrew Discussions #6334
    • Tôi cài toàn bộ ứng dụng GUI bằng Homebrew. Hiện có hơn 30 cask, nhưng tôi cũng không rõ chúng có chữ ký hay không
  • 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

    • Thực tế, khi Gatekeeper bị tăng cường trên macOS 15 Sequoia cách đây 1 năm, mọi người đã nhận ra
      Bài viết liên quan: Ars Technica, MacRumors, Daring Fireball
    • May mắn là laptop Linux đang ngày càng tốt hơn
      Đế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
    • Việc Apple ngăn cài các OS khác làm suy yếu cạnh tranh và về lâu dài cũng có hại cho người dùng
      Mua phần cứng Apple là một cách dung túng cho kiểu hành xử đó
    • Gatekeeper vẫn có thể bị tắt
      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
    • Thật ra xu hướng này đã có thể đoán trước từ đầu. Chỉ là khi đó những cảnh báo như vậy đã bị phớt lờ
  • 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

    • Homebrew gần như không thể tùy biến, và quản lý phụ thuộc cũng rất tệ
      Thái độ công kích của các maintainer cũng là một vấn đề
    • Tôi bắt đầu với MacPorts từ 20 năm trước rồi chuyển sang Homebrew, nhưng gần đây lại quay về MacPorts
      Tôi nhớ thời nó vẫn build ổn ngay cả trên những chiếc PowerBook cũ
    • Giờ Homebrew gần như là một bản mở rộng của App Store
    • Việc Homebrew ngừng hỗ trợ các bản macOS cũ thật đáng thất vọng
      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”
    • Ranh giới giữa “dành cho dân chuyên” và “dành cho người tiêu dùng” khá mơ hồ. Tôi còn nghi ngờ liệu có người dùng phổ thông nào thật sự dùng Homebrew không
  • 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ện

    • Phản ứng của Mike McQuaid là quá mức. Người kia rất điềm tĩnh nhưng anh ta lại công kích không cần thiết
    • Họ chỉ làm ra vẻ như đang mở thảo luận, nhưng thực tế đó chỉ là một cuộc thảo luận mang tính hình thức
  • Ban đầ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

    • Thực tế là chỉ cask bị ảnh hưởng, còn formulae và bottle thì vẫn như cũ
    • Trên macOS, các tệp nhị phân có cờ quarantine, và nếu cờ này được đặt thì sẽ phải qua kiểm tra bảo mật trước khi chạy
      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ý
    • Cuộc thảo luận bị đóng sớm nên không thể tiếp tục đặt câu hỏi
    • MacPorts vẫn hoạt động tốt, nên tôi nghĩ rồi Homebrew cũng sẽ tìm ra cách giải quyết
      Các nhị phân tự build vẫn có thể chạy được
    • Ví dụ, các ứng dụng không có chữ ký như ClickHouse hiện sẽ chưa thể cài được trong thời gian tới
  • Việc tự thân xóa tùy chọn --no-gatekeeper không phải chuyện lớn
    Nó đơn thuần chỉ có vai trò xóa thuộc tính com.apple.quarantine
    Vấ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

    • Tôi không nghĩ mức phí 90 USD/năm (hoặc 99 USD) là quá đáng
      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-quarantine và hạn chế chữ ký trên ARM64 là hai chuyện khác nhau
    Cá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

    • Gatekeeper quyết định chặn thực thi dựa trên thuộc tính com.apple.quarantine
      XProtect 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
    • Cách giải thích ở trên nhìn chung là chính xác
  • 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

    • Homebrew khóa issue vì họ chỉ cho phép thảo luận ở tab Discussions
    • Từ trước đến nay đã có nhiều ý kiến cho rằng các maintainer của họ công kích và chống tranh luận
    • Tôi không đồng ý với nhận định rằng “Homebrew thân thiện với người dùng”
    • Thậm chí còn có câu đùa rằng “phải dùng máy tính của Tim Cook theo đúng ý ông ấy”
  • 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

    • Tôi cũng đang dùng nhiều cask, trong đó có Alacritty
      Có lẽ tôi sẽ phải tìm ứng dụng thay thế
    • Có thể chỉ cần thêm một script xóa thuộc tính quarantine sau khi cài là giải quyết được
    • Một bình luận khác trên HN có cách lách
    • Nếu là mã nguồn mở thì có lẽ không cần phân phối bằng cask, mà nên build bằng formula mới đúng