kiến thức Tổng hợp những addon chất cho Firefox / Chromium

Mình đọc cách 2, không biết khác gì với việc mình dùng Edge đăng nhập Chat.zalo.me rồi tạo kiểu vậy cho nó không?
Xin hướng dẫn thêm vì mình thấy cũng có 1 cái tạo shortcut riêng, tạo app riêng ở thanh địa chỉ.
Cách 2 cũng giống với cách Edge vì đây là PWA, đa phần trình duyệt đều có.

Còn shortcut thì mở từ Firefox cái Zalo PWA lên, sau đó mở Task Manager (nên dùng Process Hacker https://processhacker.sourceforge.io/downloads.php) tìm cái firefox.exe của Zalo PWA rồi copy đoạn giống thế này (chú ý đừng lấy cái này của mình vì sẽ khác nhau):

D:\PB\Data\PWAsForFirefoxPortable\App\PWAsForFirefox\runtime\firefox.exe --class FFPWA-01GWPBCGZXBK8RGRVT4G0SD589 --name FFPWA-01GWPBCGZXBK8RGRVT4G0SD589 --profile D:\PB\Data\PWAsForFirefoxPortable\Data\profiles\00000000000000000000000000 --pwa 01GWPBCGZXBK8RGRVT4G0SD589

Rồi chuột phải vào Desktop, New rồi Shortcut, paste nguyên đoạn bên trên vào và kết quả sẽ có cái như sau:

1684641265643.png


Chạy nó là ra Zalo PWA, icon đổi tùy ý nhé, cứ Properties rồi change shortcut là xong.
 
Y như autosub, thằng này dùng filename nhận diện tên phim chứ không dùng tiêu đề.

Vấn đề lớn nhất là các giải pháp tìm sub hiện tại thì các nhà cung cấp đều rất ích kỷ không như xưa:
  • OpenSubtiles, Addicted, Legend... bắt đăng nhập, mà kể cả đăng nhập đúng cũng nhiều khi trả về ERROR:subliminal.utils:Service unavailable. Provider opensubtitles, lúc tải được lúc không, cách đây vài phút mình còn tải được sub về, giờ thì bị thế này, nói chung là không thể dùng được ấy chứ
  • Duy nhất SubScene cho dùng thoải mái, nhưng ít lựa chọn

Ngày xưa thì mấy trang này cho dùng không cần tài khoản, giờ nó còn có captcha nữa nhiều khi đăng nhập không được.

Vậy nên sống ký sinh trong stremio theo mình là giải pháp tốt nhất.
Căn bản là trình xem của stremio trên pc nó tệ quá bác ạ, dùng mpv xong thấy mấy cái khác tệ thật. Cái stremio nó ăn cpu nhiều quá, không phải máy em yếu mà là quạt nó rú như lúc chơi game nên em mới muốn dùng mpv để xem ấy chứ. Bí quá thì down sub tay vậy
6juRhs5.png
 
Căn bản là trình xem của stremio trên pc nó tệ quá bác ạ, dùng mpv xong thấy mấy cái khác tệ thật. Cái stremio nó ăn cpu nhiều quá, không phải máy em yếu mà là quạt nó rú như lúc chơi game nên em mới muốn dùng mpv để xem ấy chứ. Bí quá thì down sub tay vậy
6juRhs5.png
Giải pháp chiển sub tay bằng ứng dụng nào đó rồi kéo thả vào MPV khéo còn nhanh hơn đó, lên Github kiếm khéo ra một cái ngon lành: https://www.google.com/search?client=firefox-b-d&q=subtitle+download++site:github.com

Ý mình thằng stremio nó ký sinh được là vì nhiều video nó kèm sẵn sub ấy, MPV kéo về dùng luôn, ví dụ cái này là ăn sái từ stremio chứ không phải autosub kiếm được:

1684567232843.png


Mà không biết Việt Nam mình có trang torrent phim nào sub Việt nhỉ, có gì lên Github của Stremio rồi tạo Issue bảo họ thêm nguồn phim là có sub Việt để xem.

Thì từ hồi dùng MPV là mình khước từ việc xem video từ mọi nguồn khác, kể cả VLC so với MPV vẫn nóng máy hơn, còn trình duyệt thì là khoảng cách giữa trời và đất về hiệu năng.
 
Last edited:
Sau vài hôm chuẩn bị hôm nay mình làm một bài đầy đủ súc tích và hiệu quả về cách cài đặt và kiểm tra giao diện cho Firefox. Bởi nhiều khi khi các bạn muốn cài giao diện vào Firefox, cài vào Firefox chính có thể gây lỗi hay chính bản thân Firefox chính đã được chỉnh sửa nhiều nên nhiều khi giao diện không khớp, vậy nên trong bài này có giải pháp để có thể ngó qua giao diện ra sao trước khi cài vào Firefox chính.

  1. Đầu tiên các bạn có thể kiếm giao diện Firefox tại: https://firefoxcss-store.github.io/ hoặc https://github.com/topics/userchrome
  2. Hoặc mấy cái giao diện con con để tùy chỉnh tùy ý: https://github.com/MrOtherGuy/firefox-csshacks/tree/master/chrome
  3. Giao diện tùy chỉnh như trên, nhưng độc và hiểm: https://github.com/Aris-t2/CustomCSSforFx
  4. Rất nhiều tùy chỉnh nhỏ: https://github.com/datguypiko/Firefox-Mod-Blur/tree/master/EXTRA MODS


Sau khi kiếm được giao diện vừa mắt:
  • Vào about:profiles
  • Create a new profile
  • Sau đó tạo một cái profile mới rồi Launch mở nó lên
  • Vào about:config tìm và chỉnh thành:

toolkit.legacyUserProfileCustomizations.stylesheetstrue
devtools.debugger.prompt-connectionfalse
devtools.debugger.remote-enabledtrue
devtools.chrome.enabledtrue
  • Sau đó cũng từ cửa sổ cái profile vừa mở lên vào about:profiles, chọn Open Folder ở cái profile mới được tạo bên trên
  • Tạo một folder tên chrome và vào luôn folder trên
  • Làm theo hướng dẫn mà người ta chỉ copy/paste file ra sao thì làm y hệt, rồi vào about:profiles ở cái profile Firefox mới được tạo kia, sau đó chọn Restart normally
  • Ví dụ ở trường hợp này mình áp dụng giao diện Tab nhọn của Chrome thời xưa vào Firefox thì chỉ cần vào Github của họ tải file userChrome.css vào thẳng folder chrome mới tạo bên trên rồi Restart là xong, kết quả:

1684718358237.png


Còn với mấy file css con con này thì từ cửa sổ profile Firefox mới ấn tổ hợp phím Ctrl+Shift+Alt+I mở Developer Toolbox lên, chọn tab Style Editor rồi ấn vào dấu +, copy/paste nội dung của mấy file css vào để áp dụng tức thì: https://github.com/MrOtherGuy/firefox-csshacks/tree/master/chrome

Nếu thấy không vừa ý, xóa thẳng folder chrome đi rồi tạo mới lại folder chrome, thử giao diện khác.

Rất đơn giản, nếu biết cách chỉ tốn vài giây là có thể cài xong một giao diện, nếu ngon áp dụng tương tự vào Firefox chính.

Cách này cho phép bạn vẫn có thể tiếp tục dùng Firefox chính trong quá trình thử nghiệm, còn cái Firefox phụ chạy song song phục vụ mục đích làm chuột bạch, nếu giao diện nào xấu/hỏng thì xóa đi làm lại.

Sắp tới sẽ dễ dàng hơn vì các lập trình viên addon đã phát hiện ra API WebExtensions của Firefox hiện tại đã có cách đóng gói giao diện Firefox thành file XPI để cài phát xong luôn như thời xưa. Tuy nhiên nó vẫn chỉ đan được thử nghiệm và phải bật trong about:config tìm extensions.experiments.enabled chỉnh thành true.
 
Last edited:
Sắp tới sẽ dễ dàng hơn vì các lập trình viên addon đã phát hiện ra API WebExtensions của Firefox hiện tại đã có cách đóng gói giao diện Firefox thành file XPI để cài phát xong luôn như thời xưa. Tuy nhiên nó vẫn chỉ đan được thử nghiệm và phải bật trong about:config tìm extensions.experiments.enabled chỉnh thành true.

Hi vọng sau này đưa được xuống Beta và Stable, chứ thế này thì không tiếp cận được nhiều người rồi.

Sent from Nubia NX702J using vozFApp
 
Có ba lựa chọn cho bạn, thứ tự từ dễ tới khó hơn:

Tất cả cách trên đều dùng một lượng RAM kha khá bởi đây là vấn đề chung của Zalo rồi, một sản phẩm công nghệ của người Việt. :D
Cách 2 không có notif tin nhắn tới thím nhỉ
 
hiện tại thì mình đang xài lại thằng GoodbyeDPI vì hồi đó tới giờ toàn dùng nó :) nhưng mình có 1 câu hỏi là khi tắt thằng GoodbyeDPI đi, vào trang defo.ie thì nó để như ở dưới, vậy có phải vì lý do nào đó mà thằng FIREFOX của mình nó không bật/sử dụng ECH không ?
p/s : hôm bữa nhớ nếu nhớ không nhầm có đọc comment của @toi la gay :sosad: có nói thằng GoodbyeDPI này không an toàn hả bạn ?
Screenshot 2023-05-22 at 15-41-14 Welcome to defo.ie.png
 
