结果展示

img

img

基本配置

关于 manjaro 的安装这里不再赘述了,安装的时候选择闭源驱动无脑下一步即可。

manjaro 我使用的是英文安装,这样可以避免 ~ 家目录中出现中文名称的子目录。

安装完成后,在系统设置、区域设置、语言中添加简体中文语言包,然后在区域选项中选择中文并重新注销即可将语言变更为中文。

img

img

manjaro 换源,执行以下命令:

1
$ sudo pacman-mirrors -c China

添加 archlinuxcn 源,获得更多的包:

1
2
3
4
5
$ sudo vi /etc/pacman.conf

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

更新系统、软件:

1
$ sudo pacman -Syyu

下载 yay AUR 助手,后续更新系统、下载软件等均可以使用 yay 命令代替 pacman 命令:

1
$ sudo pacman -S yay

安装 base-devel,yay 命令构建包时会使用到:

1
$ sudo pacman -S base-devel

选择性下载常用终端工具:

1
2
3
4
5
6
7
8
9
$ sudo pacman -S tree python-pip neovim neofetch screenkey figlet iputils

# tree:玩 Linux 的朋友都知道该命令
# python-pip:Python 用户必备
# neovim:vim 党福音
# neofetch:查看系统信息
# screenkey:显示按下的键
# figlet:生成一个 logo
# iputils:允许用户使用 ping 命令

将 nvim 设置别名为 vim:

1
2
3
$ nvim ~/.zshrc

alias vim="nvim"

退出后执行:

1
$ source ~/.zshrc

安装常用软件

输入法配置

之前写的 fcitx 有点过时了,现在推荐使用 fcitx5,安装方法如下:

1
2
3
4
$ yay -S fcitx5-im  # 安装 fcitx5 输入法框架包
$ yay -S fcitx5-chinese-addons # 安装中文输入法
$ yay -S fcitx5-material-color # 安装美化包
# yay -S fcitx5-pinyin-zhwiki # 安装词库

安装完成后编辑将下面 3 行代码加入到 /etc/environment 文件中,这样可以预防出现某些程序不能输入中文的情况发生:

1
2
3
GTK_IM_MODULE=fcitx
QT_IM_MODULE=fcitx
XMODIFIERS=@im=fcitx

注销当前用户,然后重新登陆,打开 fcitx5-configtool 进行配置(换 DWM 桌面了,截图有点问题凑活看吧)。

先将右下角的仅显示当前语言的勾去掉,然后找到拼音输入法将他添加到左侧。

img

然后找到附加组件

img

点击配置,上下翻页快捷键改一下:

img

继续往下翻,找到云拼音然后点击配置:

img

返回后翻到最顶部,有个经典用户界面,点击配置,选择一个你喜欢的主题:

img

至此输入法就配置完成了。

clash GUI

clash 是一款非常强大的上网神器,现在在 Linux 平台下也推出了 GUI 版本。

可以直接通过 yay 安装,也可以手动安装:

1
$ yay -S clash-for-windows-bin

我这里选择手动安装。

访问 githu ,选择 tar.gz 格式下载。

下载完成后,将其解压到 /usr/local 目录下:

1
2
$ sudo tar -xvf ~/Downloads/Clash.for.Windows-0.19.5-x64-linux.tar.gz -C /usr/local
$ sudo mv /usr/local/Clash\ for\ Windows-0.19.5-x64-linux /usr/local/clash

解压后,使用以下命令运行 clash,点击 proxies 添加订阅链接:

1
$ /usr/local/clash/cfw

点击 general 勾选 allow lan、tun mode、mixin、start with linux 等选项。

img

在系统设置中,手动添加全局代理 127.0.0.1:7890。

img

注意!Mozilla 系列软件是不会直接走系统代理的,如 firefox、thunderbird 等都需要在 settings 中使用手动设置代理。

img

接下来添加终端代理,在 ~/.zshrc 中添加以下命令:

1
2
3
4
alias setproxy="export ALL_PROXY=socks5://127.0.0.1:7890; echo 'SET PROXY SUCCESS!!!'"
alias unsetproxy="unset ALL_PROXY; echo 'UNSET PROXY SUCCESS!!!'"
# 打开终端自动开启代理
setproxy

