Manjaro 个人新装配置

前言#

[update-2020-03-20]

安装的版本:Linux version 5.3.15-1-MANJARO

Manjaro 基于 Arch Linux,下面许多是 Arch 特性,但为了统一我都用 Manjaro 表示...

Arch 安装可以稍微参考这篇安装记录: Archer`s Arch

建议#

文中对「如何做启动盘」等基础问题都没有详细说明,若是想要从零安装 Manjaro 系统建议在网上找一篇较新的教程。

期间若有问题可以优先查阅:Arch 建议阅读 中文版

PS:不过本文对 中文输入方案 (fcitx + 中文输入 + 双拼 + 直角引号配置...)与源的配置(三类源,从哪找镜像...)介绍得还比较详细,其它发行版也阔以参考。

安装#

镜像下载:中科大

写入工具:rufus

说明:镜像目录里有 gnome、kde、xfce,这是官方提供的基于 Manjaro 的不同桌面环境。

各种不同之处与选择斟酌不提。(选择困难症建议 kde,我用着挺爽的...)

PS:还有各种社区桌面版本,比如 manjaro-deepin。

配置源#

PS:本来想先谈安装中文输入法,但是不先把源设置好,装软件也不方便,所以先谈配置源。

关于源的配置可以看 Arch 安装#配置源

配置国内源#

直接添加#

这儿配置的是 pacman 安装包时使用的源。

sudo pacman-mirrors -i -c China -m rank

执行后会弹出提示框,建议勾选清华源(tuna.tsinghua)。中科大源貌似 404 了

cat /etc/pacman.d/mirrorlist

查看是否含有刚才选择的源,若有则完成。

PS:当然,直接手动在该文件添加源地址也是可以的。

手动在该文件添加源地址#

PS:可以使用 Arch 提供的镜像生成器找到最新的镜像:Pacman Mirrorlist Generator

##
## Arch Linux repository mirrorlist
## Generated on 2020-03-06
##

## China
#Server = http://mirrors.163.com/archlinux/$repo/os/$arch
#Server = http://mirrors.cqu.edu.cn/archlinux/$repo/os/$arch
#Server = https://mirrors.cqu.edu.cn/archlinux/$repo/os/$arch
#Server = http://mirror.lzu.edu.cn/archlinux/$repo/os/$arch
#Server = http://mirrors.neusoft.edu.cn/archlinux/$repo/os/$arch
#Server = https://mirrors.neusoft.edu.cn/archlinux/$repo/os/$arch
#Server = http://mirror.redrock.team/archlinux/$repo/os/$arch
#Server = https://mirror.redrock.team/archlinux/$repo/os/$arch
#Server = https://mirrors.sjtug.sjtu.edu.cn/archlinux/$repo/os/$arch
#Server = http://mirrors.tuna.tsinghua.edu.cn/archlinux/$repo/os/$arch
#Server = https://mirrors.tuna.tsinghua.edu.cn/archlinux/$repo/os/$arch
#Server = http://mirrors.ustc.edu.cn/archlinux/$repo/os/$arch
#Server = https://mirrors.ustc.edu.cn/archlinux/$repo/os/$arch
#Server = https://mirrors.xjtu.edu.cn/archlinux/$repo/os/$arch
#Server = http://mirrors.zju.edu.cn/archlinux/$repo/os/$arch

生成如上源后,手动粘贴至 /etc/pacman.d/mirrorlist

【可选】添加 ArchLinuxCN 源#

ArchLinuxCN 是 Arch 中文组维护的一个软件合集,包含了中文用户常用的 WPS Office、搜狗拼音、Google Chrome 等软件。不过,Arch 本身和它的常见衍生版(如:Manjaro)默认都不包含这个源,因此我们需要手动来配置使用这个源。

如何配置ArchLinuxCN软件源

如上所说,如果没装这些软件的需求可以先不配置。

添加#

打开 etc/pacman.conf。Manjaro 自带 nano 和精简的 vim,新手建议用 nano,vim 使用方向键会乱码。(方向移动是 h/j/k/l)安装完整 vim 见下文。

ArchLinuxCN 的源可以在这里查看:arch-linux-mirrorlist

# 打开 etc/pacman.conf
sudo nano /etc/pacman.conf

添加你找到的镜像。

[archlinuxcn]
SigLevel = Optional TrustedOnly
Server = http://mirrors.tuna.tsinghua.edu.cn/archlinuxcn//$arch

同理这里用的清华源。

导入 GPG key 并更新系统#

看包名就能猜到这是 archlinuxcn 的 key,安装后作为验证,就可以安装软件了。

# 更新数据源
sudo pacman -Syy
# 安装导入 GPG key
sudo pacman -S archlinuxcn-keyring
# 更新系统
sudo pacman -Syu

【可选】AUR 源#

AUR 源可以使用清华源,文档见这: 清华大学开源软件镜像站

yay 用户执行以下命令修改 aururl :

yay --aururl "https://aur.tuna.tsinghua.edu.cn" --save

修改的配置文件位于 ~/.config/yay/config.json ,还可通过以下命令查看修改过的配置:

yay -P -g

yay 是一个包管理软件,与 pacman 的不同之处在于 yay 用于在终端安装 AUR 的包。具体,阔以查看下面的 包管理

中文输入法#

本来想安装 sogou 拼音输入法,但在版本 Linux version 5.3.15-1-MANJARO 一直循环在「打字时只有一个框框弹不出候选词」与「候选词乱码」之间。而且看大家的解决方法,都必须重启系统才能见到效果,折腾太麻烦了,索性不用它了。

输入法引擎见这:Fcitx_输入法引擎

我选用的是 sunpinyin。

安装 fcitx#

PS:我不确定是不是要手动安装,Manjaro 貌似自带了...(忘了

sudo pacman -Sy fcitx
sudo pacman -S fcitx-sunpinyin # sunpinyin
sudo pacman -S fcitx-configtool # 配置工具

不能输入中文#

Fcitx_(简体中文)#输入法模块 里的设置环境变量。

PS:有些教程让修改 .xprofile 等文件,建议按最新的文档来..

修改~/.pam_environment(若无则新建),添加如下配置。

GTK_IM_MODULE=fcitx
QT_IM_MODULE=fcitx
XMODIFIERS=@im=fcitx

重启!重启吧!

双拼配置自选方案#

图形化工具配置#

如果装了 fcitx-configtool 这个图形化工具,可以在里面搜索「pinyin」找到双拼的选项,直接配置!!

手动配置#

fcitx 自带双拼输入法,使用的是自然码。如需修改为其它双拼方案,按如下操作即可。

打开 ~/.config/fcitx/conf/fcitx-pinyin.config

能看到默认双拼方案是自然码(Ziranma)。

我用的小鹤双拼,所以取消注释并修改为 XiaoHe。

DefaultShuangpinSchema=XiaoHe

修改后重启输入法就能生效啦。(右键任务栏的键盘,选择重新启动。)

PS:该文件里还有一些配置项,可以按自己需求修改...

简体中文输入法使用直角引号#

修改 /usr/share/fcitx/data/文件夹下以「zh-CN」结尾的文件。

「zh-CN」对应的就是简体中文输入法。

该文件名因系统不同有差异。比如在我当前的 Manjaro 版本,该文件为punc.mb.zh_CN。而在我之前使用的 deepin 系统上,该文件为punc-ng.mb.zh_CN。我还在网络上看到一些人的是punc-ng.mb-zh_CN

将对应的「"」与「'」按如下修改即可。

" 「 」
' 『 』

注意!/usr/share/fcitx/data/ 下的文件是「全局配置文件」。建议将该文件复制到用户目录,即~/.config/fcitx/data/下面再进行修改。

拼音云输入#

# 安装
sudo pacman -Sy fcitx-cloudpinyin

安装后在「配置—附加组件」里找到可以修改云拼音来源,大陆用户就修改为百度吧~

不过我现在(码这篇博文的现在)没感觉到这云拼音有啥用...

其它#

网络上提到的 wine 系软件不能输入中文之类的问题倒是没遇到...

PS:遇到了网易云不能输入中文,非刚需自己就没折腾。

【过时】软件替换建议#

vim#

上面提到了 Manjaro 自带精简的 vim,用着不太顺手。卸载再安装完整版即可。

# 卸载并安装
sudo pacman -Rs vi & sudo pacman -Sy vim

其它#

之前我建议用 deepin 的截图等工具,但是一方面使用它们引入 deepin 相关的依赖太多了,另一方面感觉自带的终端等用起也还不错...

下面算是一个简单的软件推荐吧...

截图:flameshot 这个软件感觉和 deepin-screenshot 差不多,甚至更小更强大。

录屏:peek 小巧强大

QQ/tim 可以装 deepin 的,不过只是能用...

文本编辑器可以使用 kde 提供的 KWrite,轻量级的使用挺方便的,打开又快...

默认应用设置#

既然软件都替换了,相应的把默认应用也修改一下吧。

进入「设置—个性化—默认应用设置」。

快捷键#

将截图和终端的快捷键设置一下。

进入「系统设置—工作区—快捷键」。

在「全局快捷键」添加应用,设置快捷键无效,需要「自定义快捷键」。

以「深度截图」举例。

在「自定义快捷键」新建一个「全局快捷键—命令/URL」,在触发器设置快捷键,在动作设置「命令/URL」。

这个「命令/URL」是啥玩意?在这里简单理解为启动软件的命令即可。

在「程序启动器」搜索找到软件,右键软件的图标,点击「编辑应用程序」,点击「应用程序」,就可以看到「命令」。

比如在应用栏里找到「深度截图」,右键图标,点击「编辑应用程序」,点击「应用程序」将「命令」栏里的链接复制粘贴过来即可。

PS:默认 f12 为下拉式终端,为了避免与浏览器调试的快捷键冲突,建议更换...

Linux 迁移软件配置#

使用的各种软件的配置都放在用户目录下,每次迁移系统备份 home 文件夹太慢了,如果我们没有啥非常重要的需求,完全可以只把用户目录下必要软件的配置迁移过来。

比如 ~/.IntelliJIdea2019.3~/.gradle...

将上面这些软件的配置文件夹从原系统备份出来,再移动到新系统的用户目录即可。

推荐一个软件配置备份的工具:https://github.com/lra/mackup

也可以用它管理 dotfiels。

包管理说明#

Manjaro 提供了一个包管理的终端程序 pacman,详见:Pacman 简中说明

在 Manjaro 提供的桌面程序软件中心里,应用有 Community 和 AUR 的分别。该桌面程序可以安装 Community 程序也可以安装 AUR 程序——不过安装 AUR 程序的提示信息是「构建」。

AUR,即 Arch User Repository,Arch 用户仓库。而 Community 指的是 Arch 的官方仓库。用户将软件放在 AUR,Arch 官方则定期挑选 AUR 里的优秀程序到 community。

实际表现为 Community 为 AUR 的子集,Community 有的应用 AUR 都有,但是 Community 拥有但 AUR 没有的那部分软件可能在系统上的运行表现不大稳定。

pacman 只能在终端安装 Community 程序,想要在终端安装 AUR 程序则需要再安装一个包管理工具。

有些教程里用的 yaourt,但该工具已经在 Arch 文档标记过时了,不建议使用。

具体选用啥可以自己搜索斟酌,我用的 yay。

安装如下:

git clone https://aur.archlinux.org/yay.git
cd yay
makepkg -si

PS:在软件中心里构建 AUR 程序其实就是相当于帮我们做了手动 makepkg 的工作。

命令#

yay 兼容 Pacman 的命令行参数。

## pacman
pacman -Syu # 同步数据包后更新系统

pacman -Sy 包名 # 同步包数据库后安装。

pacman -R 包名 # 删除包不删除依赖
pacman -Rs 包名 # 删除包的同时删除不被其它包使用的依赖
pacman -Rd 包名 # 删除包不检查依赖

pacman -Ss 关键字 # 搜索含关键字的包。
pacman -Qi 包名 # 查看有关包的信息。

pacman -Sc Pacman #清理未安装的包文件
## yay
yay -Su # 升级软件库
yay -Sy # 更新软件库
yay -Syy # 强制更新软件库
yay -Sy 包名 # 安装命令
yay -Rs 包名 # 卸载命令
yay -Ss 关键字 # 搜索命令

配置 jdk#

Manjaro 的环境变量我还没搞明白,新建~/.profile,修改~/.xprofile都无效,配置不上本地的 jdk...

不过没试过修改~/.bashrc。总觉得是自己没搞懂...

使用官方提供的方式安装。

先用包管理安装 jdk。(只提供 openjdk)

# 先搜索一个
yay -Ss jdk
# 安装
yay -Sy java-8-openjdk
# 查看 jdk
archlinux-java status
# 设置默认 jdk
sudo archlinux-java set java-8-openjdk

修改主目录为英文#

原文

$ sudo pacman -S xdg-user-dirs-gtk
$ export LANG=en_US
$ xdg-user-dirs-gtk-update
# 然后会有个窗口提示语言更改,更新名称即可
$ export LANG=zh_CN.UTF-8
$ sudo pacman -Rs xdg-user-dirs-gtk

deepin 截图不能粘贴#

原文

我试了下,安装 GPaste 并启动就可以了。

$ yay -Rs gpaste

卸载后虽然仍起作用,但重启就不行了。

VMware 的安装#

某些特殊软件安装前建议看下官方 WIKI,比如 VMware,我想当然地用 pacman - 装上,并不能正常使用。

Manjaro-WIKI-VMware

安装方式如下:

pacman build vmware-workstation
sudo modprobe -a vmw_vmci vmmon

sudo systemctl enable --now vmware-networks.service
sudo systemctl enable --now vmware-usbarbitrator.service
sudo systemctl enable --now vmware-hostd.service

# 不然使用时各种报错