ArchLinux及其Manjaro安装后的配置

Linux2年前 (2023)发布 ENE
1,276 0 0

ArchLinux及其Manjaro安装后的配置

本文章参考kingolieLeiloxee雷有情archwiki庄严雨落凋殇maxzhao_Dimitrios SavvopouloDimitrios Savvopoulos的pacman 命令入门
有关ArchLinux安装请看ArchLinux安装

介绍

是不是对ArchLinux简洁到只有命令行而感到震惊,ArchLinux从零开始安装能让你更好的了解Linux。与Windows基于GUI的操作不同,LinuxGUI可以理解为是在系统上的一个软件,你甚至可以不装桌面,直接运行带GUI的浏览器。当然因为Linux没有统一的GUI设计,导致每个桌面环境都有些许不同,甚至缩放有时都不能统一(wayland除外)。
至于Linux下该用什么桌面环境就得看你自己了,gnome是目前服务器大厂都在用的桌面环境;kde是比较符合win用户习惯;deepin是最符合中国用户的习惯;xfce是个轻量化的桌面环境、lxde、高效的i3、最激进的wayland环境的sway


配置

grub配置

grub开启探测其他系统需要安装os_prober,并在/etc/default/grub.cfg修改去除GRUB_DISABLE_OS_PROBER=false前面的#号,探测win记得安装ntfs-3g
grub2可以安装主题包,也可以更换壁纸,修改GRUB_THEME="/usr/share/grub/themes/vimix/theme.txt"theme.txt路径为主题路径。

设置软件源

虽然已经把软件源切换到了中国源,但还是要设置Arch中文源和开启multilib

sudo nano /etc/pacman.conf

crtl+w搜索,输入color,将#color前的#删除,修改成color
搜索multilib,并删除那一段的#,修改后如图:

并且把multilib下面一行修改为archlinuxcn,并且在Server后面添加https://mirrors.aliyun.com/archlinuxcn/$arch,添加后如图:

记得要更新镜像源sudo pacman -Syyu,对了archlinuxcn源还需要安装密钥

sudo pacman -S archlinuxcn-keyring

更改aur镜像源

  1. yay更改镜像源
    yay --aururl “https://aur.tuna.tsinghua.edu.cn” --save
  2. yaourt更改镜像源
    修改配置文件

    vim /etc/yaourtrc

    去掉 #AURURL注释 添加

    AURURL=“https://aur.tuna.tsinghua.edu.cn”

    安装第三方包管理

    sudo pacman -S yay git

    安装驱动

    重中之重,Windows没有专用驱动,起码通用驱动还能撑一撑,Linux没装驱动是真没法用了,我会放出绝大部分人会用到的,剩下的自己去wiki看。

  3. 安装显卡驱动
    sudo pacman -S xf86-video-intel #intel
    sudo pacman -S xf86-video-ati #amd
    sudo pacman -S nvidia nvidia-prime nvidia-settings nvidia-utils opencl-nvidia lib32-nvidia-utils lib32-opencl-nvidia

    对于双显卡切换细节请看:雨落凋殇
    manjaro用户千万别用闭源驱动,设置起来很麻烦,有关设置看:https://forum.manjaro.org/t/howto-use-wayland-with-proprietary-nvidia-drivers/36130
    我这里放个简单版
    编辑/etc/gdm/custom.conf

    nano /etc/gdm/custom.conf

    注释掉WaylandEnable=false
    禁用udev中的wayland规则

    sudo ln -s /dev/null /etc/udev/rules.d/61-gdm.rules

    kms-modifiers必须通过 启用gsettings

    gsettings set org.gnome.mutter experimental-features '["kms-modifiers"]'

    nvidia驱动程序启动,archwiki教程

    • 将模块nvidia、、nvidia_modeset和添加到nvidia_uvm并运行命令nvidia_drm/etc/mkinitcpio.confsudo mkinitcpio -P
    • 添加内核参数nvidia-drm.modeset=1/etc/default/grub运行命令sudo update-grub
      安装软件

      sudo pacman -Syu --needed xorg-xwayland libxcb egl-wayland
  4. 安装触摸板驱动
    sudo pacman -S xf86-input-libinput
    sudo pacman -S xf86-input-synaptics   #任选一个
  5. 网卡驱动
    只写macbook13年的博通网卡

    sudo pacman -S broadcom-wl-dkms

    安装桌面环境

    • 安装xorg
      sudo pacman -S xorg
    • 安装kde
      sudo pacman -S plasma kde-applications sddm sddm-kcm

      如果kde切换到wayland显示需要安装plasma-wayland-session
      启动kde登录管理器sddm

      systemctl enable sddm
    • 安装gnome
      sudo pacman -S gnome gnome-extra gdm gnome-tweak-tool   #gnome-extra是完全包,也可以只装gnome-tweak-tool

      启动gnome显示管理器gdm

      systemctl enable gdm
    • 安装deepin
      sudo pacman -S lightdm deepin deepin-extra

      启动deepin显示管理器lightdm

      systemctl enable lightdm
    • 安装xfce
      sudo pacman -S xfce4 xfce4-goodies xfwm4 #lightdm或者sddm

      xfce显示管理器默认是xfwm4,但是我不会用,在这里推荐lightdm或者sddm(很多教程也是用这两个),这边放上xfwm Archwiki的教程

      安装声音管理器

      sudo pacman -S alsa alsa-utils pulseaudio pulseaudio-alsa pulseaudio-bluetooth #可以试试jack2,需要安装 cadence jack2 pulseaudio-jack

      创建用户并提权

      useradd -m -g users -G wheel -s /bin/bash 用户名
      passwd 用户名

      添加sudo权限
      输入visudo,在root All=(All) All添加一行,结果如图