@toi la gay :sosad: Em thấy trang báo mới nó có js quảng cáo như này https://baomoi-static.bmcdn.me/web-v2/prod/v0.4.17/_next/static/chunks/108.deb9611e9bd4d76dd634.js theo hiểu biết nông cạn của em về js thì nó tạo ra các class "ad-wrapper" mới ngẫu nhiên để mình không chặt bằng css được. Vậy thằng qc kiểu này chặt bằng Ublock kiểu gì hả bác?
Nghỉa là trường hợp này nó kiểu`ad-wrapper123`ad-wrapper12ee3ad-wrapper1xxc23 ?

Rất dễ, sử dụng Regex cho CSS selector là xong:
*[class^="ad-wrapper"]

Là nó chặn tất, cứ khởi đầu bằng ad-wrapper là chém.
 
p/s : hôm bữa nhớ nếu nhớ không nhầm có đọc comment của @toi la gay :sosad: có nói thằng GoodbyeDPI này không an toàn hả bạn ?
Không an toàn nếu dùng cái 3, vì nó có thể làm lỗi vài trang ngân hàng, nói chung nó rất phức tạp vì một trang ngân hàng nó còn có vô vàn các CDN chứa nội dung web như kiểu static.tên_ngân_hàng., login.tên_ngân_hàng., secure.tên_ngân_hàng., logging.tên_ngân_hàng.... Xóa SNI đi làm mọi thứ trở nên lộn xộn, nhiều ngân hàng còn không cho đăng nhập.
Thật ra để vượt DPI nó cũng có nhiều bài vở, nhìn chung:
  1. Sử dụng DNS mã hóa: TẤT CẢ đều phải có bài này, vì băm giỏi tới đâu mà không mã hóa DNS tất cả đều thành công cốc
  2. Băm nhỏ gói tin ClientHello: Ví dụ như vào Bonhup.com chẳng hạn thì gói tin thứ nhất gửi Bon, gói thử hai gửi hup.com thì nhà mạng không dò ra được là Bonhup.com, đây là cách căn bản nhất của Chunk Rust và GoodbyeDPI
  3. Xóa SNI trong ClientHello: Đây là một tính năng của GoodbyeDPI mà Chunk Rust không có, và khả năng lớn đây là tính năng bán ra tiền bởi một khi đã xóa SNI thì nhà mạng BÓ TAY CHỊU TRÓI, tuy nhiên có thể gây lỗi và rủi ro bảo mật lớn
  4. Sử dụng ECH: Đây là một nhánh của xóa SNI vì nó không xóa SNI mà mã hóa đi, kết quả là vừa có thể vào được trang web bị chặn, vừa không phải xóa SNI nên đạt hiệu quả ổn định nhất, tuy nhiên có nhược điểm là nhiều khi cần trang web hỗ trợ TLS 1.3 và nhà mạng có thể chặn ECH hoàn toàn y như băm ClientHello bằng việc chặn béng TLS 1.3
  5. Giả mạo Host header cho HTTP: Ví dụ Bonhup.com sẽ bị biến thành BONHUP.CoM, nhà mạng không dùng Regex cho router vì tốn cực nhiều tài nguyên nên qua

