装机前备份 nginx、.ssh、hosts、settings.xml、electerm
选择源
sudo pacman-mirrors -i -c China -m rank
sudo pacman -Sy
手动添加archlinuxcn上海交大源
$ sudo pacman -S vim
$ sudo vim /etc/pacman.conf
[archlinuxcn]
SigLevel = Optional TrustedOnly
Server = https://mirrors.sjtug.sjtu.edu.cn/archlinux-cn/$arch
$ sudo pacman -Sy
安装archlinuxcn-keyring包导入GPG key
sudo pacman -Sy archlinuxcn-keyring
sudo pacman -Sy
更新系统
sudo pacman -Syyu
安装 yay 和开发包
sudo pacman -S yay base-devel
设置管理器 -> Manjaro Settings Manager -> 硬件设定
设置管理器 -> Manjaro Settings Manager -> 时间和日期 -> 自动设置时间和日期
自定义时间显示格式:%b%e日,%a,%R
,效果为:9月7日,一,09:50
$ sudo vim /etc/lightdm/lightdm.conf
[Seat:*]
greeter-setup-script=/usr/bin/numlockx on
设置管理器 -> 外观 -> 字体 -> 默认等宽字体
打开终端 -> 编辑 -> 首选项 -> 外观 -> 勾选使用系统字体
fcitx5-chinese-addons:包含了大量中文输入方式:拼音、双拼、五笔拼音、自然码、仓颉、冰蟾全息、二笔等
fcitx5-pinyin-zhwiki:felixonmars 根据中文维基百科创建的词库。适用于 拼音输入法
fcitx5-material-color:主题,提供了类似微软拼音的外观
sudo pacman -S fcitx5-qt fcitx5-gtk fcitx5-chinese-addons fcitx5-configtool fcitx5-pinyin-zhwiki fcitx5-material-color
查看前端显示是 x11 还是 wayland
echo $XDG_SESSION_TYPE
X11 用户直接编辑 ~/.xprofile 添加如下内容
export GTK_IM_MODULE=fcitx5
export XMODIFIERS=@im=fcitx5
export QT_IM_MODULE=fcitx5
fcitx5 &
Wayland 用户在 ~/.pam_environment 中添加如下内容
vim ~/.pam_environment
GTK_IM_MODULE DEFAULT=fcitx
QT_IM_MODULE DEFAULT=fcitx
XMODIFIERS DEFAULT=@im=fcitx
INPUT_METHOD DEFAULT=fcitx
sudo pacman -S fcitx-configtool
yay -S fcitx-sogoupinyin
注意:最新版本并不好用,我们安装 fcitx-sogoupinyin-2.3.1.0112 版本,参考:Manjaro 如何安装旧版本软件
这个版本需要以下依赖替换默认 fcitx
$ sudo pacman -S fcitx-lilydjwg-git
# 忽略升级
$ sudo vim /etc/pacman.conf
[Options]
IgnorePkg=fcitx-sogoupinyin
如果需要恢复 fcitx 默认设置,则删除配置文件重启即可
rm -rf .config/fcitx/
$ vim ~/.xprofile
export GTK_IM_MODULE=fcitx
export QT_IM_MODULE=fcitx
export XMODIFIERS="@im=fcitx"
Ctrl+Alt+T
弹出命令窗口的样式,将xfce4-terminal --drop-down
改为xfce4-terminal
任务栏英文输入法右键 -> 配置 -> 全局配置 -> 程序 -> 在窗口见共享状态 -> 所有
fcitx -r
yay -S com.qq.weixin.spark
安装字体,解决中文显示框框的问题
下载微软雅黑字体,解压后得到WeiRuanYaHei-1.ttf
cp WeiRuanYaHei-1.ttf ~/.deepinwine/Spark-WeChat/drive_c/windows/Fonts/
yay -S deepin-wine-wechat
# 切换到 deepin-wine 解决一系类问题
/opt/apps/com.qq.weixin.deepin/files/run.sh -d
微信输入框输入汉字为方块解决方法
yay -S com.qq.tim.spark
开启后记得右键设置开机启动
sudo pacman -S redshift
sudo pacman -S google-chrome
# 解决需要输秘钥解锁问题
sudo pacman -S seahorse
seahorse
打开密码和密匙对话框,在密码→登录上右键(注意在密码项目上,不是右侧的 Chrome 项目),选择更改密码,删除为空,保存。重启即可解决。
# 国际版,推荐,更清爽,没有登录按钮
sudo pacman -S wps-office
# 国内版,实测也无广告
sudo pacman -S wps-office-cn
# 如果为英文,点右上角的 A 切换语言,如果没有中文则安装中文语言包
sudo pacman -S wps-office-mui-zh-cn
# 可选安装 WPS 需要的符号字体
sudo pacman -S ttf-wps-fonts
yay -S netease-cloud-music
https://github.com/abraunegg/onedrive
sudo pacman -S onedrive-abraunegg
# 配置账户
onedrive
# 将弹出的链接复制粘贴到浏览器,根据提示登录,最后得到一个链接,复制再粘贴回来回车就可以了
# 开启同步,默认同步目录 ~/OneDrive
onedrive --synchronize
# 作为系统服务开机启动
systemctl --user enable onedrive
systemctl --user start onedrive
修改密码后的重新登陆
# 停止服务
systemctl --user stop onedrive.service
# 登出重新登录
onedrive --logout
# 开启服务
systemctl --user start onedrive
多线程下载神器 https://github.com/subhra74/xdm,安装后打开软件根据提示安装浏览器插件
实测以下命令安装后会打不开,提示运行Java环境异常
yay -S xdman
所以我们直接在页面下载最新版的linux安装包,解压后得到 install.sh
chmod +x install.sh
sudo ./install.sh
sudo pacman -S keepassxc
sudo pacman -S keepass
https://keepass.info/translations.html
下载简体中文插件
解压得到插件,移动插件
cd /usr/share/keepass/
sudo mkdir Languages
cd ~
sudo mv Chinese_Simplified.lngx /usr/share/keepass/Languages/
解决汉化乱码的问题
Tools -> Options -> Interface -> 拉到最后
把Force using system font (Unix only)的钩钩去掉即可
汉化
View -> Change Language...
选择汉化插件重启即可
chrome 浏览器插件
https://keepass.info/plugins.html 下载 KeePassHttp,重启 keepass
cd /usr/share/keepass/Plugins
sudo wget https://raw.github.com/pfn/keepasshttp/master/KeePassHttp.plgx
安装 KeePassHelper 浏览器插件
https://keepass.info/plugins.html#kphelper 选定指定的浏览器安装插件
但个人感觉不好用,推荐 chromeipass
yay -S anydesk-bin
yay -S deepin.com.thunderspeed
yay -S jdk8
$ sudo tar -zxvf jdk1.8.0_241.tar.gz -C /opt
$ sudo vim /etc/profile
#set java environment
export JAVA_HOME=/opt/jdk1.8.0_241
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
$ source /etc/profile
$ sudo pacman -S jdk11-openjdk
# 查看已安装的 jdk
$ archlinux-java status
Available Java environments:
java-11-openjdk (default)
java-8-openjdk/jre
# 切换默认 jdk
$ sudo archlinux-java set java-11-openjdk
$ java -version
openjdk version "11.0.12" 2021-07-20
OpenJDK Runtime Environment (build 11.0.12+7)
OpenJDK 64-Bit Server VM (build 11.0.12+7, mixed mode)
参考:
idea 中文输入法定位不准问题修复(fcitx框架输入法)
https://github.com/JetBrains/JetBrainsRuntime
https://github.com/prehonor/myJetBrainsRuntime
经测试在 manjaro20.03 和 Ubuntu18.04 上均编译失败,最后在虚拟机的 Ubuntu20.04 上安装成功,安装教程如下:
由于 github 速度太慢,把 JetBrainsRuntime 项目导入到 gitee 再下载
git config --global core.autocrlf input
https://gitee.com/Jial08/JetBrainsRuntime.git
https://github.com/prehonor/myJetBrainsRuntime.git
# 安装依赖
sudo apt-get install autoconf make build-essential libx11-dev libxext-dev libxrender-dev libxtst-dev libxt-dev libxrandr-dev libcups2-dev libfontconfig1-dev libasound2-dev
# 编译需要 openjdk 10/11 环境,安装 11 环境
sudo apt install openjdk-11-jdk
# idea Help -> About 查看运行环境版本,根据版本切换到具体 tag,以 idea2020.2 为例,运行环境版本为 b944
git checkout -b jb11_0_7-b944 jb11_0_7-b944
cp myJetBrainsRuntime/idea.patch JetBrainsRuntime/
cd JetBrainsRuntime
git apply idea.patch
sh ./configure --disable-warnings-as-errors
make images
运行途中可能会报错,根据报错提示安装相应依赖,最后会在build/linux-x86_64-normal-server-release/images/
目录下生成编译好的jdk
。
已编译好的jdk环境可以从 JetBrainsRuntime-build 获取,因为 gitee 对单文件 100m 的限制,采用分卷压缩,下载后进入项目目录,cat jdk.tar.gz.* | tar zx
合并分卷解压缩即可。
# 进入 docker 服务器终端
docker run -it -u 1000 -v /home/jl/dockerfile:/home/apache jetbrainsruntime-env /bin/bash
# idea Help -> About 查看运行环境版本,根据版本切换到具体 tag,以 idea2020.2 为例,运行环境版本为 b944
git checkout -b jb11_0_7-b944 jb11_0_7-b944
# 编译
cp myJetBrainsRuntime/idea.patch JetBrainsRuntime/
cd JetBrainsRuntime
git apply idea.patch
sh ./configure --disable-warnings-as-errors
make images
# 阿里代码规范
Alibaba Java Coding Guidelines
# 右侧预览,方便快速定位,Ctrl+Shift+G 快速打开关闭
CodeGlance
# mybatis 代码到 xml 跳转
Free Mybatis plugin
# 分析依赖冲突插件
Maven Helper
# 括号开始结尾,高亮显示
HighlightBracketPair
# 多彩括号,区域代码高亮
Rainbow Brackets
# 翻译
Translation
# 字符串各种显示格式转换
String Manipulation
CamelCase
# git 显示插件,可以在每行显示修改人和修改时间
GitToolBox
# 热加载修改的代码而无需重启项目,使用参考下方链接
JRebel and XRebel for IntelliJ
# 重置试用期
IDE Eval Reset
# 解决 Mapper 接口提示报错
MybatisPlus
Intellij JRebel 插件使用
Jetbrains系列产品重置试用方法
当你的私钥对是备份还原的时候可能权限太开放而导致 clone 项目失败,修改权限为 400
chmod 400 ~/.ssh/id_rsa
Fallback font 意思是回滚字体,在设置的主字体不包含某些字符(中文字符)时,就会使用Fallback font字体来显示。我们选择思源黑体,SC 代表简体中文。
sudo pacman -S visual-studio-code-bin
常用插件
Chinese (Simplified) Language Pack for Visual Studio Code
JSON Tools
Markdown All in One
Markdown Preview Enhanced
markdownlint
Markdown TOC
解除 html 警告
{
"markdownlint.config": {
"default": true,
"MD033": {
"allowed_elements": [ "font", "li", "table", "tr", "td" ]
}
}
}
sudo pacman -S wechat-devtools
yay -S xmind
因为 xmind8 依赖 openjdk8,所以在升级 openjdk11 并设置为默认 java 环境时至少要安装一个最小的 openjdk8 开发环境,并在配置文件中指定 vm 环境
sudo pacman -S jre8-openjdk-headless
# 在 /usr/share/xmind/XMind/XMind.ini 配置文件的 -vmargs 前插入 vm 环境配置
sudo sed -i '/-vmargs/i\
-vm\
/usr/lib/jvm/java-8-openjdk/jre/bin
' /usr/share/xmind/XMind/XMind.ini
sudo pacman -S postman
yay -S miniconda3
粘贴板神器,类似 ditto,可惜 ditto 没有 Linux 版本
sudo pacman -S copyq
设置 Alt+V 快捷键弹出剪贴板
托盘右键 -> 首选项 -> 快捷键 -> 显示/隐藏主窗口
可以把剩余设置的快捷键都删除,避免快捷键冲突
https://electerm.html5beta.com/
github 指定的 sanp 和 npm 安装都有问题,所以我们用 tar.gz 包
$ wget https://github.com/electerm/electerm/releases/download/v1.3.54/electerm-1.3.54-linux-x64.tar.gz
$ sudo tar -zxvf electerm-1.3.54-linux-x64.tar.gz -C /opt
# 保存上面的图标到 /opt/electerm-1.3.54-linux-x64/ 目录为 icon.png
# 编写启动脚本
$ sudo vim /usr/share/applications/electerm.desktop
[Desktop Entry]
Name=electerm
Exec=electerm
Terminal=false
Type=Application
Icon=/opt/electerm-1.3.54-linux-x64/icon.png
Exec=/opt/electerm-1.3.54-linux-x64/electerm
StartupWMClass=plasmashell
Comment=Terminal/ssh/sftp client(linux, mac, win) based on electron/ssh2/node-pty/xterm/antd/subx and other libs
Categories=Development;System;TerminalEmulator;
将备份的 nginx 解压到 /opt 目录
$ sudo vim /etc/systemd/system/nginx.service
Description=nginx
After=network.target remote-fs.target nss-lookup.target
[Service]
Type=forking
ExecStart=/opt/nginx/sbin/nginx -c /opt/nginx/conf/nginx.conf
ExecReload=/opt/nginx/sbin/nginx -s reload
ExecStop=/opt/nginx/sbin/nginx -s stop
[Install]
WantedBy=multi-user.target
# 设置开机启动
$ sudo systemctl enable nginx.service
# 查询服务是否开机启动
$ systemctl is-enabled nginx.service
注意:
vue 项目可能会因为 nginx 拥有者为 root 而没有读写权限导致项目启动失败,可能根据/opt/nginx/logs/error.log
的错误提示对相应目录对本地用户赋予相应权限即可。
sudo pacman -S npm
参考:https://zhuanlan.zhihu.com/p/83391251
# 安装
sudo pacman -S virtualbox
# 解决安装启动虚拟机过程中出现的错误
# 查看系统内核
uname -srm
# 根据系统内核选择对应版本的 headers
sudo pacman -S linux-headers
sudo pacman -S virtualbox-host-dkms
sudo pacman -S virtualbox-host-dkms
可以画流程图、类图等
sudo pacman -S drawio-desktop-bin
Snipaste 在Windows 下是一个很好用的工具,可惜 Linux 版一直在开发中,那么就先用 wine 版的 32 位版本,参考如何用Deepin-wine安装运行win32的程序。
Snipaste 在Windows 下是一个很好用的工具,可惜 Linux 版一直在开发中,那么就先用 wine 版的 32 位版本,发现 wine 对 Snipaste 的支持不友好,deepin-wine 挺好,所以用 deepin-wine 启动 Snipaste,参考如何用Deepin-wine安装运行win32的程序。
安装 deepin-wine
sudo pacman -S deepin-wine
在~/.deepinwine
目录下创建Snipaste
文件夹,并把在 https://zh.snipaste.com 下载的32位程序解压到该目录,用 deepin-wine 启动程序:
WINEPREFIX=~/.deepinwine/Snipaste deepin-wine ~/.deepinwine/Snipaste/Snipaste.exe
创建启动脚本:
$ vim Snipaste-start.sh
#!/bin/sh
WINEPREFIX=~/.deepinwine/Snipaste deepin-wine ~/.deepinwine/Snipaste/Snipaste.exe &
$ chmod +x Snipaste-start.sh
开机启动:
参考 Linux下设置开机自动启动-shell的几种方法,但是有时候触发有问题,采用系统自带的会话和启动触发:
sudo mkdir Snipaste
sudo mv Snipaste-start.sh /opt/Snipaste/
设置管理器 -> 会话和启动 -> 应用程序自启动 -> 添加
截图快捷键启动脚本
$ sudo pacman -S xdotool
$ vim Snipaste-hotkey.sh
#!/bin/sh
xdotool key --window $(xdotool search --limit 1 --all --pid $(pgrep Snipaste.exe)) "F1"
$ chmod +x Snipaste-hotkey.sh
$ sudo mv Snipaste-hotkey.sh /opt/Snipaste
设置全局快捷键
设置管理器 -> 键盘 -> 应用程序快捷键 -> 添加 -> /opt/Snipaste/Snipaste-hotkey.sh -> 确定 -> 指定需要的快捷键,通常指定 Snipaste 的默认快捷键 F1
yay -S picgo-appimage
# 剪贴板上传依赖
sudo pacman -S xclip
在插件设置中搜索 gitee,左右两个都可以,只是配置方法略有不同。
配置 gitee
gitee 配置如下:
gitee-uploader配置如下:
在 PicGo 设置中修改快捷键设置来快速的设置剪贴图上传,并设置时间戳重命名以避免文件重名无法上传。
sudo pacman -S maven
sudo pacman -S synology-drive-client
yay -S open3
添加快捷启动命令
alias opvn3-list='open3 sessions-list'
alias opvn3-start='open3 session-start --config /home/jl/open/config.o'
alias opvn3-stop='open3 session-manage --config /home/jl/open/config.o --disconnect'
# opvn3-session-stop /net/open/v3/sessions/b0d0c217s52d3s4cadsa4f1sb5560974312e 关闭 session
alias opvn3-session-stop='stop() { open3 session-manage --session-path $1 --disconnect; }; stop'
yay -S cloaker-bin
~/.bashrc
:适用于当前用户
/root/.bashrc
:适用于 root 用户
/etc/bash.bashrc
:适用于所有用户
$ sudo vim /etc/bash.bashrc
alias ll="ls -alF"
$ source /etc/bash.bashrc
以fcitx-lilydjwg-git
回滚为例
参考:Manjaro软件还原上一个版本
$ sudo pacman -S downgrade
# fcitx-lilydjwg-git 升级异常降级
$ sudo downgrade fcitx-lilydjwg-git
Downgrading from A.L.A. is disabled on the stable branch. To override this behavior, set DOWNGRADE_FROM_ALA to 1 .
See https://wiki.manjaro.org/index.php?title=Using_Downgrade for more details.
可选的包:
- 1) fcitx-lilydjwg-git 2 4.2.9.7.20200801 1 x86_64 (本地)
+ 2) fcitx-lilydjwg-git 2 4.2.9.7.20200806 1 x86_64 (本地)
- 3) fcitx-lilydjwg-git 2 4.2.9.7.20200915 1 x86_64 (本地)
输入数字以选择包:
# 输入对应数字安装对应版本,+ 代表目前版本,选择对应的版本安装,最后会提示是否添加软件到IgnorePkg
pacman 安装历史版本包缓存位置:/var/cache/pacman/pkg
$ cd /var/cache/pacman/pkg
# 找到相关包并时间倒叙排列
$ find . -iname 'fcitx*' | xargs ls -lt
-rw-r--r-- 1 root root 8436971 9月 15 18:24 ./fcitx-lilydjwg-git-2:4.2.9.7.20200915-1-x86_64.pkg.tar.zst
-rw-r--r-- 1 root root 8436772 8月 6 13:57 ./fcitx-lilydjwg-git-2:4.2.9.7.20200806-1-x86_64.pkg.tar.zst
-rw-r--r-- 1 root root 8436828 8月 1 18:09 ./fcitx-lilydjwg-git-2:4.2.9.7.20200801-1-x86_64.pkg.tar.zst
-rw-r--r-- 1 root root 8339069 8月 1 15:12 ./fcitx-4.2.9.8-1-x86_64.pkg.tar.zst
-rw-r--r-- 1 root root 190791 8月 1 15:12 ./fcitx-qt5-1.2.5-1-x86_64.pkg.tar.zst
-rw-r--r-- 1 root root 12505 7月 10 04:10 ./fcitx-googlepinyin-0.1.6-7-x86_64.pkg.tar.zst
-rw-r--r-- 1 root root 47265 5月 25 22:00 ./fcitx-configtool-0.4.10-4-x86_64.pkg.tar.zst
$ sudo pacman -U fcitx-lilydjwg-git-2:4.2.9.7.20200806-1-x86_64.pkg.tar.zst
yay 安装历史版本包缓存位置:~/.cache/yay/