搭建Majaro桌面办公环境

Linux 与 Windows 作为自由软件和商业软件的两面旗帜,其各自的发展过程也体现了哲学的辩证统一关系。

作为自由软件的旗舰,Linux 的多样性给用户带来了广阔的选择空间,与之伴随而来的,发行版的多样性也导致软件管理生态的多样性。一个软件,要想在 Linux 生态中有广泛应用,其中一个重要任务就是能否在众多 Linux 发行平台上运行,而由此导致的兼容性问题是必须要解决的。

本文强调在 Arch 发行版生态中构建办公环境。所有操作在桌面环境 Majaro 20.0 xfce 下完成。

准备工作

每个 linux 发行版都有其软件生态,包管理工具是管理软件生态的重要抓手。majaro 使用 pacman 作为基础的包管理工具,功能强大。

常见用法如下

安装

pacman -S package_name        # 安装软件 
pacman -S extra/package_name  # 安装不同仓库中的版本
pacman -Syu                   # 升级整个系统,y是更新数据库,yy是强制更新,u是升级软件
pacman -U package.tar.zx      # 从本地文件安装

删除

pacman -R package_name        # 删除单个软件
pacman -Rs package_name       # 删除指定软件及其没有被其他已安装软件使用的依赖关系
pacman -Sc                    # 清除软件缓存,即/var/cache/pacman/pkg目录下的文件

查询

pacman -Ss string             # 在包数据库中查询软件
pacman -Si package_name       # 显示软件的详细信息
pacman -Qs string             # 查询已安装的软件包
pacman -Qi package_name       # 查询本地安装包的详细信息
pacman -Ql package_name       # 获取已安装软件所包含的文件的列表
pactree package_name          # 显示软件的依赖树

软件源初始化

切换国内源

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

修改 /etc/pacman.conf

[archlinuxcn]
SigLevel= Optional TrustedOnly
Server = https://mirrors.tuna.tsinghua.edu.cn/archlinuxcn/$arch
# 使用清华 TUNA 源

安装密钥环

sudo pacman -S archlinux-keyring archlinuxcn-keyring

更新系统

sudo pacman -Syyu

设置快捷键

  • 终端快捷键 Ctrl + Alt + T
  • 锁屏快捷键 Ctrl + Alt + L

基础软件更新

删除用不到的自带软件

sudo pacman -Rsn audacious xfburn pidgin hexchat

安装使用基础软件

sudo pacman -S yay git net-tools tree vim gvim netcat
sudo pacman -S google-chrome

设置 vi 到 vim 的软链接

基础字体更新

安装必备字体

  • Windows 字体
  • Mac 字体
  • 方正字体
  • Powerline 字体
  • 文泉驿字体
  • 思源字体
  sudo pacman -S wqy-bitmapfont wqy-microhei \
  wqy-zenhei adobe-source-code-pro-fonts \
  adobe-source-han-sans-cn-fonts ttf-monaco

双系统时间同步

Manjaro 使用 LocalTime,解决与 Windows 共存主板时间冲突问题

sudo timedatectl set-local-rtc true

输入法安装 (20200502)

搜狗输入法 Linux 版基于 QT4,目前 fcitx-im 的包已经取消了 QT4 支持,转而支持 QT5 了,需要采取特殊方式处理。

之前安装了 fcitx-im 或者相关的包,直接删除

sudo pacman -Rsn fcitx-im fcitx-configtool

从 ArchLinuxCN 中文源里安装 fcitx-lilydjwg-git 和搜狗输入法的包, fcitx-lilydjwg-git 包里默认是包含 fcitx-qt4

sudo pacman -S fcitx-lilydjwg-git fcitx-sogoupinyin fcitx-qt5 fcitx-configtool

需要安装 fcitx-qt5 的原因是 fcitx-configtool 这个包依赖于 QT5。

安装完成后手动添加用户变量,编辑 ~/.pam_environment,如果没有就手动创建

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

也可以修改 ~/.xprofile 这个文件,但最新的 ArchWiki ,建议修改 ~/.pam_environment。

几个相关问题的处理

  • 按照上述的方法安装后,fcitx-configuration 中没有默认的输入法(一般为键盘布局),配置搜狗输入法后,无法进行输入法切换
    • 使用 fcitx-diagnose 查看 fcitx 安装状态,缺少 libjson-c.so.5 的动态库,可直接网站下载源码,编译安装
  • 重启系统后,搜狗输入法的选词框会出现问题,变成一个小矩形框
    • 打开搜狗输入法的设置界面,重新选择一次皮肤就 OK 了,这是一个已知 Bug。

字体优化

安装如下字体:

sudo pacman -S ttf-roboto noto-fonts ttf-dejavu
# 文泉驿
sudo pacman -S wqy-bitmapfont wqy-microhei wqy-microhei-lite wqy-zenhei
# 思源字体
sudo pacman -S noto-fonts-cjk adobe-source-han-sans-cn-fonts adobe-source-han-serif-cn-fonts

创建文件 .config/fontconfig/fonts.conf,加入下面的配置,重新启动

<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">