Chi tiết: https://github.com/ValdikSS/GoodbyeDPI#active-dpi

Chỉ những cách trên là đáng quan tâm, mấy kỹ thuật khác đều là mắm muối cả.

Khả năng rằng FPT hiện tại "giỏi" tới mức trị đến mảng băm nhỏ.
 
Cách 2 không có notif tin nhắn tới thím nhỉ
Do bên Zalo cả thôi, chứ tất cả trình duyệt ngày nay đều hỗ trợ Notification API, nếu muốn hoàn toàn có thể dùng Userscript để phát hiện có tin nhắn mới rồi kêu Beep một cái và làm cái thông báo, cơ mà mình không dùng Zalo (và tất cả mạng xã hội đã 10 năm rồi) nên cái này mình chỉ có thể gợi ý tới đây:

push-notifications-for-firefox-browser.png
 
Nghỉa là trường hợp này nó kiểu`ad-wrapper123`ad-wrapper12ee3ad-wrapper1xxc23 ?

Rất dễ, sử dụng Regex cho CSS selector là xong:
*[class^="ad-wrapper"]

Là nó chặn tất, cứ khởi đầu bằng ad-wrapper là chém.
Không bác ạ, nó ra tên ngẫu nhiên. Trong file js nó có đoạn như này
Code:
return Object(a.jsx)(n.g,{className:O.a["ad-wrapper"],domRef:k,"data-id":e,children:Object(a.jsx)(b.a,{domRef:h,className:O.a["ad-native"],item:w,Footer:x})})};e.default=Object(i.memo)(m)},aHnl:function(t,e,c){t.exports={"ad-native":"bm_Kg","bm-card-footer":"bm_L",meta:"bm_Kh","ad-wrapper":"bm_Ki"}}}]);
Cả file js đấy code khá ngắn, bác xem một cái chắc bác hiểu ngay vấn đề
Edit: abpvn cập nhật chặt rồi bác ạ
Omd40Mz.png
 
