上一篇博文中,已经完成了archlinux的安装,但是进去仅仅是一个冰冷冷的交互式命令窗口。没有图像,也无法打开浏览器。离日常使用还差的很远,接下来首先需要做的就是安装桌面环境。这里我不打算使用诸如gnome或者kde之类的桌面环境,一来这些桌面环境会自动帮我们把所有的给配置好,这不符合深度定制或者说折腾的本意,而来它们的体量相对来说还是比较大的,我想实现最小化安装,这里只需要一个窗口管理器就够了

桌面环境与窗口管理器简述

要将它作为日常使用来说,需要一个图形化的操作界面,与Windows不同的是,Linux自身并不包含图形操作界面,需要额外安装,而Windows是将图形操作界面作为内核的一部分。

为了完成图形化的安装,可以使用桌面环境或者窗口管理器。桌面环境桌面环境结合X客户端,提供通用图形用户界面元素,如图标、工具栏、壁纸,桌面小部件。 大多数桌面环境包括提供一套整合的应用程序和实用工具。桌面环境包含了自己的一套窗口管理器,但是这个可以被替换。为了维持我们进行折腾的目的,这里采用仅仅安装窗口管理器的方式,后面陆续针对它仅配置,以达到和桌面环境差不多的效果

安装前的准备工作

在安装前需要做一些额外的工作,先下载安装好一些必备组件。

sudo pacman -S net-tools man-db man-pages man-pages-zh_cn texinfo ntfs-3g tree pacman-contrib neofetch wget git usbutils pciutils acpi
  • net-tools: 一个包含各种网络工具的库,像 ifconfig 或者 netstat,官方目前使用ip address 命令来获取本机的IP地址,但是我仍然喜欢使用ifconfg所以这里我安装上这个包
  • man-db: 提供man命令
  • man-pages: 提供man页面内容
  • man-pages-zh_cn: 提供man中文页面內容,这个包下载下來不能直接用,后面改別名会提到
  • texinfo: info帮助文档的包
  • ntfs-3g: 对NTFS文件系統提供支持
  • tree: 以树形结构显示目录中各种文件的依附关系
  • pacman-contrib: pacman包管理器的扩展好像是,我主要用裡面的那个pactree命令
  • neofetch: 一个显示系统信息的工具
  • wget: 一个用來下载的工具
  • git: 这个就不用说了,做程序员的都知道这个
  • usbutils: 查看系统USB设备
  • pciutils: 查看系统PCI设备
  • acpi: 用來查看电池电量的工具

一些基础工具安装好后,下面来安装中文和其他语言的字体包,防止后续出现乱码的情况

sudo pacman -S adobe-source-han-serif-cn-fonts wqy-zenhei
sudo pacman -S noto-fonts-cjk noto-fonts-emoji noto-fonts-extra ## 这里我把官方推荐的所有带unicode标识的全装上了,这样后续就不太会出现乱码的情况了
yay -S ttf-ubraille ttf-symbola otf-cm-unicode ttf-arphic-ukai ttf-arphic-uming ttf-dejavu gnu-free-fonts ttf-google-fonts-git nerd-fonts-complete ttf-hack ttf-joypixels

接着安装一下驱动

sudo pacman -S alsa-utils sof-firmware alsa-ucm-conf xf86-video-intel  mesa xf86-input-libinput
  • alsa-utils:声卡驱动
  • sof-firmware:声卡驱动,如果你的机器比较新,那么你可能需要安裝。
  • alsa-ucm-conf: 声卡驱动,如果你的机器比较新,那么你可能需要安裝。
  • xf86-video-intel: Intel核显的渠道,这里我只安装了核心显卡的驱动,如果你有另外的独立显卡,请参考官方文档中的相关内容
  • mesa: 用來配合显卡的另一种上层驱动
  • xf86-input-libinput: 笔记本触摸板的驱动

窗口管理器是搭载在x窗口系统之上的,安装窗口管理器之前需要先安装上x窗口系统的相关服务

sudo pacman -S xorg xorg-xinit nitrogen picom
  • xorg: x服务,用来显示图形界面
  • xorg-init: x服务的启动程序
  • nigrogen: 设置背景图片
  • picom: 窗口渲染,后面做半透明渲染

安装窗口管理器

接下来就正式开始安装窗口管理器了,这里使用suckless全家桶,窗口管理器采用dwm, 程序启动器采用dmenu, 终端程序采用st

git clone https://git.suckless.org/dwm --depth=1
git clone https://git.suckless.org/st --depth=1
git clone https://git.suckless.org/dmenu --depth=1

分别切换到这几个下载下来的目录中,依次执行 sudo make clean install 进行编译安装

接着在用户的家目录下新建一个 .xinitrc 文件(ps: 也可以将 /etc/X11/xinit/xinitrc拷贝到家目录下并改名为.xinitrc,但是这个文件里面内容太多了,显的有点乱,所以我直接新建一个自己往里面加想要的内容)

在文件中添加一行

exec dwm

保存退出后,输入命令 startx 即可看到dwm的窗口了

dwm 基本用法

dwm中最重要的键是 Mod1 键,这个键默认映射到了 Alt 键,使用 Mod1 + p 可以启动 dmenu, 然后只需要在上边出现的工具条中输入你想运行的程序的前几个字母,也可以按左右箭头在进行选择,按回车键完成,即可启动想要的程序

可以使用 Shift + Mod1 + x 来将当前的活动窗口移到其他的标签页,其中x是标签页的编号

关闭当前窗口可以使用 Mod1 + Shift +c

