文章目录[隐藏]
以前就有听说Manjaro大大简化了Arch繁琐的安装,而且排名也相当不错,但一直没有尝试。正好@某昨在群里提到,于是我就心血来潮的装了个试试。Manjaro是我第三次尝试(之前是Ubuntu和短暂的Deepin)将Linux作为一个独立系统(而非WSL、虚拟机)用于日常使用。经过一段时间的使用体验后,我深刻体验到了Arch系软件包之全的好处,其社区之完善与软件包质量之高是我之前未曾想到的。不过,其实Manjaro诸多软件的安装、配置还是有一些需要注意的地方,于是在这篇文章中我会记录我在系统配置、安装软件时遇到的坑,与一些解决方法。 文中使用的桌面环境为KDE。文章将会持续更新。如有问题或希望贡献你自己的经验,欢迎留言或发邮件至admin@kaaass.net。
关于安装 若无特别声明,文章中“安装”指的是执行pacman命令(
sudo pacman -S 包名
)或通过包管理器(如Octopi)进行安装。“通过AUR安装”指的是执行yay -S 包名
或yaourt -S 包名
进行安装,或通过包管理器打开AUR选项安装。包名会使用格式包名
予以区分。 关于编辑 若无特别声明,文章中“编辑文件”指的是使用文本编辑器编辑某个文件。命令行中,可以使用nano:sudo nano 文件
。或者可以执行kate 文件
以使用kate编辑器打开文件。
执行sudo pacman-mirrors -i -c China -m rank
,选择速度较快的镜像即可。之后运行sudo pacman -Syy
进行更新。
执行sudo nano /etc/pacman.conf
(或使用其他编辑器),在文件末尾增加:
[archlinuxcn]
Server = https://repo.archlinuxcn.org/$arch
之后运行sudo pacman -Sy
更新,并安装archlinuxcn-keyring
(sudo pacman -S archlinuxcn-keyring
)即可。
需要注意的是,archlinuxcn的仓库位于欧洲,所以可以使用相关的镜像(GitHub)。
使用pacman安装yay
或者yaourt
即可,我个人偏向于使用yay。
完成系统安装和镜像配置后,建议进行一次滚动更新,执行sudo pacman -Syu
即可。
安装wqy-microhei
(sudo pacman -S wqy-microhei
)。
(整数倍放大推荐)相较GNOME,KDE的缩放调整可谓感人,只需要在系统设置→显示和监控→显示配置→缩放显示进行调整就行,整体调整过程简单如Windows。但是,其实非整数倍调整还存在相当数量的问题。比如Konsole和Kate中会不时出现迷之条纹,还有窗体图标的放缩问题。 (非整数倍放大推荐)替代的调整方法是分别调整字体和图标大小。字体的调整方式为,打开系统设置→字体,勾选“固定字体DPI”并调整DPI的值。对于我的笔记本,由于缩放比为120%,于是96*1.2≈115。图标的调整方式为,打开系统设置→图标→配置图标大小。我的设置是所有图标向右1格,不过会比120%稍微大一点,但是图标的锯齿问题也就消失了。虽然大部分情况都是正常的,但是这样设置也是有一点问题的,比如部分列表项会溢出。 需要注意的是,无论哪种方式都不会影响托盘图标。可以将PLASMA_USE_QT_SCALING设置为1,但是最简单的解决方式就是直接调整高度。点击“配置面板…”,拖动“高度”按钮即可。
对于默认环境的wine程序,可以运行命令winecfg
,在显示→屏幕分辨率进行调整。对于deepin-wine环境,可以运行命令deepin-wine winecfg
,如果使用了deepin-wine5则是deepin-wine5 winecfg
。对于特定环境的程序(比如AUR的Tim、QQ、微信等),需要特定环境变量WINEPREFIX。建议关闭程序后运行此命令。常用程序更改如下:
env WINEPREFIX="$HOME/.deepinwine/Deepin-TIM" deepin-wine winecfg
env WINEPREFIX="$HOME/.deepinwine/Deepin-QQ" deepin-wine winecfg
env WINEPREFIX="$HOME/.deepinwine/Deepin-WeChat" deepin-wine winecfg
如果出现系统设置“固定字体DPI”无效的情况,请检查是否安装gnome-settings-daemon
(通常为了解决QQ/TIM无法打开安装)。gsd会破坏KDE系统本身的字体设定。如果安装了,卸载(执行sudo pacman -R gnome-settings-daemon
)并删除相关的启动项即可。
打开系统设置→应用程序风格→GNOME/GTK应用程序风格。建议修改光标主题与“工作空间主题”的一致。
右击托盘图标空白处,选择“配置 系统托盘…”,在“项目”中可以逐一更改托盘图标的显示设置。
打开系统设置→时间和日期,首先确认时区设置正常(最好与Windows保持一致)。勾选“本地时区的硬件时钟”,并调整时间为当前时区的时间,或者可以使用自动设置。
KDE 钱包是kde桌面自带的密码管理工具。
安装kwallet-pam
。打开钱包管理器,更改名为kdewallet钱包的密码(若无则新建一个钱包,使用blowfish方式加密),密码与当前用户登录密码相同。
如果还是提示需要输入密码打开,可以尝试删除kdewallet再新建一个。
如果实在觉得厌烦,可以直接关闭KWallet。打开系统设置→账户详细信息→KDE 钱包,取消勾选“启用 KDE 钱包子系统”。不推荐完全关闭KWallet,因为大多程序(如:IntelliJ IDEA、Chrome、KMail)都会将密码保存在KWallet中,若完全关闭KWallet可能会造成一些安全问题。
默认情况下,每次重启后都需要解锁默认密钥环。通过配置可以达到和KWallet一样使用登录密码解锁的效果。首先要设置默认密钥环的密码与登录密码一致,通过安装seahorse
包可以使用GUI程序更改其密码。
之后,对于SDDM(KDE Plasma 5默认)则编辑/etc/pam.d/sddm
,在文件中增加两行:
#%PAM-1.0
auth include system-login
auth optional pam_kwallet5.so
auth optional pam_gnome_keyring.so
account include system-login
password include system-login
session include system-login
session optional pam_kwallet5.so auto_start
session optional pam_gnome_keyring.so auto_start
之后重启时还会要求解锁默认密钥环,但是下方会多一个默认解锁的选项,勾选并解锁后就会启用自动解锁。
在使用ssh连接服务器或Github提交时,会频繁的要求输入密钥,非常麻烦。不过OpenSSH其实自带一个SSH Agent,可以用来缓存密钥的密码。启用方式如下:
~/.config/systemd/user/ssh-agent.service
为如下内容:[Unit]
Description=SSH key agent
[Service]
Type=simple
Environment=SSH_AUTH_SOCK=%t/ssh-agent.socket
ExecStart=/usr/bin/ssh-agent -D -a $SSH_AUTH_SOCK
[Install]
WantedBy=default.target
systemctl --user enable ssh-agent
与systemctl --user start ssh-agent
。.bashrc
,如果zsh则编辑.zshrc
)增加一行:export SSH_AUTH_SOCK="$XDG_RUNTIME_DIR/ssh-agent.socket"
~/.ssh/config
增加一行:AddKeysToAgent yes
如果遇到安装后桌面图标不显示的问题,右击程序启动器(通常是左下角的Manjaro图标),选择“编辑应用程序…”。之后点击编辑→恢复到系统菜单即可。
安装google-chrome
包。
编辑文件~/.config/chrome-flags.conf
,加入内容:
--force-device-scale-factor=1.2
即可缩放至1.2倍。对Chromium需要编辑文件~/.config/chromium-flags.conf
。
参阅“配置”的“GTK应用的主题”节。
通过AUR安装deepin-wine-qq
(TIM:deepin-wine-tim
)。
不建议使用QQ,建议使用TIM。
使用wine运行的QQ/TIM有诸多问题,切换至deepin-wine即可解决。目前最新的deepin-wine为deepin-wine5,如果曾经安装过TIM可以升级后再切换。
运行指令/opt/apps/com.qq.deepin/files/run.sh -d
(TIM使用:/opt/apps/com.qq.office.deepin/files/run.sh -d
)即可切换。注意切换后需要使用deepin-wine5
指令进行配置,如env WINEPREFIX="$HOME/.deepinwine/Deepin-TIM" deepin-wine5 winecfg
。
wine和deepin-wine都会发生这种情况,通常切换deepin-wine并且设置代理即可。代理只需要设置一个HTTP代理直连本地网络就行,这里提供一个适用于V2ray的配置(Gist)。之后在TIM的启动界面设置HTTP代理,IP为127.0.0.1
,端口为8123
即可。
配置后如果出现卡顿问题,执行env WINEPREFIX="
参考KDE字体发虚#36,可以通过如下设置解决:
参阅“配置”的“HiDPI”的“Wine”节。
参阅“软件”的“搜狗拼音等输入法(fcitx)”的“安装”节,关于配置的相关内容。
安装netease-cloud-music
。
已知问题:右键托盘菜单闪烁,需要长按保持打开。
本方案参考了@laomocode 的解决方法(参见Reference 2),非常感谢
使用AUR安装qcef
。编辑文件/opt/netease/netease-cloud-music/netease-cloud-music.bash
为
#!/bin/sh
HERE="$(dirname "$(readlink -f "${0}")")"
#export LD_LIBRARY_PATH="${HERE}"/libs
#export QT_PLUGIN_PATH="${HERE}"/plugins
#export QT_QPA_PLATFORM_PLUGIN_PATH="${HERE}"/plugins/platforms
export XDG_CURRENT_DESKTOP=DDE
exec "${HERE}"/netease-cloud-music $@
同时,可选的,你可以删除/opt/netease/netease-cloud-music/
下的libs
和plugins
文件夹以减少大小。
本方案参考了@petercxy 的解决方法(参见Reference 2),非常感谢
编辑文件/opt/netease/netease-cloud-music/netease-cloud-music.bash
最后一行为
exec "${HERE}"/netease-cloud-music --force-device-scale-factor=1.2 $@
以放大为1.2倍。已知问题是,使用fcitx输入法输入时,输入框位置会发生偏移,1.2倍时将会完全挡住光标。有时输入法候选框不显示,需要稍微移动鼠标位置。
通过AUR安装deepin-wine-wechat
。
使用wine的微信会遇到各种问题,如。因此,建议切换使用deepin-wine。运行指令/opt/deepinwine/apps/Deepin-WeChat/run.sh -d
即可切换。
参阅“配置”的“HiDPI”的“Wine”节。
参阅“软件”的“搜狗拼音等输入法(fcitx)”的“安装”节,关于配置的相关内容。
安装fcitx-im
(若询问选择,直接回车全部安装)、kcm-fcitx
(非kde安装:fcitx-configtool
)。
编辑文件~/.xprofile
,加入:
export GTK_IM_MODULE=fcitx
export QT_IM_MODULE=fcitx
export XMODIFIERS="@im=fcitx"
关于具体输入法,推荐:
fcitx-sogoupinyin
fcitx-googlepinyin
fcitx-rime
fcitx-mozc
已知问题,搜狗拼音会影响其他输入法皮肤。多输入法切换时可能发生搜狗拼音皮肤未及时加载,导致显示为乱码。
使用AUR安装fcitx-qt4
,之后重新启动fcitx程序即可。
本解决方案来自@laomocode,非常感谢。不过,博主本人还未进行测试
使用AUR安装软件包目前此包暂时消失,处于不可用状态,参考使用fcitx-sogouimebs
即可。fcitx-sogoupinyin
与fcitx-qt4
的方法。
程序本身应该随系统字体设置变化。 对于搜狗拼音输入法,进入设置页面,在“外观”页勾选“更换字体”,并选择合适的字体大小。
安装atom
。
注意atom包对atom有一定修改,如果需要提供信息给上游开发者,建议安装atom-editor-bin
,但是会有一定小问题(如代理设置无效)。
于终端运行(注意代理并非socks5而是http代理):
apm config set proxy http://localhost:代理端口
apm config set http-proxy http://localhost:代理端口
apm config set strict-ssl false
或者直接切换淘宝镜像:
apm config set registry http://registry.npm.taobao.org
安装Atom扩展hidpi
,在扩展设置中更改。
通过AUR安装jetbrains-toolbox
。通过jetbrains-toolbox,可以简单的下载JetBrain系列的相关IDE。
IntelliJ IDEA 15之后应该自带HiDPI支持。 如果没有效果,则打开File→Settings。选择Appearance&Behavior→Appearance,勾选“Use custom font”,改变“Size”,我的设置是16。打开Editor→Font,更改Size,我的设置是17。
安装goldendict
。
关于词典,这里是我目前使用的一些字典(百度云),资源来源于网络,感谢Reference的第六项。
打开编辑→词典,选择词典来源→构词法规则库,变更路径即可。对于文中的资源,选择Dictionary目录下的en_US_1.0目录即可。
安装mplayer
。打开编辑→首选项→音频,选择“使用外部程序播放”,在编辑框中填写:mplayer。
安装libinput-gestures
。
编辑/etc/libinput-gestures.conf
(不过这个是全局配置,不知道为什么我编辑用户的没有用):
注释掉已有配置,并根据需要调整。格式是:gesture 动作 方向 (手指数,3、4) 执行动作
。
以下是我的配置:
gesture swipe up _internal --col=2 ws_up
gesture swipe down _internal --col=2 ws_down
gesture swipe left xdotool key XF86AudioPrev
gesture swipe right xdotool key XF86AudioNext
gesture pinch out xdotool key super+equal
gesture pinch in xdotool key super+minus
按键使用的是xdotool
进行模拟,其按键映射可以在这里查到:https://gitlab.com/cunidev/gestures/wikis/xdotool-list-of-key-codes。
之后运行libinput-gestures-setup restart
以加载配置。
其实这个不是libinput-gestures的问题。找了半天,我发现是鼠标中键触发了添加便签,而三指点击是manjaro自带的触摸板手势中键。于是右键桌面配置桌面→鼠标动作,删除中间动作即可。
除上述程序,还有许多我个人十分推荐的软件。
telegram-desktop
kmail
shadowsocks-qt5
、electron-ssr
visual-studio-code-bin
typora
youdao-dict
transmission-qt
(如果习惯aria2
的话,aria2结合网页前端也不错)zotero
mendeleydesktop-bundled-fcitx
baidunetdisk-bin
(容易登不上,推荐使用命令行:baidupcs-go-bin
)inkscape
kbibtex
latte-dock