ene是我的用户名。
改完后按esc和输入:wq

安装输入法

sudo pacman -S fcitx fcitx-im fcitx-configtool fcitx-rime kcm-fcitx

当然也可以使fcitx5,尤其是wayland的,对于sway也很推荐使用

sudo pacman -S fcitx5 fcitx5-gtk fcitx5-qt fcitx5-rime fcitx5-configtool fcitx5-chinese-addons

注意gnome需要安装gnome-shell-extension-kimpanel-git
gnome桌面更推荐使用ibus

sudo pacman -S ibus ibus-rime

运行ibus

ibus-setup

fcitx配置环境

nano /home/myusername/.xprofile

并输入

export GTK_IM_MODULE=fcitx
export QT_IM_MODULE=fcitx
export XMODIFIERS="@im=fcitx"

修改~/.pam_environment环境变量

nano ~/.pam_environment

并输入

GTK_IM_MODULE DEFAULT=fcitx
QT_IM_MODULE  DEFAULT=fcitx
XMODIFIERS    DEFAULT=\@im=fcitx

如果有问题可以用fcitx-diagnose检查错误
fcitx5配置环境变量
修改/etc/environment

sudo nano /etc/environment

并输入

GTK_IM_MODULE=fcitx
QT_IM_MODULE=fcitx
XMODIFIERS=@im=fcitx
INPUT_METHOD=fcitx
SDL_IM_MODULE=fcitx
GLFW_IM_MODULE=ibus

为了能让fcitx5wps输入
修改.xprofile文件并添加

export  QT_IM_MODULE=fcitx5

ibus配置环境变量
安装ibus-qt

yay -S ibus-qt  #manjaro貌似不好编译,可以用pamac,manjaro的gnome自带的gui包管理器

并修改qt设置

qtconfig-qt4

Interface -> Default Input Method (译:“界面”->“默认输入法引擎”) 中,选择 ibus,而不是 xim
编辑~/.xprofile文件

nano ~/.xprofile

写入环境变量

   export GTK_IM_MODULE=ibus
   export XMODIFIERS=@im=ibus
   export QT_IM_MODULE=ibus
   ibus-daemon -d -x

针对manjaro新版本,可以在/etc/environment里添加

GTK_IM_MODULE=ibus
QT_IM_MODULE=ibus
XMODIFIERS=@im=ibus

或者在.bashrc里添加