<fontconfig>

    <its:rules xmlns:its="http://www.w3.org/2005/11/its" version="1.0">
        <its:translateRule translate="no" selector="/fontconfig/*[not(self::description)]"/>
    </its:rules>

    <description>Manjaro Font Config</description>

    <!-- Font directory list -->
    <dir>/usr/share/fonts</dir>
    <dir>/usr/local/share/fonts</dir>
    <dir prefix="xdg">fonts</dir>
    <dir>~/.fonts</dir> <!-- this line will be removed in the future -->

    <!-- 自动微调 微调 抗锯齿 内嵌点阵字体 -->
    <match target="font">
        <edit name="autohint"> <bool>false</bool> </edit>
        <edit name="hinting"> <bool>true</bool> </edit>
        <edit name="antialias"> <bool>true</bool> </edit>
        <edit name="embeddedbitmap" mode="assign"> <bool>false</bool> </edit>
    </match>

    <!-- 英文默认字体使用 Roboto 和 Noto Serif ,终端使用 DejaVu Sans Mono. -->
    <match>
        <test qual="any" name="family">
            <string>serif</string>
        </test>
        <edit name="family" mode="prepend" binding="strong">
            <string>Noto Serif</string>
        </edit>
    </match>
    <match target="pattern">
        <test qual="any" name="family">
            <string>sans-serif</string>
        </test>
        <edit name="family" mode="prepend" binding="strong">
            <string>Roboto</string>
        </edit>
    </match>
    <match target="pattern">
        <test qual="any" name="family">
            <string>monospace</string>
        </test>
        <edit name="family" mode="prepend" binding="strong">
            <string>DejaVu Sans Mono</string>
        </edit>
    </match>

    <!-- 中文默认字体使用思源宋体,不使用 Noto Sans CJK SC 是因为这个字体会在特定情况下显示片假字. -->
    <match>
        <test name="lang" compare="contains">
            <string>zh</string>
        </test>
        <test name="family">
            <string>serif</string>
        </test>
        <edit name="family" mode="prepend">
            <string>Source Han Serif CN</string>
        </edit>
    </match>
    <match>
        <test name="lang" compare="contains">
            <string>zh</string>
        </test>
        <test name="family">
            <string>sans-serif</string>
        </test>
        <edit name="family" mode="prepend">
            <string>Source Han Sans CN</string>
        </edit>
    </match>
    <match>
        <test name="lang" compare="contains">
            <string>zh</string>
        </test>
        <test name="family">
            <string>monospace</string>
        </test>
        <edit name="family" mode="prepend">
            <string>Noto Sans Mono CJK SC</string>
        </edit>
    </match>

    <!-- 把Linux没有的中文字体映射到已有字体,这样当这些字体未安装时会有替代字体 -->
    <match target="pattern">
        <test qual="any" name="family">
            <string>SimHei</string>
        </test>
        <edit name="family" mode="assign" binding="same">
            <string>Source Han Sans CN</string>
        </edit>
    </match>
    <match target="pattern">
        <test qual="any" name="family">
            <string>SimSun</string>
        </test>
        <edit name="family" mode="assign" binding="same">
            <string>Source Han Serif CN</string>
        </edit>
    </match>
    <match target="pattern">
        <test qual="any" name="family">
            <string>SimSun-18030</string>
        </test>
        <edit name="family" mode="assign" binding="same">
            <string>Source Han Serif CN</string>
        </edit>
    </match>
    <!--
    <match target="pattern">
        <test qual="any" name="family">
            <string>Microsoft YaHei</string>
        </test>
        <edit name="family" mode="assign" binding="same">
            <string>Source Han Sans CN</string>
        </edit>
    </match>
    -->

    <!-- Load local system customization file -->
    <include ignore_missing="yes">conf.d</include>
    <!-- Font cache directory list -->
    <cachedir>/var/cache/fontconfig</cachedir>
    <cachedir prefix="xdg">fontconfig</cachedir>
    <!-- will be removed in the future -->
    <cachedir>~/.fontconfig</cachedir>

    <config>
        <!-- Rescan in every 30s when FcFontSetList is called -->
        <rescan> <int>30</int> </rescan>
    </config>

</fontconfig>

Zsh

zsh 已随系统默认安装,安装 oh-my-zsh 及相关插件。

git clone git://github.com/robbyrussell/oh-my-zsh.git ~/.oh-my-zsh
cp ~/.oh-my-zsh/templates/zshrc.zsh-template ~/.zshrc

.zshrc 中设置 ll、lla 的 alias

安装常用软件

办公工具

  • 配置 vim 环境
    • 拷贝 .vimrc
    • 安装 vundle
    • 安装 nodejs、curl、xdg-utils
    • 安装 yarn
    • 安装插件
  • sudo pacman -S wps-office
  • sudo pacman -S ttf-wps-fonts
  • sudo pacman -S vmware-workstation
  • sudo pacman -S crossover
    • office
    • acrobat pro
    • VSS
    • Foxmail
    • 使用 crossover 中自带的 archive 导入导出功能,快捷方便。规避特定发行版上的特殊的兼容性问题

网络工具

  • sudo pacman -S proxychains
  • yay -Sy deepin-wine-wechat
  • yay -S deepin-wine-tim
  • yay -S deepin.com.thunderspeed
  • sudo pacman -S wireshark-qt
  • 安装配置 v2ray
    • su root
    • bash <(curl -L -s https://install.direct/go.sh)
    • 拷贝 config.json
  • 安装 SwitchyOmega
    • google-chrome-stable –proxy-server=”SOCKS5://127.0.0.1:1080″
    • chrome store

多媒体

  • sudo pacman -S smplayer
  • sudo pacman -Rsn xfce4-screenshooter
  • yay -Sy deepin-screenshot
  • yay -S netease-cloud-music

Reference

  1. http://panqiincs.me/2019/06/05/after-installing-manjaro/
  2. https://juejin.im/post/5ca3827951882543b25c1246
  3. https://www.jianshu.com/p/26fa3a803439
  4. https://blog.triplez.cn/manjaro-quick-start/#Dropbox
  5. https://www.gaojinan.com/archlinux-manjaro-xfce-post-first-install.html
  6. https://zhuanlan.zhihu.com/p/74931620

发表评论

电子邮件地址不会被公开。 必填项已用*标注