source 一下 zshrc 文件,并输入 setproxy 命令即可打开代理。

验证代理是否生效,可输入以下命令并观察请求是否先发送至 127.0.0.1:7890 处:

1
$ curl -vv http://www.youtube.com/

由于是 tar.gz 安装,所以安装完成后没有可视化的启动程序。

我们自建一个启动程序,在 ~/.local/share/applications 下新建以下文件,提前下载好一个 PNG 格式的 clash 图标放在安装目录下:

1
2
3
4
5
6
7
8
9
$ vim ~/.local/share/applications/clash.desktop

[Desktop Entry]
Type=Application
Name=Clash For Linux
Exec=/usr/local/clash/cfw
Icon=/usr/local/clash/clash.png
Terminal=false
Categories=program;InstantMessaging

chrome

安装 chrome:

1
$ yay -S google-chrome

网易云音乐

安装网易云音乐:

1
$ sudo pacman -S netease-cloud-music

WPS

安装 WPS:

1
2
$ yay -S ttf-wps-fonts wps-office-mui-zh-cn wps-office-mime-cn wps-office-cn
$ yay -S wps-office-fonts ttf-ms-fonts

百度网盘

安装百度网盘,选择第 2 个基于 electron 的版本:

1
$ yay -S baidunetdisk

迅雷

安装迅雷:

1
$ yay -S xunlei-bin 

微信

安装微信:

1
$ yay -S deepin-wine-wechat

个人遇到了 2 个 BUG,其一是微信字体会显示方框,解决办法参见下面链接中 3 楼给出的方案:

第二个 BUG 是微信运行时会显示:

程序 WeChatApp.exe 遇到严重问题需要关闭。我们对此造成的不便表示抱歉。

其实这个 BUG 不影响使用,但是看着心烦,解决办法是先运行如下命令:

1
/opt/apps/com.qq.weixin.deepin/files/run.sh winecfg

然后选择函数库选项卡,新增函数库顶替的输入框中中输入 wechatapp.exe ,点击右侧添加,选择新建好的 wechatapp.exe,点击编辑,选择停用即可。

img

还有一个选择方案就是使用 uos 的移植微信,他其实是基于网页版的封装。功能性弱一些但兼容性好:

1
$ yay -S winchat-uos

QQ

安装 QQ:

1
$ yay -S deepin-wine-qq

腾讯会议

安装腾讯会议:

1
$ yay -S wemeet

目前版本有些小 BUG,但能忍受,将就使用吧。

teamviewer

安装 teamviewer:

1
$ yay -S teamviewer

火焰截图

安装 flameshot:

1
$ sudo pacman -S flameshot

安装完成后需要配置快捷键,打开系统设置,快捷键,在右侧添加应用程序,自己定义一个快捷键:

img

flameshort 默认就是开机启动,此外图片存放在 ~/Pictures 目录中。

peek

安装 peek:

1
$ sudo pacman -S peek

不管是 Linux、Mac、Windows 上再也没有比 peek 录制 GIF 更简单的软件了,强烈推荐。

Typora

Typora 最新版已经收费,可以在官网下载以前的版本并手动安装,下面是最后一个免费版本:

下载完成后手动安装:

1
2
$ sudo tar -xvf ~/Downloads/Typora-linux-x64-1.0.3.tar.gz -C /usr/local
$ sudo mv /usr/local/bin/Typora-linux-x64 /usr/local/typora

添加可视化启动程序,在 ~/.local/share/applications 下新建以下文件,Typora 内部自己有 PNG 图片,所以不需要额外下载,直接复制粘贴以下内容即可:

1
2
3
4
5
6
7
8
9
$ vim ~/.local/share/applications/typora.desktop

[Desktop Entry]
Type=Application
Name=Typora
Exec=/usr/local/typora/Typora
Icon=/usr/local/typora/resources/assets/icon/icon_512x512@2x.png
Terminal=false
Categories=program;InstantMessaging

Picgo