可以使用 Mod1 + Shift + q 来退出 dwm

到现在已经完成了dwm的基本安装以及使用,但是它看起来是那样的不起眼,比起刚开始来说仅仅是多了几个可以运行的终端而已,后面将会介绍如何对它进行美化和相应的改造,让它变得漂亮起来


窗口管理器 dwm安装的更多相关文章

  1. debian安装dwm窗口管理器

    我安装debian版本是debian-8.8.0-i386-netinst最小安装 首先去官网下载源代码 http://git.suckless.org/dwm #安装x-window环境 $sudo ...

  2. DWM 窗体玻璃效果实现

    我一直盼望着 Windows 新版本的发布.令人感兴趣的事情莫过于浏览 MSDN® 和 SDK 文档,查找一些可以利用和依赖的最新创新,然后让朋友和同事以及您的老板(如果幸运的话)大开眼界.Windo ...

  3. 【转】DWM 窗体玻璃效果实现

    我一直盼望着 Windows 新版本的发布.令人感兴趣的事情莫过于浏览 MSDN® 和 SDK 文档,查找一些可以利用和依赖的最新创新,然后让朋友和同事以及您的老板(如果幸运的话)大开眼界.Windo ...

  4. 在浏览器中输入Google.com并且按下回车之后发生了什么(转载)

    原文地址:https://github.com/skyline75489/what-happens-when-zh_CN#id9 本文试图回答一个古老的面试问题:当你在浏览器中输入google.com ...

  5. 在浏览器中输入Google.com并且按下回车之后发生了什么?

    作者: skyline75489  来源: skyline75489的博客  发布时间: 2015-03-26 16:57  阅读: 4163 次  推荐: 23   原文链接   [收藏]      ...

  6. 【计算机基础】当你在浏览器中输入Google.com并且按下回车之后发生了什么?

    本文转载自:https://github.com/skyline75489/what-happens-when-zh_CN#id9 按下"g"键 接下来的内容介绍了物理键盘和系统中 ...

  7. C# WinForm实现Windows 7 Aero磨砂玻璃效果

    在Vista系统之后,微软为窗体程序提供了Aero磨砂的效果,如下图.那么用C#如 何来实现这种磨砂效果呢? 代码: using System; using System.Collections.Ge ...

  8. ArchLinux dwm的安装和配置

    dwm官网:https://dwm.suckless.org/ dwm是一个简洁的平铺式窗口管理器 配置简单,使用便捷,没有多少依赖,占用内存非常小 总之dwm正合口味 安装方法 首先在官网下载dwm ...

  9. [ubuntu]给ubuntu server安装xubuntu(xfce)窗口管理器

    1.安装基本图形 $ sudo apt-get install x-window-system-core 2.安装窗口管理器 $ sudo apt-get install xubuntu-deskto ...

  10. blfs(systemv版本)学习笔记-编译安装i3-wm平铺式窗口管理器

    我的邮箱地址:zytrenren@163.com欢迎大家交流学习纠错! i3-wm项目的官网:https://i3wm.org/ 首先需要lfs基础上编译安装完整的xorg服务 我的xorg服务编译安 ...

随机推荐

  1. IntelliJ IDEA lombok log 报红

    pom文件中引用了  lombok 插件,但Intellij 代码里仍然是红色提示,具体操作如下 Mac

  2. Error unprotecting the session cookie.The payload was invalid.

    .Net Core 3.0 warn: Microsoft.AspNetCore.Session.SessionMiddleware[7] Error unprotecting the session ...

  3. VWAP 订单的最佳执行方法:随机控制法

    更多精彩内容,欢迎关注公众号:数量技术宅,也可添加技术宅个人微信号:sljsz01,与我交流. 引言:相关研究 在当今的投资领域,算法交易正迅速成为客户获取和清算股票头寸的首选方法. 通常,被委托者会 ...

  4. HDU--1166--单点更新

    敌兵布阵 HDU - 1166 多组输入,注意清除tr数组 维护一个前缀数组,耗时有点大 #include <cstdio> #include <cstring> using ...

  5. Codeforces Round #663 (Div. 2) (A~C题,C题 Good)

    比赛链接:Here 1391A. Suborrays 简单构造题, 把 \(n\) 放最前面,接着补 \(1\) ~ \(n - 1\) 即可 1391B. Fix You \((1,1)\) -&g ...

  6. Problem 330A - Cakeminator (思维)

    330A. Cakeminator https://codeforces.com/problemset/problem/330/A 题意很容易理解:给定一块蛋糕区域,但蛋糕上有几个不能吃的草莓,大胃王 ...

  7. Codeforce 515C. Drazil and Factorial(字符串思维题)

    [CodeForces]C. Drazil and Factorial 题目链接:Click Here 题意:找一个最大的数,使得每个位的阶乘的乘积与给定数相同. 首先將 2~9 轉成這樣(0,1為空 ...

  8. 关于el-upload上传图片的一些坑clearFiles()的使用

    https://blog.csdn.net/weixin_46421824/article/details/109195624?spm=1001.2101.3001.6661.1&utm_me ...

  9. 改变函数内this指向方法——call、apply、bind

    javascript为我们专门提供了一些函数方法来帮我们更优雅的处理函数内部this的指向问题,常用的有bind( ).call( ).apply( )三种方法. 相同点: 都可以改变函数内部的thi ...

  10. python进度条实现的几种方法

    一.普通进度条(time实现) import time def progress_bar(): for i in range(101): print(f'\rProgress: {"#&qu ...