Firefox on Linux
| 此处所提及的 Linux 解决方案仅适用于 Debian 系列的、使用 KDE 桌面环境的 Linux 发行版。 |
安装以及 Profile 相关
使用——
#!/bin/bash
sudo apt remove --autoremove firefox -y
[ -d "$HOME/.mozilla" ] && rm -rf "$HOME/.mozilla"
[ -d "$HOME/.cache/mozilla" ] && rm -rf "$HOME/.cache/mozilla"
sudo apt update
sudo apt install firefox-esr -y
sleep 2
firefox-esr &
sleep 5
pkill -f firefox
来解除现有的 Firefox 安装,并安装 Firefox ESR. 安装完成后会自动开启 5 秒然后关闭,以确保其预设的 Profile 资料夹建立。之后使用——
#!/bin/bash
PF=$(grep Path= ~/.mozilla/firefox/profiles.ini | grep default-esr | cut -d= -f2)
if [ -d "$HOME/.mozilla/firefox/$PF" ]; then
find "$HOME/.mozilla/firefox/$PF" -mindepth 1 -delete
wget -O /tmp/myfirefoxprofilebackup.7z https://your.domain.com/path/to/your_firefox_profile.7z
7z x -y /tmp/myfirefoxprofilebackup.7z -o"$HOME/.mozilla/firefox/$PF"
chmod -R 755 "$HOME/.mozilla/firefox/$PF"
rm /tmp/myfirefoxprofilebackup.7z
fi
来从 https
| 前述之内容已合并至 inst 一篇,故此处将不再更新,只做为历史保留。 |
不过,在从网络来源更新 Profile(而不是初始安装时灌入 Profile)之前,可能还想要将现有资料夹中的 con/ 中并将其设为可执行模式。)
#!/bin/bash
files=("content-prefs.sqlite" "cookies.sqlite" "favicons.sqlite" "formhistory.sqlite" "key4.db" "logins.json" "permissions.sqlite" "places.sqlite")
7z a -t7z -mx=9 -aoa -mfb=273 -md=1024m -ms=on -mqs=on -mtc -mta -mtm -stl -mhe $1 "FxPD_$(date '+%y%m%d-%H%M').7z" "${files[@]}"
#!/bin/bash
PF=$HOME/.mozilla/firefox/$(grep Path= ~/.mozilla/firefox/profiles.ini | grep default-esr | cut -d= -f2)
files=("$PF/content-prefs.sqlite" "$PF/cookies.sqlite" "$PF/favicons.sqlite" "$PF/formhistory.sqlite" "$PF/key4.db" "$PF/logins.json" "$PF/permissions.sqlite" "$PF/places.sqlite")
7z a -t7z -mx=9 -aoa -mfb=273 -md=1024m -ms=on -mqs=on -mtc -mta -mtm -stl -mhe $1 "FxPD_$(date '+%y%m%d-%H%M').7z" "${files[@]}"
使用第一个 bash 档的好处是,它可以打包任意位址的 Firefox 或者 Firefox-based 浏览器的 Profile 资料夹中的这八个档案,只要手动进入 Firefox 或者 Firefox-based 浏览器的 Profile 资料夹所在之处,便可简单地使用 fpk 来打包。而第二个 bash 档则锁定了 Mozilla Firefox 这款浏览器在操作系统内的预设位址所建立的属于 Firefox ESR 的预设 Profile 资料夹。用第二个的好处是,可以在任意位址开启命令提示然后使用 fpk-f 来将这一预设 Profile 资料夹内的这八个档案打包到在地。
无论使用哪一个,都可在输入 fpk 或 fpk-f 时透过追加 -p 来令 7z 提示请求为压缩档设定密码,或者直接使用比如 -p123WSX 来为压缩档设定密码为 ‘123WSX’.
CSS Modification
在 Windows 下做好的 Firefox Profile 可直接放到 Linux 下面去使用,反之亦然。(但对于另一款我连名字都不想提的十分难用的反人类操作系统则不然,尝试将别的操作系统下做好的 Firefox Profile 直接放过去会有无尽的问题。)唯 CSS 部分需要在已经调好的 Windows 版本上再做一些小的修改(Windows 下的 CSS 调修可参照此篇):
首先将 user
/* @import "./css/appbutton/appbutton_in_titlebar.css"; /**/
然后在 Windows 版的 mypadding-inline-start: 21px;, 具体来说就是要修改下面这些(淡黄色背景突显列为比照 Windows 版本新加的)——
| 自 Firefox 140 起已无需做此部分修改,因为在 Linux 上已无法实现令图示与文字分别对齐(或者说实现起来巨麻烦)。 |
#copytabtitleurl_bugbugnow_net-menuitem-_menu0::after {
content: "Both";
display: -moz-box;
padding-inline-end: 0.8rem;
padding-inline-start: 21px;
}
#copytabtitleurl_bugbugnow_net-menuitem-_menu1::after {
content: "Title(s) only";
display: -moz-box;
padding-inline-end: 0.8rem;
padding-inline-start: 21px;
}
#copytabtitleurl_bugbugnow_net-menuitem-_menu2::after {
content: "URL(s) only";
display: -moz-box;
padding-inline-end: 0.8rem;
padding-inline-start: 21px;
}
#context-openlinkprivate {
-webkit-box-ordinal-group: -11 !important;
-moz-box-ordinal-group: -11 !important;
-box-ordinal-group: -11 !important;
order: -11 !important;
}
#context-openlinkprivate label {
visibility: collapse !important;
display: none !important;
}
#context-openlinkprivate::after {
content: "Open in Private Window";
display: -moz-box;
padding-inline-start: 21px;
}
#context-stripOnShareLink label {
visibility: collapse !important;
display: none !important;
}
#context-stripOnShareLink::after {
content: "Copy Clean Link (U)";
display: -moz-box;
padding-inline-start: 21px;
}
#strip-on-share label {
visibility: collapse !important;
display: none !important;
}
#strip-on-share::after {
content: "Copy Clean (N)";
display: -moz-box;
padding-inline-start: 21px;
}
#_save-url-to-wayback-machine-firefox-addon-menuitem-_archive-url-wayback label {
visibility: collapse !important;
display: none !important;
}
#_save-url-to-wayback-machine-firefox-addon-menuitem-_archive-url-wayback::after {
content: "Wayback Machine";
display: -moz-box;
padding-inline-end: 0.8rem;
padding-inline-start: 21px;
}
#_save-url-to-wayback-machine-firefox-addon-menuitem-_archive-url-archive label {
visibility: collapse !important;
display: none !important;
}
#_save-url-to-wayback-machine-firefox-addon-menuitem-_archive-url-archive::after {
content: "archive.today";
display: -moz-box;
padding-inline-end: 0.8rem;
padding-inline-start: 21px;
}
#_save-url-to-wayback-machine-firefox-addon-menuitem-_archive-url-ghost-archive label {
visibility: collapse !important;
display: none !important;
}
#_save-url-to-wayback-machine-firefox-addon-menuitem-_archive-url-ghost-archive::after {
content: "Ghost Archive";
display: -moz-box;
padding-inline-end: 0.8rem;
padding-inline-start: 21px;
}
#_save-url-to-wayback-machine-firefox-addon-menuitem-_archive-url-both label {
visibility: collapse !important;
display: none !important;
}
#_save-url-to-wayback-machine-firefox-addon-menuitem-_archive-url-both::after {
content: "All above";
display: -moz-box;
padding-inline-end: 0.8rem;
padding-inline-start: 21px;
}
#_save-url-to-wayback-machine-firefox-addon-menuitem-_archive-image-url-wayback label {
visibility: collapse !important;
display: none !important;
}
#_save-url-to-wayback-machine-firefox-addon-menuitem-_archive-image-url-wayback::after {
content: "Image > Wayback Machine";
display: -moz-box;
padding-inline-end: 0.8rem;
padding-inline-start: 21px;
}
#_save-url-to-wayback-machine-firefox-addon-menuitem-_archive-link-url-wayback label {
visibility: collapse !important;
display: none !important;
}
#_save-url-to-wayback-machine-firefox-addon-menuitem-_archive-link-url-wayback::after {
content: "Link > Wayback Machine";
display: -moz-box;
padding-inline-end: 0.8rem;
padding-inline-start: 21px;
}
#_save-url-to-wayback-machine-firefox-addon-menuitem-_archive-image-url-archive label {
visibility: collapse !important;
display: none !important;
}
#_save-url-to-wayback-machine-firefox-addon-menuitem-_archive-image-url-archive::after {
content: "Image > archive.today";
display: -moz-box;
padding-inline-end: 0.8rem;
padding-inline-start: 21px;
}
#_save-url-to-wayback-machine-firefox-addon-menuitem-_archive-link-url-archive label {
visibility: collapse !important;
display: none !important;
}
#_save-url-to-wayback-machine-firefox-addon-menuitem-_archive-link-url-archive::after {
content: "Link > archive.today";
display: -moz-box;
padding-inline-end: 0.8rem;
padding-inline-start: 21px;
}
#_save-url-to-wayback-machine-firefox-addon-menuitem-_archive-image-url-ghost-archive label {
visibility: collapse !important;
display: none !important;
}
#_save-url-to-wayback-machine-firefox-addon-menuitem-_archive-image-url-ghost-archive::after {
content: "Image > Ghost Archive";
display: -moz-box;
padding-inline-end: 0.8rem;
padding-inline-start: 21px;
}
#_save-url-to-wayback-machine-firefox-addon-menuitem-_archive-link-url-ghost-archive label {
visibility: collapse !important;
display: none !important;
}
#_save-url-to-wayback-machine-firefox-addon-menuitem-_archive-link-url-ghost-archive::after {
content: "Link > Ghost Archive";
display: -moz-box;
padding-inline-end: 0.8rem;
padding-inline-start: 21px;
}
#_save-url-to-wayback-machine-firefox-addon-menuitem-_archive-image-url-both label {
visibility: collapse !important;
display: none !important;
}
#_save-url-to-wayback-machine-firefox-addon-menuitem-_archive-image-url-both::after {
content: "Image > All above";
display: -moz-box;
padding-inline-end: 0.8rem;
padding-inline-start: 21px;
}
#_save-url-to-wayback-machine-firefox-addon-menuitem-_archive-link-url-both label {
visibility: collapse !important;
display: none !important;
}
#_save-url-to-wayback-machine-firefox-addon-menuitem-_archive-link-url-both::after {
content: "Link > All above";
display: -moz-box;
padding-inline-end: 0.8rem;
padding-inline-start: 21px;
}
[id^="_ee9507aa-5b54-4548-a8b1-f1840b6d5c26_"] label {
visibility: collapse !important;
display: none !important;
}
[id^="_ee9507aa-5b54-4548-a8b1-f1840b6d5c26_"]::after {
content: "Background Image";
display: -moz-box;
padding-inline-end: 0.8rem;
padding-inline-start: 21px;
}
这里当然可以 consolidate 一下,原版其实也可以 consolidate, 但是我懒得动了。
由于在 Linux 上的 Firefox 最好不要去用那个“复刻版”的“Firefox 按钮”,因此有关 appbutton 的那些 CSS 修改可以完全跳过——如果是参照此篇来新建 Profile 并新(改)写 CSS 的话。但是如果是直接使用已经改好的 Windows 版的 CSS 档案,则改动过的 appbutton 部分因为也用不到,倒也没有必要“恢复原样”。