1 điểm bởi GN⁺ 2025-11-21 | 1 bình luận | Chia sẻ qua WhatsApp
  • Phiên bản Firefox 147 bổ sung hỗ trợ cho đặc tả thư mục cơ sở XDG
  • Tệp cấu hình và bộ nhớ đệm được chuyển sang đường dẫn XDG đã tiêu chuẩn hóa thay vì thư mục home như trước đây
  • Cải thiện tính nhất quán trong quản lý tệp cấu hình trên môi trường Linux
  • Dữ liệu người dùng hiện có sẽ được tự động di chuyển sang vị trí mới
  • Góp phần sắp xếp lại cấu trúc tệp và cải thiện khả năng tương thích trên các môi trường desktop

Hỗ trợ thư mục cơ sở XDG trong Firefox 147

  • Firefox 147 được thay đổi để tuân thủ XDG Base Directory Specification
    • Đặc tả này định nghĩa vị trí lưu trữ tiêu chuẩn cho tệp cấu hình, bộ nhớ đệm và dữ liệu ứng dụng trên hệ thống Linux
  • Trước đây Firefox tạo thư mục .mozilla trong thư mục home của người dùng, nhưng nay sử dụng các đường dẫn tiêu chuẩn như ~/.config, ~/.cache, ~/.local/share
  • Thay đổi này chuyển sang cấu trúc tuân theo các biến môi trường XDG_CONFIG_HOME, XDG_CACHE_HOME, XDG_DATA_HOME

Dữ liệu người dùng và quá trình di chuyển

  • Dữ liệu người dùng Firefox hiện có sẽ được tự động di chuyển sang đường dẫn XDG trong phiên bản mới
  • Trong quá trình di chuyển, các thiết lập hiện có, dấu trang và dữ liệu khác vẫn được giữ nguyên, không cần thao tác thủ công
  • Nhờ đó người dùng Linux có thể dễ dàng dọn dẹp hệ thống tệp và quản lý sao lưu hơn

Ý nghĩa trong hệ sinh thái Linux

  • Việc tuân thủ đặc tả XDG giúp tăng cường tính nhất quán với các ứng dụng desktop khác
  • Cải thiện mức độ tích hợp với các môi trường desktop lớn như GNOME và KDE
  • Firefox củng cố vị thế là một trình duyệt thân thiện với tiêu chuẩn trên nền tảng Linux

