/run/.../Linux/manjaro >>> tree manjaro
manjaro
├── docs
│ ├── kde 优化.md
│ ├── manajro 20 部署.md
│ ├── manjaro.txt
│ └── virtualenv虚拟环境搭建.txt
├── manjaro_install.py
├── src
│ ├── home_conf
│ │ ├── golang
│ │ ├── java
│ │ ├── pip.conf
│ │ ├── qt5
│ │ └── virtualenvwrapper
│ ├── icons
│ │ ├── jetbrains-clion.desktop
│ │ ├── jetbrains-goland.desktop
│ │ └── jetbrains-pycharm.desktop
│ ├── install
│ │ ├── debtap
│ │ ├── oh-my-zsh-install_modify.sh
│ │ └── oh-my-zsh-install_raw.sh
│ ├── packages
│ ├── source_conf
│ │ ├── mirrorlist
│ │ ├── pacman.conf
│ │ ├── yaourtrc
│ │ └── yay
│ └── temp
└── test.py
8 directories, 22 files
./manjaro_install.py
or
python3 manjaro_install.py
https://download.csdn.net/download/weixin_43968923/12657768
AUR_PACKAGES = {
# 网络应用
# '360player': '360万能播放器; 不存在',
# 'electron-ssr': '科学上网;',
'clashr': '科学上网',
'browser360': '360安全浏览器',
'deepin.com.thunderspeed': '迅雷极速版-wine版',
'deepin-wine-foxmail': 'foxmail邮件客户端-wine版',
# 社交沟通
# 'deepin-wine-wechat': '微信-wine版;2.9.0',
'deepin.com.wechat2': '微信-wine版;2.6.8',
'deepin.com.weixin.work': '企业微信-wine版',
# 办公学习
'xmind-zen': 'xmind:ZEN思维导图',
'youdao-dict': '有道词典',
'foxitreader': '福昕阅读器PDF',
# 数据库
# 'robo3t-bin': 'mongodb数据库可视化; snap替代',
'mongodb': '数据库',
'mongodb-compass': 'mongodb数据库可视化',
'navicat121_premium_cs_x64': 'mysql数据库可视化',
# 编程开发
'charles': 'charles抓包',
'sublime-text-3-imfix': '编辑器',
# 系统管理
# 'winrar': 'winrar压缩工具-wine版; 不存在',
# 'iflyime': '讯飞输入法; 非必须',
'fcitx-qt4': '搜狗输入法补丁',
'utools': 'utools搜索工具',
'360zip': '360压缩',
}
PACKAGES = {
# 编译
'cmake': '',
'make': '',
'gcc': '',
'pkg-config': '',
'fakeroot': '',
'patch': '',
'curl': 'curl',
'binutils': '',
'qt5-base': 'qt5 基础',
'qt5-tools': 'qt5 工具',
'qt5-webengine': 'qt5 浏览器引擎',
'qt5-translations': 'qt5 界面显示中文',
# 终端
'git': 'github',
'openssh': 'ssh',
'zsh': 'zsh',
'vim': '',
'yay': 'AUR',
# 'yaourt': 'AUR-非维护版',
'neofetch': '终端系统信息',
'screenfetch': '终端系统信息获取信息全;反应慢',
'lolcat': '代码色彩',
'cmatrix': '代码雨',
'tmux': '分屏软件',
'proxychains': '代理转发终端命令',
'mlocate': 'locate文件搜索工具',
'putty': 'shell工具',
'tree': '目录树',
'archlinuxcn-keyring': '',
'wine': 'wine',
'winetricks': 'wine',
'downgrade': '软件降级工具',
'dnsutils': '本地DNS设置',
'net-tools': '网络工具',
# 'bridge-utils': '桥接工具',
# 'iproute': '模拟容器通讯',
'nodejs npm': 'nodejs npm',
'nuspell': 'gedit plugin',
# 字体
'wqy-microhei': '',
'wqy-bitmapfont': '',
'wqy-zenhei ': '',
# 网络应用
'teamviewer': '远程软件',
'filezilla': '文件上传',
'google-chrome': '谷歌浏览器',
'uget': 'bt下载器',
's-qt5': '科学上网',
'baidunetdisk': '百度网盘',
'nutstore': '坚果云',
'firefox firefox-i18n-zh-cn': '火狐浏览器',
# deepin套件
# 'deepin-movie': '深度影院',
# 'deepin-screen-recorder': '深度录屏截图',
# 'deepin-voice-recorder': '深度录音; 不存在',
# 'deepin-calculator': '深度计算器',
# 'deepin-terminal': 'deepin透明终端',
'deepin-draw': '画图',
'deepin-picker': '取色器',
# 音乐视频
'obs-studio': 'OBS录屏',
'netease-cloud-music': '网易云音乐',
'vlc': '播放器',
'smplayer': '播放器',
'mpv': '播放器',
# 图像图像
'gimp': 'GNU 图像处理程序',
'inkscape': '矢量图形编辑器',
# 社交沟通
'linuxqq': 'QQ-linux',
'deepin.com.qq.im': 'QQ-wine版',
'deepin.com.qq.office': 'QQ-TIM-wine版',
# 'archlinuxcn/wine-wechat': '微信-wine版; 2.9;存在bug,不能传图片',
# 办公学习
'libreoffice-still': 'libreoffice',
'wps-office ttf-wps-fonts wps-office-mui-zh-cn': 'wps',
'moeditor-bin': 'markdown',
'typora': 'markdown',
'diffuse': '代码对比工具',
# 数据库
'redis': '数据库',
'mariadb': 'mysql数据库',
'redis-desktop-manager': 'redis可视化工具',
# 编程开发
# 'pycharm-professional': 'Python IDE; 推荐手动安装',
# 'archlinuxcn/goland': 'Goland IDE; 推荐手动安装',
# 'archlinuxcn/clion': 'C++ IDE; 推荐手动安装',
# 'golang': 'golang 语言 and IDE; 不存在;手动安装',
'python-pip': 'pip3',
'visual-studio-code-bin': 'Visual Studio Code',
'jdk8-openjdk': 'jdk 8',
'wireshark-qt': 'wireshark网络抓包',
'postman': '网页调试工具',
# 系统管理
'gufw': '防火墙; exist',
'gnome-weather': '天气; exist',
'docker': 'docker容器',
'fcitx-im fcitx-configtool': '输入法套件; 默认全部安装',
'fcitx-sogoupinyin': '搜狗输入法',
'crossover': 'wine虚拟机',
'playonlinux': 'wine虚拟机',
'bleachbit': '安装磁盘清理工具Bleachbit',
'etcher': 'Etcher启动盘',
'gnome-photos': '图片管理',
'eog': '图片管理',
'gnome-software': '应用程序管理',
# 虚拟化
# 'virtualbox linux57-virtualbox-host-modules': 'vbox虚拟机单选8',
f'virtualbox linux{LINUX_VERSION}-virtualbox-host-modules': 'vbox虚拟机',
'vmware-workstation': 'vmware-workstation 虚拟机',
}
LOCAL_PACKAGES = {
# 离线包安装, 请确保以下文件存在src/packages目录下
# "": "在线下载地址",
"golang": "https://dl.google.com/go/go1.14.2.linux-amd64.tar.gz",
"golang_ide": "https://download.jetbrains.8686c.com/go/goland-2020.1.1.tar.gz",
"pycharm_professional": "https://download.jetbrains.8686c.com/python/pycharm-professional-2020.1.tar.gz",
"clion_ide": "https://download.jetbrains.com/cpp/CLion-2020.1.1.tar.gz",
}
sudo nano /etc/pacman.d/mirrorlist
## Country : China
Server = https://mirrors.tuna.tsinghua.edu.cn/manjaro/stable/$repo/$arch
## Country : China
Server = https://mirrors.sjtug.sjtu.edu.cn/manjaro/stable/$repo/$arch
## Mirror : aliyun
#Server = http://mirrors.aliyun.com/archlinux/$repo/os/$arch
sudo nano /etc/pacman.conf
[archlinuxcn]
# The Chinese Arch Linux communities packages.
# SigLevel = Optional TrustedOnly
SigLevel = Optional TrustAll
Server = https://mirrors.cloud.tencent.com/archlinuxcn/$arch
# 清华大学
Server = https://mirrors.tuna.tsinghua.edu.cn/archlinuxcn/$arch
# 腾讯云 (ipv4, https)
Server = https://mirrors.cloud.tencent.com/archlinuxcn/$arch
sudo pacman -Syyuu
##### 命令修改 aururl
yay --aururl "https://aur.tuna.tsinghua.edu.cn" --save
nano ~/.config/yay/config.json
yay -P -g
sudo nano /etc/yaourtrc
AURURL="https://aur.tuna.tsinghua.edu.cn"
sudo pacman -Syyuu
1.安装Qt Creater
sudo pacman -S qtcreator qt5-base qt5-tools
2.安装说明文档
sudo pacman -S qt5-doc
3.安装例子
sudo pacman -S qt5-examples
4.界面显示中文
sudo pacman -S qt5-translations
sudo pacman -S fcitx-im #默认全部安装
sudo pacman -S fcitx-configtool
sudo pacman -S fcitx-sogoupinyin
vim /etc/environment
# vim ~/.xprofile
export GTK_IM_MODULE=fcitx
export QT_IM_MODULE=fcitx
export XMODIFIERS="@im=fcitx"
source ~/.xprofile
source /etc/environment
# 安装 fcitx-qt4
yay -S aur/fcitx-qt4
无法找到目标文件分割所需的 strip 二进制文件。
Unable to load library icui18n “Cannot load library icui18n: (icui18n: 无法打开共享对象文件: 没有那个文件或目录)”
强制重启fcitx
sudo pacman -S core/binutils
sudo pacman -S snapd
sudo systemctl start snapd
sudo systemctl enable snapd
sudo timedatectl set-local-rtc 1
# xdg-open(自带)
sudo ln -s /usr/bin/xdg-open /usr/bin/open
wget https://github.com/robbyrussell/oh-my-zsh/raw/master/tools/install.sh
chmod +x install.sh
./install.sh
# 或
sh -c "$(wget https://github.com/robbyrussell/oh-my-zsh/raw/master/tools/install.sh -O -)"
# 或
wget -O oh-my-zsh.zip https://github.com/robbyrussell/oh-my-zsh/archive/master.zip
unzip oh-my-zsh.zip
sh ./ohmyzsh-master/tools/install.sh
chsh -s /bin/zsh
echo $SHELL
chsh -s /bin/bash
nano .zshrc
#命令别名 {{{
alias cp='cp -i'
alias mv='mv -i'
alias rm='rm -i'
alias ls='ls -F --color=auto'
alias ll='ls -l --color=auto'
alias grep='grep --color=auto'
alias la='ls -a'
alias pacman='pacman --color=auto'
alias yay='yay --color=auto'
alias yaourt='yaourt --color=auto'
#}}}
#color{{{
autoload colors
colors
for color in RED GREEN YELLOW BLUE MAGENTA CYAN WHITE; do
eval _$color='%{$terminfo[bold]$fg[${(L)color}]%}'
eval $color='%{$fg[${(L)color}]%}'
(( count = $count + 1 ))
done
FINISH="%{$terminfo[sgr0]%}"
#}}}
# 补全{{{
#彩色补全菜单
eval $(dircolors -b)
export ZLSCOLORS="${LS_COLORS}"
zmodload zsh/complist
zstyle ':completion:*' list-colors ${(s.:.)LS_COLORS}
zstyle ':completion:*:*:kill:*:processes' list-colors '=(#b) #([0-9]#)*=0=01;31'
##行编辑高亮模式 {{{
# Ctrl+@ 设置标记,标记和光标点之间为 region
zle_highlight=(region:bg=magenta #选中区域
special:bold #特殊字符
isearch:underline)#搜索时使用的关键字
#}}}
#漂亮又实用的命令高亮界面
setopt extended_glob
TOKENS_FOLLOWED_BY_COMMANDS=('|' '||' ';' '&' '&&' 'sudo' 'do' 'time' 'strace')
recolor-cmd() {
region_highlight=()
colorize=true
start_pos=0
for arg in ${(z)BUFFER}; do
((start_pos+=${#BUFFER[$start_pos+1,-1]}-${#${BUFFER[$start_pos+1,-1]## #}}))
((end_pos=$start_pos+${#arg}))
if $colorize; then
colorize=false
res=$(LC_ALL=C builtin type $arg 2>/dev/null)
case $res in
*'reserved word'*) style="fg=magenta,bold";;
*'alias for'*) style="fg=cyan,bold";;
*'shell builtin'*) style="fg=yellow,bold";;
*'shell function'*) style='fg=green,bold';;
*"$arg is"*)
[[ $arg = 'sudo' ]] && style="fg=red,bold" || style="fg=blue,bold";;
*) style='none,bold';;
esac
region_highlight+=("$start_pos $end_pos $style")
fi
[[ ${${TOKENS_FOLLOWED_BY_COMMANDS[(r)${arg//|/\|}]}:+yes} = 'yes' ]] && colorize=true
start_pos=$end_pos
done
}
check-cmd-self-insert() { zle .self-insert && recolor-cmd }
check-cmd-backward-delete-char() { zle .backward-delete-char && recolor-cmd }
zle -N self-insert check-cmd-self-insert
zle -N backward-delete-char check-cmd-backward-delete-char
source .zshrc
vim 的默认配置很简洁,但是缺少了很多重要的功能。如 vim 默认不支持使用退格键(Backspace)删除字符、不支持系统剪贴板、不支持鼠标等。但我们可以通过一定的配置去开启 vim 的这些内置功能。你可以参照配置后面的注释选择是否添加该项配置到你的 .vimrc 文件中。
nano .vimrc
" [Common Configration] 公共配置
" [ui beautification] 界面美化
syntax enable " 开启代码高亮
" set nu " 开启行号
set ruler " 开启标尺
" set cursorline " 开启高亮光标所在行
set hlsearch " 开启搜索结果高亮显示
set incsearch " 开启搜索逐字符高亮
" [improve performance] 提示性能
set viminfo= " 关闭 viminfo (用于加快 vim 启动速度)
" [polyfill] 功能填补
set clipboard=unnamedplus " 开启系统剪贴板支持(需要手动编译最新版 vim 使其 +clipboard)
set backspace=indent,eol,start " 开启 Backspace 键支持(否则 Backspace 无法删除字符)
" [mouse support] 鼠标支持
set mouse=a " 开启鼠标支持
set mouse=v " vim文件间复制粘贴完美方案
set selection=inclusive " 指定在选择文本时光标所在位置也属于被选中的范围
set selectmode=mouse,key " 使鼠标和键盘都可以控制光标选择文本
" [tab] tab键
set ts=4 " 指定制表符(tab)等于的空格数
set softtabstop=4 " 开启软制表(如果这4个空格是用tab键打出来的删除会一起删除)
set shiftwidth=4 " 指定自动缩进时缩进4个空格
" [indent] 缩进
set smartindent " 开启智能缩进
set autoindent " 开启自动缩进
set cindent " 开启C缩进(对C、C++语言文件有效)
" [other] 其它配置
set backupcopy=yes " 开启备份时行为为覆盖
set cmdheight=1 " 设置命令行的高度为1
source .vimrc
mkdir ~/.pip && nano ~/.pip/pip.conf
[global]
index-url = https://pypi.mirrors.ustc.edu.cn/simple/
[install]
trusted-host = https://pypi.mirrors.ustc.edu.cn
[global]
index-url = https://mirrors.aliyun.com/pypi/simple/
[install]
trusted-host=mirrors.aliyun.com
https://c.runoob.com/front-end/854
http://tool.chinaz.com/regex/?qq-pf-to=pcqq.group
pip3 install virtualenvwrapper
vim ~/.zshrc
# >>> virtualenvwrapper initialize >>>
export WORKON_HOME=$HOME/.virtualenvs
VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3
source $HOME/.local/bin/virtualenvwrapper.sh
# source /usr/bin/virtualenvwrapper.sh
# export VIRTUALENVWRAPPER_VIRTUALENV=~/.local/bin/virtualenv
# <<< virtualenvwrapper initialize <<<
# 创建虚拟环境
mkvirtualenv py38
# 创建虚拟环境,指定版本
mkvirtualenv -p /bin/python3.8.2 py38
mkvirtualenv --no-site-packages -p /bin/python3.8.2 py38
# 查看环境列表
workon
# 进入环境
workon py38
# 退出环境
deactivate
sudo mysql_install_db --user=mysql --basedir=/usr --datadir=/var/lib/mysql
sudo systemctl start mysqld
sudo mysql_secure_installation
# 启动MariaDb
sudo systemctl start mysqld
# 设置mariaDb开机自启
sudo systemctl enable mysqld
# 为root用户添加密码
# sudo mysql_secure_installation 初始化后这里就不用了
sudo mysqladmin -u root password "root"
# 输入设置的的密码,登录数据库
sudo mysql -uroot -p
# 切换数据库
MariaDB> use mysql;
# 针对ip
MariaDB> CREATE USER 'one'@'192.168.3.10' IDENTIFIED BY 'pass';
# 全部
MariaDB> CREATE USER 'one'@'%' IDENTIFIED BY 'pass';
# 更新密码
MariaDB> update user set authentication_string=password("pass"),plugin='mysql_native_password' where user='one';
https://wiki.archlinux.org/index.php/MariaDB_(%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87)#%E6%B7%BB%E5%8A%A0%E6%96%B0%E7%94%A8%E6%88%B7
# 切换数据库
MariaDB> use mysql;
# 查看用户
MariaDB> select User, host,plugin from user;
# 给用户最大权限
# 第一个位置,为数据库, 第二个位置,为表,所以 *.*,表示可以访问任意数据的任意表
# 'root'@'%', root表示远端登录使用的用户名,%表示允许任意ip登录,可将指定ip替换掉%, root与%可以自定义
# IDENTIFIED BY 'root' 这个root 是登录时的使用的密码,(方便记忆就用了 pass,生产环境一定要替换掉)
MariaDB> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'pass';
# 给用户部分权限(test 数据库)
# MariaDB> GRANT ALL PRIVILEGES ON *.* TO 'one'@'%' IDENTIFIED BY 'pass' WITH GRANT OPTION;
# 刷新权限表
MariaDB> FLUSH PRIVILEGES;
# 查看用户
MariaDB> select User, host,plugin from user;
# 退出
MariaDB> quit
# 修改配置文件
sudo vim /etc/mysql/mariadb.conf.d/50-server.cnf
注释: bind-address
# 重启数据库
sudo systemctl restart mysql
主机ip:bind 0.0.0.0
端口号:port 6379
服务密码(默认未开启): requirepass
启动redis
设置redis开机自启
验证:
ping:测试服务器连接情况
第一次需要认证,需要密码
https://golang.google.cn
wget https://golang.google.cn/doc/install?download=go1.14.linux-amd64.tar.gz
sudo tar -C /opt -xzf go1.14.linux-amd64.tar.gz
vim ~/.zshrc
# >>> golang initialize >>>
# GOROOT: GO的安装路径
export GOROOT=/opt/go
# GOPATH: GO的工作路径,此处为自行创建的GoEnv目录,GoEnv下的src、pkg、bin也需自行创建
export GOPATH=$HOME/.go
export PATH=$PATH:$GOROOT/bin:$GOPATH/bin
# <<< golang initialize <<<
source ~/.zshrc
yaourt -S debtap
在安装 Debtap 和所有上述依赖关系之后,运行以下命令来创建/更新 pkgfile 和 debtap 数据库。
sudo debtap -u
你需要输入包的维护者和许可证,输入他们,然后按下回车键就可以开始转换了
debtap xxx.deb
如果在包转化的过程中,你不想回答任何问题,使用 -q 略过除了编辑元数据之外的所有问题。
debtap -q xxx.deb
debtap -Q xxx.deb
sudo pacman -U
sudo pacman -S wps-office ttf-wps-fonts wps-office-mui-zh-cn
# 英文设置中文点击右上角A图标标志,然后在窗口中选择中文;一般安装中文包后自动设置为中文
ZYNGA INC.
50 User License
EA7E-811825
927BA117 84C9300F 4A0CCBC4 34A56B44
985E4562 59F2B63B CCCFF92F 0E646B83
0FD6487D 1507AE29 9CC4F9F5 0A6F32E3
0343D868 C18E2CD5 27641A71 25475648
309705B3 E468DDC4 1B766A18 7952D28C
E627DDBA 960A2153 69A2D98A C87C0607
45DC6049 8C04EC29 D18DFA40 442C680B
1342224D 44D90641 33A3B9F2 46AADB8F
sudo pacman -S mlocate
# 当删除或添加文件后,需要更新locate,命令如下:
sudo updatedb
注意扩展已单独提取出来了,gnome-tweaks 中不在提供。
https://extensions.gnome.org
Window Is Ready - Notification Remover 去除烦人的window is ready提醒
Arch Linux Updates Indicator archlinux软件更新检测插件,需要配合pacman-contrib使用
Caffeine 防止自动挂起
Extension Update Notifier gnome插件更新提示
GnomeStatsPro 一个系统监视器
Status Area Horizontal Spacing 让顶栏更紧凑
Dash to Dock 把dash栏变为一个dock
Sound Input & Output Device Chooser 声音设备选择
dynamic top bar 顶栏透明----失效
Transparent Top Bar 顶栏透明
OpenWeather 天气插件
Random Wallpaper 自动切换壁纸-网络
Transparent Top Bar 顶栏透明(会导致顶部栏刷新失败),部分主题有透明效果
Notifications Alert 当通知栏有通知时,通知栏会有闪烁的信息或字体颜色会改变。
Night Light Slider 调节gnome夜间模式的亮度情况 --自带
Caffeine 禁用屏幕保护程序并自动挂起 --自带
Bing Wallpaper Changer 自动切换壁纸-网络--系统已自带
Wallpaper Changer 自动切换壁纸-本地--系统已自带
Multi Monitors Add-On 多屏扩展--panel替换
Clipboard Indicator 一个剪贴板
Coverflow Alt-Tab 更好的窗口切换
Proxy Switcher 代理插件
Suspend Button 添加一个休眠按钮
Refresh Wifi Connections wifi刷新
TopIcons Plus 把托盘图标放到顶栏
Simple net speed 网速监测
system-monitor 系统监视器
Blyr 模糊效果应用
001系统管理
002办公学习
003社交沟通
004网络应用
005影音娱乐
006图形图像
007编程开发
008Qt套件
009游戏娱乐
010其他应用
011虚拟化
sudo archibold login-background "/usr/share/backgrounds/manjaro-gnome/islandiya-vestrahorn-6864.jpg"
# 注意权限问题,否则allow launching 效果出不来
sudo setcap -r /usr/bin/gnome-shell
Proxy SwitchyOmega 代理插件
侧边翻译 网页翻译
谷歌翻译 选定右键翻译
# 主题官网
https://www.gnome-look.org
鼠标,图标主题解压放置:
~/.icons或/usr/share/icons
窗口主题放置:
~/.themes或/usr/share/theme
gnome shell主题放置:
/usr/share/gnome-shell/theme
ls $HOME/.cache/yay
fc-cache -fv
ls | lolcat
cmatrix -b -C blue
gnome-terminal -x zsh -c 'neofetch;exec zsh;'
gnome-terminal -x bash -c 'sreenfetch;exec bash;'
https://www.google.cn/chrome
proxychains4 curl www.baidu.com
xdg-mime query default inode/directory
xdg-mime default org.gnome.Nautilus.desktop inode/directory
使用nodepad++ -> 文档格式转换 -> 转为 Unix(LF)
sudo pacman -S nodejs npm
# 设置淘宝镜像源
npm config set registry https://registry.npm.taobao.org
node --version
npm --version