Typora 安装好后,再继续安装 picgo,可直接使用 yay 命令下载:

1
$ yay -S picgo-appimage

如果可以直接安装就直接使用。我这里自动安装出现了问题,所以又需要手动安装了。

先到 picgo 的 github 中下载 AppImage 后缀的包,然后双击安装即可。

在 typora 中,设置图片上传服务:

img

如果 picgo 图片上传失败,请将 COS 版本切换为 V5 再次尝试。

virtualbox

安装 virtualbox:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
# 查看内核版本
$ mhwd-kernel -li
Currently running: 5.15.12-1-MANJARO (linux515)
The following kernels are installed in your system:
* linux515
# 安装 virtualbox 时注意下面的 515 替换成你的版本
$ sudo pacman -Syu virtualbox linux515-virtualbox-host-modules

# 查看 Virtualbox 版本
$ vboxmanage --version
6.1.30r148432

# 安装拓展包,选择跟 Virtualbox 版本号一致的
$ yay virtualbox-ext-oracle

APIPost

后端开发人员必备的一款接口测试工具:

1
$ yay -S apipost

转换 deb 包

可能一些软件需要我们手动转换 deb 包后安装,这时候就需要 debtab 工具来转换。

安装 debtab:

1
$ sudo pacman -S debtap

更新 debtab:

1
$ sudo debtap -u

下载好待转换的 deb 包,将其转换,以下步骤一路回车即可:

1
$ sudo debtap ~/Downloads/包名.deb

安装转换后的包:

1
$ sudo pacman -U ~/Downloads/包名.pkg.tar.zst

搭建开发环境

proxychains

不知为何,在 manjaro 终端中执行某些命令并不会进行代理。

所以这里安装了一款 proxychains 终端命令,他能够让后续命令强制走代理:

1
$ yay -S proxychains

安装完成后,需要进行配置:

1
$ sudo nvim /etc/proxychains.conf

直接按下大 G,编辑最后一行为你的代理 IP 和 PORT。

img

后续如果要使用代理,只需要向下面这样做:

1
$ proxychains command

git

配置 git 用户名、密码、代理 :

1
2
3
4
$ git config --global user.name <用户名>
$ git config --global user.email <邮箱地址>
$ git config --global http.proxy socks5://127.0.0.1:7890
$ git config --global https.proxy socks5://127.0.0.1:7890

添加 SSH:

1
$ ssh-keygen # 疯狂回车

拷贝公钥 ~/.ssh/id_rsa.pub 中的内容,到 github 中添加 ssh keys 即可。

oh my zsh

manjaro KDE 自带了 zsh,所以可以直接安装 oh my zsh,如果你 wget 下载不下来可以直接打开后面的网页链接,然后将内容复制到一个文本中,将文本添加可执行权限自己手动执行:

1
$ proxychains wget https://github.com/robbyrussell/oh-my-zsh/raw/master/tools/install.sh -O - | sh

安装完成后需要重新将自定义的 alias 命令重新加入:

1
2
3
4
5
6
# 自定义配置
alias vim="nvim"
alias setproxy="export ALL_PROXY=socks5://127.0.0.1:7890; echo 'SET PROXY SUCCESS!!!'"
alias unsetproxy="unset ALL_PROXY; echo 'UNSET PROXY SUCCESS!!!'"
# 打开终端自动开启代理
setproxy

更改一下默认 shell 为 zsh:

1
2
$ chsh -s /usr/bin/zsh
$ zsh

下载插件:

1
2
3
4
5
6
7
8
# 自动补全
$ git clone https://github.com/zsh-users/zsh-autosuggestions $ZSH_CUSTOM/plugins/zsh-autosuggestions

# 语法高亮
$ git clone https://github.com/zsh-users/zsh-syntax-highlighting.git $ZSH_CUSTOM/plugins/zsh-syntax-highlighting

# zsh-vi-mod
$ git clone https://github.com/jeffreytse/zsh-vi-mode $ZSH_CUSTOM/plugins/zsh-vi-mode

打开 ~/.zshrc 找到 plugins 将它改成下面这样:

1
2
3
4
5
6
7
plugins=(
git
zsh-syntax-highlighting
zsh-autosuggestions
zsh-vi-mode
colored-man-pages
)

打开 ~/.zshrc 文件,修改 ZSH_THEME,更多样式可参见 https://github.com/ohmyzsh/ohmyzsh/wiki/Themes:

1
ZSH_THEME="bira"

安装 autojump,终端目录跳转神器:

1
2
3
4
5
$ git clone https://github.com/wting/autojump
$ cd autojump
$ ./install.py
$ cd ..
$ rm -rf autojump

打开 ~/.zshrc 在末尾添加:

1
[[ -s ~/.autojump/etc/profile.d/autojump.sh ]] && . ~/.autojump/etc/profile.d/autojump.sh

后续想跳转到之前所在目录,可直接按下 j 和目录名的前缀即可完成跳转。

NVM

个人会使用 Node.js 进行开发,所以需要安装 NVM 来方便管理多个 Node 版本。

下载 NVM:

1
$ sudo pacman -S nvm

创建 .nvm 目录:

1
$ mkdir ~/.nvm

在 ~/.zshrc 文件中添加下面的内容:

1
2
3
4
5
# nvm 配置
source /usr/share/nvm/init-nvm.sh
# 修改nvm下载源为taobao镜像源
export NVM_NODEJS_ORG_MIRROR=http://npm.taobao.org/mirrors/node
export NVM_IOJS_ORG_MIRROR=http://npm.taobao.org/mirrors/iojs

source 一下文件后开始下载 Node,个人会用 2 个版本的 Node:

1
2
$ nvm install --lts
$ nvm install 10.24.1

取别名:

1
2
$ nvm alias old 10.24.1
$ nvm alias default 16.13.2

Golang

个人会使用 Golang 进行开发,所以下面会安装 Go 语言。

安装 Go 语言:

1
$ sudo pacman -S go

在 ~/.zshrc 中进行设置:

1
2
3
4
export GOROOT=/usr/lib/go/
export GO111MODULE=on
export GOPROXY="https://proxy.golang.org,direct"
export PATH=$PATH:$GOROOT/bin

Python

个人会使用 Python 进行开发,manjaro 自带 Python3,而且版本非常新,所以下面会直接配置 Python 的虚拟环境。

安装 virtualenv 和 virtualenvwrapper:

1
2
$ pip3 install -i https://pypi.douban.com/simple virtualenv
$ pip3 install -i https://pypi.douban.com/simple virtualenvwrapper

创建虚拟环境目录:

1
$ mkdir ~/.virtualenvs

编辑 ~/.zshrc 文件,加入下面 2 行代码:

1
2
3
4
5
$ vim ~/.zshrc

export VIRTUALENVWRAPPER_PYTHON="/usr/bin/python3"
export WORKON_HOME="~/.virtualenvs"
source ~/.local/bin/virtualenvwrapper.sh

source ~/.zshrc 文件后,修改 pip 源,创建 pip 配置文件文件并填入以下内容:

1
2
3
4
5
$ mkdir ~/.pip
$ vim ~/.pip/pip.conf

[global]
index-url = https://mirrors.aliyun.com/pypi/simple

gitbook

安装 gitbook:

1
$ proxychains npm i -g gitbook-cli

docsfiy

安装 docsfiy:

1
$ proxychains npm i -g docsify-cli

vscode

安装 vscode:

1
$ yay -S visual-studio-code-bin

再下载一个 fire code 字体,开发人员最喜欢的字体没有之一:

1
$ yay -S ttf-fira-code

arch 系的 Linux 无法保存 vscode 里 github 的登录状态,需要下载一个插件进行解决:

1
$ yay -S qtkeychain gnome-keyring

nvim

nvim 个人使用非常多,地表最强编辑器,具体配置这里不再赘述了,要配置一个好用的 neovim 编辑器还是有点麻烦的。

TUI 工具集

trash-cli

作为一名 TUI 用户, rm 命令是我经常使用的。

所以为了预防误删除的情况,我下载了 trash-cli:

1
$ yay -S trash-cli

下载完成后打开 ~/.zshrc 文件,将 rm 命令 alias 一下即可:

1
2
alias rm="trash"
alias rr="trash-restore"

lazygit

懒人的 git 神器,直接下载安装即可:

1
$ yay -S lazygit

alacritty

我个人比较喜欢的一款终端:

1
$ yay -S alacritty-git

好吧,我现在抛弃了 alacritty 而使用 st 了。当然 alacritty 是一个非常好的终端模拟器。

translate-shell

一款命令行翻译神器:

1
$ yay -S translate-shell

ranger

ranger 是一个 TUI 的文件管理器,非常方便:

1
$ yay -S ranger

美化 KDE 桌面

osc-url

由于 manjaro 的系统设置是不走代理的,所以我们可以通过 osc-url 在 KDE Store https://store.kde.org/browse 中在线下载主题并自动安装。

(2022-06-02 留言:我现在没使用 KDE 了,而使用 DWM,下面的内容在我上一次 4 月份使用时是依然可用的,但 ocs-url 下载插件好像已经凉了,你可以通过手动下载并安装插件,不管怎么样都可以试试)

先安装下面的内容:

1
$ sudo pacman -S qt5-base qt5-svg qt5-declarative qt5-quickcontrols

下载 ocs-url:点我跳转

img

下载完成后手动安装:

1
$ sudo pacman -U ~/Downloads/ocs-url-3.1.0-1-x86_64.pkg.tar.xz

后续点击主题的 install 按钮后,会跳出是否打开 xdg-open,选择打开并安装主题就 OK 了。

也可以下载主题的压缩包,然后解压到下面的目录中:

1
2
3
4
5
6
7
8
9
~/.local/share/plasma/look-and-feel/  # 存放全局主题
~/.local/share/plasma/desktoptheme/ # 存放 plasma 视觉风格
~/.local/share/plasma/plasmoids/ # 存放插件
~/.local/share/aurorae/themes/ # 存放窗口装饰
~/.local/share/color-schemes/ # 存放颜色
~/.local/share/icons/ # 存放图标
~/.local/share/fonts/ # 存放字体
~/.local/share/sddm/themes/ # 欢迎屏幕
~/.local/share/backgrounds/ # 壁纸

全局主题

全局主题使用的是 WhiteSur-dark。

https://www.pling.com/p/1400424

img

下载完成后打开系统设置,外观,全局主题中应用:

img

应用程序风格

应用程序风格使用的系统自带的 Oxygen 轻氧。

img

视觉风格

视觉风格使用的是 ChromeOS:

https://www.pling.com/p/1354050

img

窗口装饰

窗口装饰使用的是 WhiteSur-Sharp-dark:

img

注意,标题栏上按钮位置可以拖动到左侧:

img

颜色设置

颜色使用的是 WhiteSur:

img

字体样式

字体使用的系统默认字体,当然你也可以选择其他字体使用:

img

图标样式

图标样式使用的是 WhiteSur-dark:

img

光标样式

光标样式使用的是 Volantes Cursors:

https://store.kde.org/p/1356095

img

欢迎屏幕

欢迎屏幕使用的是自带的 Breath Dark:

img

特效相关

特效相关设置是在 工作区行为/桌面特效 中。

img

img

这里的窗口背景虚化可以关掉,若关掉可以不装圆角插件了

img

img

img

dock

下载 latte-dock:

1
sudo pacman -S latte-dock

启动 dock :

1
latte-dock

删除 manjaro 面板菜单。

右击 dock 栏,配置 latte、选择布局编辑器,选择 extended。

img

右击 dock 栏,编辑停靠栏、点击高级。

img

img

img

img

系统托盘

当打开一个应用之后,可以在 dock 栏中右击该应用的图标,然后将其固定在 dock 栏上。

我们还需要一个类似 MAC 系统的 launchpad 程序,可以右击 dock 栏然后添加部件,选择右边的 Get New Widgets:

img

搜索 OSXLaunchpad 下载并添加,然后将它添加到 dock 栏上。