1 bình luận

 
GN⁺ 2025-11-21
Ý kiến trên Hacker News
  • Cuối cùng có vẻ như Mozilla đã bắt đầu sửa một lỗi tồn tại rất lâu
    Nhưng nhìn vào chi tiết thì trong mã diff không thấy logic di chuyển dữ liệu
    Có vẻ nếu ~/.mozilla tồn tại thì vẫn dùng nguyên, còn nếu không thì dùng ~/.config/mozilla. Không rõ nếu không đặt MOZ_LEGACY_HOME=1 thì có bị mất cấu hình cũ hay không
    Ngoài ra, việc phân tách giữa ~/.cache, ~/.config, ~/.local/share dường như vẫn chưa được làm đúng, và có vẻ toàn bộ dữ liệu hồ sơ đã bị chuyển vào ~/.config

    • Nói đùa vậy thôi, nhưng thực tế lỗi 27 năm tuổi này gần đây đã được đóng
      Bản Nightly đã thêm about:keyboard, cho phép tự chỉnh sửa hoặc để trống các phím tắt cơ bản như lưu, quay lại, làm mới, công cụ dành cho nhà phát triển, v.v.
    • Nhìn vào diff thì có vẻ nếu ~/.mozilla tồn tại hoặc MOZ_LEGACY_HOME được đặt thì sẽ tiếp tục dùng nó, còn nếu không thì dùng $XDG_CONFIG_HOME/.mozilla
      Tức là không vứt bỏ dữ liệu, nhưng cũng không có di chuyển
    • Xem toàn bộ diff thì ~/.cache đã được dùng từ trước, nhưng không thấy nội dung nào liên quan tới ~/.local/share
    • Nếu tất cả dữ liệu đều bị đưa vào ~/.config thì điều đó khác với việc tuân theo đặc tả XDG Base Directory
      Dù vậy, việc giảm bớt một dotfile làm bừa bộn thư mục home vẫn là điều tốt
    • Tôi nghĩ vẫn còn một chặng đường dài nếu muốn tách hẳn thư mục .mozilla
      Từ trước đến nay mọi dữ liệu đều nằm trong một thư mục, nên việc phân tách cache, cấu hình và dữ liệu ứng dụng có lẽ sẽ khó hơn
  • Thay đổi lần này là một bước tiến khá có ý nghĩa
    Nhiều ứng dụng lớn vẫn chưa tuân thủ XDG Base Directory cho đúng, nên việc Firefox áp dụng có thể ảnh hưởng tới các dự án khác
    Có lẽ tài liệu trên Arch Wiki cũng cần được cập nhật

    • Các nhà phát triển OpenSSH xem việc áp dụng XDG là một rủi ro bảo mật
      .ssh liên quan đến quyền truy cập hệ thống, nếu đường dẫn cấu hình bị phân tán ra nhiều nơi thì việc quản lý sẽ phức tạp hơn và dễ phát sinh lỗ hổng hơn
      Có thể chuyển .ssh/config hoặc known_hosts sang XDG, nhưng nếu chỉ chuyển một phần thì mục tiêu dọn dẹp dotfile cũng trở nên nửa vời
      Thảo luận liên quan có trong mailing list
    • Thật ngạc nhiên khi một thay đổi đơn giản như vậy mà danh sách ứng dụng không tuân thủ vẫn còn dài đến thế
      Chỉ cần một PR là có thể giải quyết trong vài giờ
    • Trước đây khi Debian đổi tên từ icedove sang thunderbird, đã từng có hỗn loạn lớn vì xung đột đường dẫn cấu hình
      Nếu có cấu trúc XDG thì cấu hình và dữ liệu đã được tách riêng, và chuyện này có lẽ đã không xảy ra
    • Chromium vẫn đang dùng $HOME/.pki và tiếp tục làm bừa bộn thư mục home
      Đây là vấn đề phát sinh do không sử dụng libnss đúng cách, và các ứng dụng nhúng Chromium như QtWebEngine cũng gặp cùng vấn đề
  • Thư mục .mozilla là một trong những dotfile cuối cùng còn sót lại trong thư mục home của tôi
    Nghĩ đến việc cuối cùng nó cũng được dọn đi khiến tôi rất vui
    Bạn cũng có thể dùng công cụ xdg-ninja(liên kết) để tìm ra các ứng dụng vi phạm quy tắc XDG
    Nhiều chương trình hardcode ~/.config hoặc ~/.local rồi cứ mỗi lần lại cố tạo mới, nên tốt nhất là tránh những ứng dụng như vậy

    • Có thể giải quyết bằng hardlink, nhưng việc dùng biến môi trường vẫn là phần còn khó
      Sẽ rất hay nếu có thiết lập cấp driver để ánh xạ XDG_CONFIG_HOME sang một đường dẫn ảo
    • Cảm ơn vì đã cho tôi biết đến xdg-ninja
      Tôi thực sự ghét các chương trình làm bừa bộn thư mục home
      Kiểu cấu hình bắt người dùng phải tự sửa file ẩn giờ thật sự quá ngán rồi
  • Đây là tin tốt
    Firefox vốn đã tuân theo các thư mục hệ thống khá tốt trên Windows và macOS
    Linux thì không có tiêu chuẩn thống nhất, nhưng việc làm theo khuyến nghị XDG là một bước tiến lớn

  • Cuối cùng cũng đến lúc thích hợp
    Mọi phần mềm đều nên hỗ trợ XDG. Thật ngạc nhiên khi Firefox ngay từ đầu lại không tuân theo

    • XDG ra đời muộn hơn Firefox rất nhiều, và trong phần lớn thời gian không được áp dụng rộng rãi
    • Lý do phần lớn phần mềm không theo XDG là vì đặc tả này chỉ xuất hiện vào khoảng năm 2003
      Giờ đây mức độ áp dụng đang dần tăng lên và thư mục home sẽ sạch sẽ hơn nhiều
      Tuy nhiên điều quan trọng là phải cung cấp lộ trình di chuyển rõ ràng để không làm mất cấu hình hiện có
  • Đây thực sự là tin rất đáng mừng
    Giống như Gimp 3, đây là một lỗi đã phải chờ rất lâu, và tôi vui vì cuối cùng nó cũng được sửa

  • Gần đây thấy Firefox thêm cả hỗ trợ .mkv rồi còn có những cải tiến như thế này, nên nó đang ngày càng tốt hơn
    Điều duy nhất tôi còn phàn nàn là các phím tắt bị hardcode

    • Firefox Nightly đã thêm about:keyboard, cho phép tự chỉnh sửa phím tắt
      Dù mới chỉ có chức năng cơ bản, nhưng vẫn đủ dùng
  • Sau 21 năm mới có cải thiện như vậy, muộn nhưng vẫn đáng hoan nghênh 😄

    • Có giai thoại rằng khi ai đó hỏi “sao lại mất lâu thế”, nhà phát triển trả lời là “không có thời gian”
      Kéo dài suốt 21 năm nên nghe cũng buồn cười
  • Tò mò không biết người đầu tiên báo lỗi này giờ còn sống không

    • Có khi bây giờ thế hệ cháu chắt của người đó đang thay họ theo dõi rồi cũng nên
  • Firefox vẫn là một trình duyệt xuất sắc về khả năng xử lý nhiều tab và mức dùng bộ nhớ
    Trong 1 năm qua tôi cũng hầu như không gặp vấn đề render nào
    Tôi rất mong xem còn tính năng cũ nào sẽ tiếp tục được cải thiện nữa

    • Trường hợp của tôi là thỉnh thoảng gặp vấn đề không bấm được liên kết
      Có lẽ là do trình chặn quảng cáo hoặc cách triển khai của nhà cung cấp SaaS
      Với những trang quan trọng kiểu này thì đành phải dùng Safari