export LANG=en_US.UTF-8
export LC_CTYPE=zh_CN.UTF-8
export GTK_IM_MODULE=ibus
export QT_IM_MODULE=ibus
export XMODIFIERS=@im=ibus

安装蓝牙

sudo pacman -S bluez bluez-utils
systemctl enable bluetooth

manjaro开机启动蓝牙
修改/etc/bluetooth/main.conf

[Policy]
AutoEnable=true ##找到或者在最下面添加
FastConnectable = true

启动网络

建议先关闭iwddhcpcd,有冲突

systemctl enable NetworkManager

配置rime

ctrl+~并且输入2切换中文
进入~/.config/fcitx/rime
并git clone https://github.com/Iorest/rime-setting.githttps://github.com/Iorest/rime-dict.git并将文件夹里文件移动到~/.config/fcitx/rime
然后在fcitx里重新部署
fcitx5用户放在~/.local/share/fcitx5/rime,并git clone上面两个链接
fcitx5还有两个词库可以安装,分别是:fcitx5-pinyin-moegirl-rimefcitx5-pinyin-zhwiki-rime
ibus用户进入~/.config/ibus/rime,并git clone上面两个链接

使系统时间与win兼容(此方法不推荐)

sudo pacman -S ntpdate(不好编译)
sudo ntpdate time.windows.com
sudo hwclock --localtime --systohc

双系统时间问题(Linux+win)(推荐)

由于win默认使用localtime,而linux默认使用utc加上当前时区,所以会导致linuxwin时间相差8小时。
有两种解决方法

  1. windows使用utc时区

    以管理员身份使用运行
    reg add "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\TimeZoneInformation" /v RealTimeIsUniversal /d 1 /t REG_DWORD /f
    
    以上方法无效或64位系统:
    reg add "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\TimeZoneInformation" /v RealTimeIsUniversal /d 1 /t REG_QWORD /f
  2. Linux使用localtime
    sudo timedatectl set-local-rtc true

    安装字体

    yay -S wqy-microhei wqy-microhei-lite wqy-zenhei wqy-bitmapfont adobe-source-han-sans-cn-fonts ttf-dejavu adobe-source-han-serif-cn-fonts noto-fonts noto-fonts-extra noto-fonts-emoji noto-fonts-cjk

    本地化

    vim /etc/locale.gen

    输入/zh_CN并找到zh_CN.UTF-8,删除前面#
    生成locale信息

    sudo locale-gen

    安装wps

    有些问题,wps采用qt4.7.4(这到底是哪个天才想的,还具体到版本,还有gtk遵循GNU协议,不香吗),但是把linux下唯一好用的也就wpsfree-office就是个垃圾,onlymyoffice可以试试。

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

    我们可以通过修改wpsgtk启动,但是貌似还是有点bug,详情如图:

以下来自archwiki
修改/usr/share/applications/下以wps-office开头的desktop文件:
提示: 如果你使用的flatpak安装的应用,请查看/var/lib/flatpak/exports/share/applications目录
找到Exec行,在%f前添加启动参数:

-style=gtk+

为避免软件更新后,修改被覆盖,可以选择拷贝所有需要修改的desktop文件到~/.local/share/applications/后,再做修改。
注意: 在修改 .desktop 后请运行update-desktop-database ~/.local/share/applications/命令刷新菜单缓存(该命令的参数是存放已修改过的 .desktop 文件的目录)
修改/usr/bin/目录下的et、wpp、wps启动脚本文件
删除该行(如果有的话):

gOptExt=

然后添加:

gOptExt="-style=gtk+"
export GTK2_RC_FILES=/usr/share/themes/Adwaita/gtk-2.0/gtkrc

手动修复 金山 PDF 启动脚本
金山 PDF 提供的启动脚本缺失了对 GTK 的自定义配置 可以在其启动脚本/usr/bin/wpspdf开始位置添加:

gOptExt="-style=gtk+"
export GTK2_RC_FILES=/usr/share/themes/Adwaita/gtk-2.0/gtkrc

并在其后的run函数中添加${gOptExt},修改后的run函数如下:

function run()
{
    if [ -e "${gInstallPath}/office6/${gApp}" ] ; then
        { ${gInstallPath}/office6/${gApp} ${gOptExt} "$@"; } >/dev/null 2>&1
    else
        echo "${gApp} does not exist!"
    fi
}

注意: 由于每次升级可能导致文件修改遗失,可以考虑将et、wpp、wps文件复制到其他目录(例如:~/.local/bin/),并将其添加到Environment variables

安装zsh(可以不安装)

sudo pacman -S zsh wget
chsh -s /bin/zsh

安装oh-my-zsh

wget:
sh -c "$(wget https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh -O -)"
sh -c "$(wget -O- https://gitee.com/pocmon/mirrors/raw/master/tools/install.sh)"
#or
curl:
sh -c "$(curl -fsSL https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"
sh -c "$(curl -fsSL https://gitee.com/mirrors/oh-my-zsh/raw/master/tools/install.sh)"

更改主题

vim ~/.zshrc

找到ZSH_THEME=更改为

ZSH_THEME="agnoster"

当然也有很多主题供大家选择,avit主题、bureau主题、agnoster主题、mortalscumbag主题、amuse主题,更多主题请到~/.oh-my-zsh/themes/查看
安装zsh插件
安装zsh-autosuggestions

git clone https://github.com/zsh-users/zsh-autosuggestions ~/.oh-my-zsh/plugins/zsh-autosuggestions

安装zsh-syntax-highlighting

git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ~/.oh-my-zsh/plugins/zsh-syntax-highlighting

~/.zshrc中找到

plugins=(
  git
)

在括号中git的下一行添加插件名称使其生效

plugins=(
  git
  zsh-syntax-highlighting
  zsh-autosuggestions
)

安装解压软件

sudo pacman -S unzip unrar p7zip

grub探测其他系统

sudo pacman -S os-prober ntfs-3g

修改/etc/default/grub里的GRUB_DISABLE_OS_PROBER=false
然后运行update-grub或者grub-mkconfig -o /boot/grub/grub.cfg

安装达芬奇

yay -S davinci-resolve

达芬奇官网下载最新linux,将达芬奇安装包移动到~/.cache/yay/davinci-resolve,然后再运行yay -S davinci-resolve

deepin-tim

更多有关deepin-wine-tim-arch参考github。
deepin-wine设置在/opt/apps/com.qq.office.deepin/files/run.sh winecfg
原理是把系统字体映射到wine的字体里
archlinux字体位置在/usr/share/fonts
deepin-wine字体位置在~/.deepinwine/Deepin-TIM/drive_c/Fonts

cp -r 或者 ln -sf /usr/share/fonts ~/.deepinwine/Deepin-TIM/drive_c/Fonts

设置winedpi可以使用

/opt/apps/com.qq.office.deepin/files/run.sh winecfg

或者编辑~/.pam_environment,并添加

DEEPIN_WINE_SCALE=2

如果不能启动/卡死/卡顿
打开winecfg(/opt/apps/com.qq.office.deepin/files/run.sh winecfg)并在函数库(Libraries)里新增dwrite,设置为原装先于内建(Native then Builtin)

使用wayland和设置全局缩放

