[MyArch]我的Archlinux与bspwm的重生之途
0x00 前言碎语
2023.8.19
好久不见。这些日子一直在和bspwm和archlinux打交道。自从上次NepCTF的前几天和CuB3y0nd小师傅的bspwm配置打交道之后我一发不可收拾。中间为了恢复数据重装系统进kde,结果空手而归。收获是连续两次重装archlinux,我对这个系统的认识更加深刻了。
0x01 参考
开始就是用refus烧一个u盘,使用最新的archlinux镜像即可。也可以使用ventoy。
然后就是分区挂载,装基础包,配置引导,开机就行。整体来说也没有什么。主要是后续的配置。
辅助参考主要是格式化swap分区的时候使用mkswap /dev/xxx
命令。
并且注意最好使用linux-zen
内核。
cubey小师傅的后续参考博客
这里没有梯子只能这样先获取bspwm配置。
git clone https://gitclone.com/github.com/CuB3y0nd/1llusion.git
#这是git clone https://gitclone.com/(后面是你原本要clone的地址去掉 https://)
#这是使用了国内镜像加速
双系统引导
双系统引导的部分发现上面几个博客讲的都不是很详细。
其实主要就是在已经有grub之后,使用fdisk -l /dev/xxx
命令查看分区,找到Windows的efi分区,然后挂载到/mnt
上,使用os-prober
,探测到windows的boot文件之后,再次使用grub-mkconfig -o /boot/grub/grub.cfg
命令创建grub文件即可。
后续bspwm配置就很杂乱了,可以参考后续参考的那个文章和其他文章吧。
0x02 特殊软件包和脚本
nemo
文件管理器
flameshot
截图
oh-my-zsh
我的主题是af-magic
gpaste
作为剪贴板
ps 后来发现fcitx5自带剪贴板!!!!
一些熟悉的配方
# 在 ~/.zshrc 文件中添加以下行
bindkey '^G' beginning-of-line
bindkey '^[[1;5D' backward-word # Ctrl + ← 向左移动一个单词
bindkey '^[[1;5C' forward-word # Ctrl + → 向右移动一个单词
移动窗口到空闲桌面
#!/bin/bash
# 上面这行指定了解释器为 bash
# 获取桌面列表
desktops=$(bspc query -D --names)
# 这一行运行了 bspc 命令,获取当前所有桌面的名称,并将结果赋值给变量 desktops
# 函数:检查桌面是否为空
is_desktop_empty() {
local desktop=$1
window_count=$(bspc query -N -d "$desktop" -n '.leaf.!hidden')
[ -z "$window_count" ]
}
# 这里定义了一个函数 is_desktop_empty,它会检查给定桌面是否为空(没有窗口)
# 遍历所有桌面,寻找空闲桌面
for desktop in $desktops; do
if is_desktop_empty "$desktop"; then
# 获取焦点窗口的ID
focused_window=$(bspc query -N -n focused)
# 获取当前焦点窗口的 ID
if [ -n "$focused_window" ]; then
# 将焦点窗口移动到空闲桌面
bspc node "$focused_window" -d "$desktop"
# 使用 bspc 命令将焦点窗口移动到空闲桌面
exit 0
else
echo "未找到焦点窗口"
exit 1
fi
fi
done
echo "未找到空闲桌面"
exit 1
# 如果没有找到空闲桌面或焦点窗口,会显示相应的消息并退出脚本
连接显示屏自动更改脚本
自启动或者super+r执行
#!/bin/bash
# Check if HDMI-1 is connected
if xrandr | grep "HDMI-1 connected"; then
# Check if HDMI-1 is already the primary display
if ! xrandr --current | grep "HDMI-1 connected primary"; then
# Set HDMI-1 as primary display
xrandr --output HDMI-1 --primary
# Rotate eDP-1 to left
xrandr --output eDP-1 --rotate left
~/.config/bspwm/bspwmrc
fi
fi
if ! xrandr | grep "HDMI-1 connected"; then
# Check if HDMI-1 is already the primary display
if ! xrandr --current | grep "eDP-1 connected 2560x1600+0+0 (normal"; then
# Set HDMI-1 as primary display
xrandr --output eDp-1 --primary
# Rotate eDP-1 to left
xrandr --output eDP-1 --rotate normal
~/.config/bspwm/bspwmrc
fi
fi
多屏幕快捷配置
# 使用 alt 键加数字键 (1-9) 来切换桌面,以及 minus 和 equal 键来切换到第 11 和 12 个桌面
alt + {_,shift + }{1-9,0,minus,equal}
bspc {desktop -f,node -d} '^{1-9,10,11,12}'
网络时断时续问题解决
参考文章
同时关闭networkmanger服务,只用dhcpcd即可。
sudo systemctl stop NetworkManager
sudo systemctl disable NetworkManager
sdunetd
https://github.com/SadPencil/sdunetd
防止sdunet掉认证,进去登录,写入配置文件到/etc/sdunetd/config.json
和/etc/sdunetd/configv6.json
(分别是ipv4和ipv6的配置文件,保存即可)
使用:执行 sdunetd -c /etc/sdunetd/config.json
和 sdunetd -c /etc/sdunetd/configv6.json
,在连接实验室网络或其他配置好认证的网络时需要关闭。
如果不成功,尝试在深澜软件里的自主服务下线所有设备
安装fscan时候需要设置代理
export GOPROXY=https://goproxy.io
解决耳机不能自动使用
yay -S pavucontrol
更改默认浏览器
xdg-settings set default-web-browser firefox.desktop
修复wps粗体过粗
yay -S downgrade
sudo downgrade 'freetype2=2.13.0'
然后重启wps即可解决。属于兼容问题,详见wiki。
wine字体问题
cd ~/.wine/drive_c/windows/Fonts
wget https://down.gloriousdays.pw/Fonts/wine_fonts.tar.xz
tar xJvf wine_fonts.tar.xz
rm wine_fonts.tar.xz
yay -S install winetricks
winetricks settings fontsmooth=rgb
修改天气
主题的modules.ini是对应主题的天气ui配置,scripts/weather里面可以配置天气api
使用clamAV扫描病毒
2023.10.7 最近有点郁郁不得志,好好努力,不论高潮低谷做好自己的事情还有保证睡眠吧!
sudo freshclam & clamscan –ri / -l clamscan.log --remove
typora配合piclist
2023.10.8 一切都在好起来,投稿又进了一个合天!
/usr/bin/piclist upload
设置上传服务自定义命令,用sm.ms的token在piclist里设置,太好用啦!
mc
yay -S hmcl-stable-bin
yay jdk21
aur包下载慢
~ » cd .cache/yay/texlive-full N1nE@N1nEmAn
-------------------------------------------------------------------------------------------
~/.cache/yay/texlive-full (master*) » vim PKGBUILD
然后修改mirror如下
_mirror='mirrors4.bfsu.edu.cn/CTAN/systems/texlive/tlnet/'
_syncdir="CTAN/tlnet"
字体重叠
~/.config/alacritty » cat fonts.yml 127 ↵ N1nE@N1nEmAn
font:
normal:
family: "JetBrains Mono"
# style: Regular
bold:
family: "JetBrains Mono"
# style: Bold
italic:
family: "JetBrains Mono"
# style: Italic
bold_italic:
family: "JetBrains Mono"
# style: Bold Italic
size: 10
monospace: true
neovim!
git clone https://github.com/LazyVim/starter ~/.config/nvim
然后在配置文件里加上Copilot!!!!
命令Lazy load/install xxx
0x03 小尾巴
后续会不断更新。因为我是使用bspwm而不再是kde,所以很多东西又需要自己从新配置,在此记录也是方便大家或者自己参考了。
[MyArch]我的Archlinux与bspwm的重生之途的更多相关文章
- ArchLinux安装步骤(一)
本文为安装archlinux的教程,需要有硬盘分区,挂载等基础linux命令的了解还有vim的基本操作,不知道也没关系,这里有大神的视频教程ArchLinux指南. 确实是不是uefi模式 ls /s ...
- 【Linux】虚拟机安装Archlinux
参考:https://wiki.archlinux.org/index.php/Installation_guide_(%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87) 安装 ...
- archlinux安裝手记(Win10+Arch、GPT+UEFI、lvm)
准备工具和设置制作启动盘连接网络硬盘分区规划分区LVM方案创建文件系统分区挂载激活lvm2钩子基础安装和配置配置镜像源基础系统安装fstab进入系统initramfs引导程序网络搭建使用环境用户管理用 ...
- Install ArchLinux(draft)
1.# dd bs=4M if=/path/to/archlinux.iso of=/dev/sdx status=progress && sync 2. # timedatectl ...
- ArchLinux+Win10双系统的Grub配置
解决:ArchLinux+Win10双系统,Grub设置 原装的Win10,装完ArchLinux后,要进入Win10一段时间只能通过boot选择. Grub的菜单里并没有.Grub安装过程是参考wi ...
- ArchLinux安装指南
将ArchLinux作为进阶Linux发行版,主要看重滚动更新和深入理解Linux的安装过程. 由于是新手,所以先选择在公司电脑上用VMware来安装.然后渐进到借助U盘在win10笔记本上安装双系统 ...
- Snort 安装 配置 - Archlinux
About Snort Snort是一套开放源代码(OpenSource and free)的网络入侵预防软件(NIPS)与网络入侵检测软件(NIDS).Snort使用了以侦测签名(signature ...
- 个人Win10 +archlinux安装笔记
win10+archlinux 1.查看磁盘并分区并挂载1.1 分区/dev/sda1 WIN10 保留分区/dev/sda2 WIN10 ESP分区(EFI)/dev/sda3 WIN10 MSR分 ...
- [archlinux][hardware] ThankPad T450自带SSD做bcache之后的使用寿命分析
这个分析的起因,是由于我之前干了这两个事: [troubleshoot][archlinux][bcache] 修改linux文件系统 / 分区方案 / 做混合硬盘 / 系统转生大!手!术!(调整底层 ...
- archlinux中c语言的rpc编程
参考:http://www.cs.rutgers.edu/~pxk/rutgers/notes/rpc/ 启动rpc服务端会出现 unable to register 这个错误,据说是要启用 port ...
随机推荐
- 如何使用ps抠图(两种扣图方法)
PS抠图的方法有很多种,以下是其中两种常用的方法: 方法一:适用于背景颜色单一.较为简单的图片. 选中魔棒工具/魔术橡皮擦,点击背景,出现选区,点击Delete键删除. 点击快速选择工具,沿着所需图形 ...
- 如何使用Oracle Enterprise Manager Database Express连接到PDB数据库
1.问题 1.1重复弹出登录框,无法登陆 关闭登录框,显示invalid container name 1.2 重启后PDB数据库处于mounted挂载状态,未打开导致使用 Enterprise 登陆 ...
- Java - 获取个十百千位数
int n= 1234: System.out.println(n%10 ); //获取个位 System.out.println((n/10)%10 ); //获取十位 System.out.pri ...
- 如何查找SpringBoot应用中的请求路径(不使用idea)
背景 昨天有个同事向我咨询某个接口的物理表是哪个,由于公司业务较多.这块业务的确不是我负责的,也没有使用idea不能全局搜索(eclipse搜不到jar内的字符串),也就回复了不清楚. 除了自己写代码 ...
- 【秘籍揭秘】如何高速下载游戏、Switch资源?省时省力一网打尽!
百度云盘SVIP合租啦亲爱的考研党和游戏玩家们,我今天要分享的是一份独家秘籍!你是不是常常为下载游戏或Switch资源而烦恼?是不是经常遇到下载速度慢.限速等问题,让你等待无尽?别担心,我有一个绝密的 ...
- K8S_IPV6 POD与数据库联通方法以及快速网络调试的一个思路
K8S_IPV6 POD与数据库联通方法以及快速网络调试的一个思路 背景 前端时间搭建了一套K8S only IPV6 Single Stack的测试环境 因为自己长时间不搞K8S了, 并且IPV6的 ...
- [转帖]Split Region 使用文档
https://docs.pingcap.com/zh/tidb/stable/sql-statement-split-region 在 TiDB 中新建一个表后,默认会单独切分出 1 个 Regio ...
- [转帖]k8s对接ceph,ceph-csi方式
1.上传ceph-csi-yaml和ceph-csi-image 两个文件夹到服务器 2.加载 ceph-csi-image里面的镜像 3.将加载好的镜像上传到本地harbor上. 4.修改ceph- ...
- [转帖]Python基础之函数(四)
https://www.jianshu.com/p/168e341fb81c 一.函数定义 函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段:比如常用的print(),就是内建函数:通 ...
- [转帖]egrep 正则表达式
https://www.cnblogs.com/ordili/p/9395735.html 一.功能 用正则表达式在文件或输入中搜索匹配的字符串,并打印出匹配的行.egrep匹配之前,会删除每行结尾的 ...