添加完成后,在 OSXLaunchpad 上单击右键,然后配置 OSXLaunchpad 向下面这样设置:

img

图标可以搜索 ibus-typing-booster 并选择。

界面圆角

第三方的圆角插件 LightlyShaders,相较于内置的圆角插件来说它更美观(会影响性能,我自己关掉他了)。

https://github.com/a-parhom/LightlyShaders

按照 README 文档安装好后,到系统设置、工作区行为、桌面特效中打开 LightlyShaders 的设置项:

img

KDE 插件

最后推荐 1 个 KDE 的小插件, 翻译插件 Translator:

直接在顶部面板添加小部件中选中它并添加。

可以把内置应用 Yukauke 也添加到小部件中,然后在上方的面板中添加。

img

pacman(yay)常用命令

记录一下 pacman 与 yay 的常用命令,都是通用的:

  • Sy:从远程镜像获取软件包更新信息
  • Syy:强制获取更新信息
  • Syyu:更新软件包
  • Sc:删除以下载的过时安装包
  • Syyw:下载较新的软件包,但不安装
  • Ss:从远程仓库中搜索软件包
  • R:删除软件
  • Rs:删除软件及其依赖文件
  • Rns:删除软件和依赖文件及其配置文件
  • Qe:显示用户安装的软件包
  • Qq:不输出软件的版本信息
  • Qn:显示从官方镜像中下载的软件
  • Qm:显示从 AUR 中下载的软件
  • Qdt:显示孤包
  • Qs:显示本地库的包

最后记得常运行 -Syu 进行系统更新,太久不更新容易滚挂

如何在 Neofetch 输出中使用自定义图像?

image-20230917160644990

默认情况下,Neofetch 将显示你的操作系统 logo 以及系统信息。当然,你可以根据需要更改图像。

要显示图像,Linux 系统应该安装以下依赖项:

  1. w3m-img(用于显示图像。w3m-img 有时与 w3m 包捆绑在一起),
  2. Imagemagick(用于创建缩略图),
  3. 支持 \033[14t 或者 xdotool 或者 xwininfo + xprop 或者 xwininfo + xdpyinfo 的终端。

大多数 Linux 发行版的默认仓库中都提供了 W3m-img 和 ImageMagick 包。因此,你可以使用你的发行版的默认包管理器来安装它们。

例如,运行以下命令在 Debian、Ubuntu、Linux Mint 上安装 w3m-img 和 ImageMagick:

1
$ sudo apt install w3m-img imagemagick

以下是带 w3m-img 支持的终端列表:

  1. Gnome-terminal,
  2. Konsole,
  3. st,
  4. Terminator,
  5. Termite,
  6. URxvt,
  7. Xfce4-Terminal,
  8. Xterm

如果你的系统上已经有了 kitty、Terminology 和 iTerm,那么就无需安装 w3m-img。

现在,运行以下命令以使用自定义图像显示系统信息:

1
$ neofetch --w3m /home/sk/Pictures/image.png

或者,

1
$ neofetch --w3m --source /home/sk/Pictures/image.png

示例输出:

img

使用自定义 logo 的 Neofetch 输出

使用你自己的图片替换上面图片的路径。

或者,你可以指向包含以下图像的目录。

1
$ neofetch --w3m <path-to-directory>

配置 Neofetch

当我们第一次运行 Neofetch 时,它默认会为每个用户在 $HOME/.config/neofetch/config.conf 中创建一个配置文件。它还会在 $HOME/.config/neofetch/config 中创建一个全局的 neofetch 配置文件。你可以调整此文件来告诉 neofetch 该显示、删除和/或修改哪些详细信息。

还可以在不同版本中保留此配置文件。这意味着你只需根据自己的喜好自定义一次,并在升级到更新版本后使用相同的设置。你甚至可以将此文件共享给你的朋友和同事,使他拥有与你相同的设置。

要查看 Neofetch 帮助部分,请运行:

1
$ neofetch --help

就我测试的 Neofetch 而言,它在我的 Arch Linux 系统中完美地工作。它是一个非常方便的工具,可以在终端中轻松快速地打印系统的详细信息。