小技巧,可以安装xorg-xlsclients查看哪些应用跑在xwayland

  1. qt5使用wayland
    修改~/.pam_environment或者/etc/environmentetc里的是全局配置,home目录下的是针对当前用户的)
    安装qt5-wayland

    yay -S qt5-wayland

    并添加(针对使用wayland

    QT_QPA_PLATFORM=wayland

    当然也可以在应用启动配置文件的Exec=行添加

    -platform wayland

    也可以设置qt使用x11

    QT_QPA_PLATFORM=xcb
  2. 全局缩放
    修改/etc/environment文件,找到QT_AUTO_SCREEN_SCALE_FACTOR=1

    QT_SCALE_FACTOR=2

    修改数值即可,比如要缩放200%,就把数值修改成2,默认是100%,也就是1。

    QT_AUTO_SCREEN_SCALE_FACTOR=1

    这是针对是否开启自动缩放
    对于gtk可以使用

    GDK_SCALE=2

    当然可以在.desktop启动应用配置文件里,exec行添加env并添加对应参数(QT_SCALE_FACTOR=2GDK_SCALE=2

  3. 针对网易云音乐在高分辨率的缩放问题
    网易云缩放可以修改全局缩放,但是wps就会出现缩放问题,所以我推荐修改网易的启动配置文件(因为wps配置文件太多了,修改起来太麻烦,如果要修改可以参考wps_archwiki)。
    修改/usr/share/applications/netease-cloud-music.desktopExec=一行

    Exec=env QT_SCALE_FACTOR=2 netease-cloud-music %U

    不是很推荐添加--force-device-scale-factor=2,打开会有点问题,缩成一团。

  4. freedownloadmanagerqt设置
    fdm貌似不支持wayland,所以需要在启动文件里修改配置。

    nano /usr/share/applications/freedownloadmanager.desktop

    Exec=添加

    Exec=env QT_QPA_PLATFORM=xcb /opt/freedownloadmanager/fdm

    记得把后台关了,再打开,顺便把开机启动关了

  5. obs wayland录屏
    export QT_QPA_PLATFORM=wayland

    运行obs

    obs
  6. electron应用使用wayland运行(输入法用不了)
    ~/.config目录下,编辑electron-flags.conf并添加

    --enable-features=UseOzonePlatform,WaylandWindowDecorations --ozone-platform=wayland
    #或者
    --enable-features=UseOzonePlatform --ozone-platform=wayland

    对于chromechromiumvscode等都可以在启动文件或者.config目录下配置
    chrome or chromium
    编辑~/.config/google-chrome-flags.conf或者~/.config/chromium-flags.conf
    添加

    --enable-features=UseOzonePlatform,WaylandWindowDecorations --ozone-platform=wayland
    #或者
    --enable-features=UseOzonePlatform --ozone-platform=wayland
  7. gnome40中调整xwayland模糊问题
    启用分数缩放

    gsettings set org.gnome.mutter experimental-features "['scale-monitor-framebuffer']"

    如果启用了分数缩放,会导致xwayland模糊
    关闭分数缩放

    gsettings set org.gnome.mutter experimental-features "[]"

    关闭分数缩放,会导致xwayland缩放不正确
    所以我们要在应用启动文件(/usr/share/applicationsexec添加

    --force-device-scale-factor=2

    chrome/chromium可在~/.config目录下,编辑electron-flags.conf并添加

    --force-device-scale-factor=2

    arch安装ifconfignslookup命令

    安装net-toolsdnsutilsinetutils

    yay -S net-tools dnsutils inetutils

    linuxwin蓝牙配置

    win蓝牙配置信息位置
    下载Pstools
    cmd里用管理员权限启动

    psexec64.exe -si regedit

    在这个HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\BTHPORT\Parameters\Keys\<本机蓝牙 MAC>\<鼠标蓝牙 MAC>找到信息
    linux蓝牙配对信息位置

    sudo su
    cd /var/lib/bluetooth/xx:xx:xx:xx:xx:xx
    cd xx:xx:xx:xx:xx:xx

    修改info文件
    对于类似master mx3这种鼠标
    需要修改大部分配置文件

    Grub美化

    下载grub皮肤包:https://www.gnome-look.org/browse?cat=109
    将文件复制到/boot/grub/themes
    修改配置文件

    sudo gedit /etc/grub.d/00_header

    修改行

    GRUB_THEME="/boot/grub/themes/主题包名/theme.txt"
    GRUB_GFXMODE="1920x1080x32"

    更新grub update-grub
    当然你也可以运行文件的install文件。


    Manjaro-Sway专区

  8. visual-studio-codevscode)使用wayland设置(sway专供)
    个人不是很推荐,因为用不了输入法

    nano /usr/share/applications/visual-studio-code.desktop

    Exec=添加

    --enable-features=UseOzonePlatform --ozone-platform=wayland
  9. chromewayland环境下使用输入法(sway专供)
    先装gtk4

    yay -S gtk4
    nano /usr/share/applications/google-chrome.desktop

    Exec=添加

    --gtk-version=4
  10. sway-HIDPI设置(解决来源:https://github.com/swaywm/wlroots/pull/2064)
    先安装sway-hidpi-gitxorg-xwayland-hidpi-gitwlroots-hidpi-git
    编辑~/.config/sway/config并添加

    xwayland force scale 2
    exec xsettingsd

    然后编辑~/.config/xsettingsd/xsettingsd.conf并添加

    Gdk/WindowScalingFactor 2
  11. 关闭夜灯
    yay -R wlsunset
  12. 开机自启动
    将这里*替换为你想要自启动的软件

    cp /usr/share/applications/*.desktop ~/.config/autostart
  13. rofi-wayland容易假死问题(试验中,不确定可不可以)
    • 编辑/etc/sway/config,找到bindsym $mod+d exec $menu
      修改成

      bindsym $mod+d exec rofi -show run --no-startup-id
    • alt+shirt+e然后输入e注销,也可以解决假死。
      rofi-theme-selector可以设置主题(alt+a保存),建议别改。

      Mac专区

      推荐去看Mac Archwiki简体中文Mac Archwiki

  14. 风扇管理
    mbpfan
  15. mac摄像头
    bcwc-pcie-git
    没了,别惊讶,Archwiki够全了。

    安装软件

    推荐使用第三方的包管理器
    图形化包管理libpamac-full
    谷歌浏览器google-chrome
    vscodevisual-studio-code-bin
    clash for windows clash-for-windows-bin
    fdmfreedownloadmanager(这东西很垃圾,不支持wayland也不支持高hipdi)
    qbqbittorrent
    teamviewerteamviewer
    obsobs-studio
    ffmpegffmpeg
    typoratypora
    百度网盘baidunetdisk-bin
    火狐浏览器firefox
    网抑云netease-cloud-music
    腾讯会议wemeet-bin
    timdeepin-wine-tim
    linuxqqlinuxqq(垃圾闪退,还TM简陋,废物腾讯)
    微信deepin.com.wechat2
    ntfs-3gntfs-3g
    zerotierzerotier-one
    motrixmotrix

    包管理使用

    看这篇文章大多应该是小白,所以我放上pacman的使用,当然yay也是一样的。注意大小写。以下来源与Dimitrios Savvopoulos的pacman 命令入门
    安装软件

    pacman -S 软件包名1 软件包名2 ...

    卸载软件,删除它的所有依赖

    pacman -R 软件包名

    删除一个包,以及其不被其他包所需要的依赖项

    pacman -Rs 软件包名

    这个依赖的包已经被删除了,这条命令可以删除所有不再需要的依赖项

    pacman -Qdtq | pacman -Rs -

    同步软件数据库并且升级软件

    pacman -Syu

    查找软件

    pacman -Ss 字符串1 字符串2 ...

    查找已经被安装的包

    pacman -Qs 字符串1 字符串2 ...

    根据文件名在远程软包中查找它所属的包

    pacman -F 字符串1 字符串2 ...

    查看一个包的依赖树

    pactree 软件包名

    查看一个已经安装包的详情

    pacman -Qi 软件包名

    删除已安装和未安装包的所有缓存版本,但最近 3 个版本除外

    paccache -r

    删除当前未安装的所有缓存包和未使用的同步数据库

    pacman -Sc

    缓存中删除所有文件

    pacman -Scc

    安装不是来自远程存储库的“本地”包

    pacman -U 本地软件包路径.pkg.tar.xz

    安装官方存储库中未包含的“远程”软件包

    pacman -U http://www.example.com/repo/example.pkg.tar.xz

    如果 pacman 在更改数据库时被中断,这个过时的锁文件可能仍然保留。如果你确定没有 pacman 实例正在运行,那么请删除锁文件。

    lsof /var/lib/pacman/db.lck

    如果上述命令未返回任何内容,则可以删除锁文件:

    rm /var/lib/pacman/db.lck

    如果你发现 lsof 命令输出了使用锁文件的进程的 PID,请先杀死这个进程(kill -9),然后删除锁文件。

© 版权声明

相关文章