Last edited:
Không bác ạ, nó ra tên ngẫu nhiên. Trong file js nó có đoạn như này
Code:
return Object(a.jsx)(n.g,{className:O.a["ad-wrapper"],domRef:k,"data-id":e,children:Object(a.jsx)(b.a,{domRef:h,className:O.a["ad-native"],item:w,Footer:x})})};e.default=Object(i.memo)(m)},aHnl:function(t,e,c){t.exports={"ad-native":"bm_Kg","bm-card-footer":"bm_L",meta:"bm_Kh","ad-wrapper":"bm_Ki"}}}]);
Cả file js đấy code khá ngắn, bác xem một cái chắc bác hiểu ngay vấn đề
Edit: abpvn cập nhật chặt rồi bác ạ
Omd40Mz.png
Mình cũng tìm mãi không thấy đâu, cơ mà tắt thử đi thấy trường hợp này chặn sạch iframe trong trang trên là ok, chặn iframe vừa an toàn và tăng tốc vừa sạch mấy quảng cáo của họ.
 
Code quảng cáo mấy ngày đổi 1 lần kiểu này sắp tới chromium ngập mặt qc
Giới hạn 30.000 dòng chặn, không tự động cập nhập được thì chắc chắn ăn hành rồi, giờ phía Google đang dùng chiêu trò dời ngày phát hành Manifest V3 để người dùng Chrome quen với đức tính khổ dâm, cứ qua trình duyệt khác, nghe tin Chrome trì hoãn Manifest V3 thì quay lại Chrome rồi dần dần chấp nhận Manifest V3 là một phần của cuộc sống của họ.

Manifest V3 dù có chối cãi thế nào mục đích chính của nó vẫn là để làm suy yếu chặn quảng cáo đi, mình viết rất chi tiết trong bài này: https://voz.vn/t/tong-hop-nhung-addon-chat-cho-firefox-pc-mobile.682181/post-25122542

Cơ mà nhờ Chrome mà hiện tại số người dùng Firefox đang tăng lên: Firefox is growing again according to statscounter. Yay! : firefox
 
Back
Top