archlinux安装与配置
uwupu 啦啦啦啦啦

Archlinux纯终端安装命令

这里只包含一些基本命令,不包含所有安装流程

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
# 改字体
setfont ter-132b

# 检查网络
ip link
ping archlinux.org

# 更新时间
timedatectl

# 分区
fdisk -l
fdisk /dev/sda
# 新建分区
g #gpt分区
n # 新建分区
.. #分区号和起始分区自动,两次回车
+500M # 结束分区号+500M,这里创建boot分区,所以500M即可
n # 接下来新建根分区
.. # 同理自动
. # 结束分区也自动,直接分配剩下所有空间
# 修改分区1到EFI
t # 修改类型
1 # 第一个分区
1 # EFI类型
w # 保存

# 格式化分区
mkfs.ext4 /dev/sda2 # 将第二个分区设定为ext4格式
mkfs.fat -F 32 /dev/sda1 # 将第一个分区设定为fat32格式

# 挂载分区
mount /dev/sda2 /mnt
mount /dev/sda1 /mnt/boot --mkdir

# 安装系统
pacstrap -K /mnt <要安装的内容>
# 必选1:linux-firmware base
# 二选一: linux-zen linux-zen-headers 或 linux
# 必选2: vim man-db man-pages sudo e2fsprogs xfsprogs git curl wget rsync htop openssh iotop networkmanager wpa_supplicant wireless_tools
# 开发: docker docker-compose gcc make cmake
# 二选一: amd-ucode intel-ucode
# 推荐
pacstrap -K /mnt linux-firmware base linux-zen linux-zen-headers
pacstrap -K /mnt vim man-db man-pages sudo e2fsprogs xfsprogs git curl wget rsync htop openssh iotop docker docker-compose gcc make cmake networkmanager wpa_supplicant wireless_tools terminus-font freetype2
pacstrap -K /mnt 这里填一个ucode


# fstab 保存挂载表到新Linux
genfstab -U /mnt >> /mnt/etc/fstab

# 进入新系统,配置一些东西
arch-chroot /mnt

# 配置时区
ln -sf /usr/share/zoneinfo/Asia/ShangHai /etc/localtime
hwclock --systohc


# 编辑区域/语言。先用英语。
locale-gen
vim /etc/locale.gen # 取消备注en_US.UTF-8 和 zh_CN.UTF-8
vim /etc/locale.conf # 写LANG=en_US.UTF-8

# 给电脑取个名字
vim /etc/hostname # 里面写名字,英文。我这里写uwupu-linux

# 重新生成 initramfs
mkinitcpio -P

# 修改密码
passwd

# 新建一个用户 (可选)
useradd -m -s /bin/bash uwupu
passwd uwupu
usermod -aG wheel uwupu
EDITOR=vim visudo
# 里面添加 uwupu ALL=(ALL:ALL) ALL


# 安装引导 GRUB
pacman -Syyu # 更新软件包
pacman -S grub efibootmgr
grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=GRUB
grub-mkconfig -o /boot/grub/grub.cfg


# 设定默认字体
vim /etc/vconsole.conf # 里面写: FONT=ter-132b

# 开机启动networkmanager
systemctl enable NetworkManager

# 退出chroot、重启
exit
reboot

Archlinux 其他自用配置

字体

1
sudo pacman -S ttf-jetbrains-mono-nerd noto-fonts noto-fonts-cjk noto-fonts-emoji
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
<?xml version="1.0"?>
<!-- <!DOCTYPE fontconfig SYSTEM "fonts.dtd"> -->
<fontconfig>

<!-- 字体优化 -->
<match target="font">
<edit name="antialias" mode="assign">
<bool>true</bool>
</edit>
<edit name="hinting" mode="assign">
<bool>true</bool>
</edit>
<edit name="hintstyle" mode="assign">
<const>hintslight</const>
</edit>
<edit name="rgba" mode="assign">
<const>rgb</const>
</edit>
</match>


<!-- EMOJI -->
<alias binding="strong">
<family>emoji</family>
<prefer>
<family>Noto Color Emoji</family>
</prefer>
</alias>

<!-- 字体配置 -->
<alias>
<family>sans-serif</family>
<prefer>
<family>Noto Sans</family>
<family>Noto Sans CJK SC</family>
<family>Noto Sans CJK TC</family>
<family>Noto Sans CJK JP</family>
<family>Symbols Nerd Font</family>
<family>Noto Color Emoji</family>
</prefer>
</alias>

<alias>
<family>serif</family>
<prefer>
<family>Noto Serif</family>
<family>Noto Serif CJK SC</family>
<family>Noto Serif CJK HK</family>
<family>Noto Serif CJK JP</family>
<family>Noto Serif CJK KR</family>
<family>Noto Serif CJK TC</family>

<family>Noto Color Emoji</family>
<family>Symbols Nerd Font</family>

</prefer>
</alias>

<alias>
<family>monospace</family>
<prefer>
<family>JetBrainsMono Nerd Font</family>
<family>Noto Sans Mono CJK SC</family>
<family>Noto Sans Mono CJK HK</family>
<family>Noto Sans Mono CJK JP</family>
<family>Noto Sans Mono CJK KR</family>
<family>Noto Sans Mono CJK TC</family>
<family>Noto Color Emoji</family>
<family>Symbols Nerd Font</family>
</prefer>
</alias>

</fontconfig>

Hyprland配置

1
hyprland, wofi, mako, waybar, swayidle, hyprlock, brightnessctl, playerctl

hyprland.conf

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
#source = ~/.config/hypr/mocha.conf


# #######################################################################################
# AUTOGENERATED HYPRLAND CONFIG.
# EDIT THIS CONFIG ACCORDING TO THE WIKI INSTRUCTIONS.
# #######################################################################################

#autogenerated = 1 # remove this line to remove the warning

# This is an example Hyprland config file.
# Refer to the wiki for more information.
# https://wiki.hypr.land/Configuring/

# Please note not all available settings / options are set here.
# For a full list, see the wiki

# You can split this configuration into multiple files
# Create your files separately and then link them to this file like this:
# source = ~/.config/hypr/myColors.conf


################
### MONITORS ###
################

# See https://wiki.hypr.land/Configuring/Monitors/
monitor=,preferred,auto,2


###################
### MY PROGRAMS ###
###################

# See https://wiki.hypr.land/Configuring/Keywords/

# Set programs that you use
$terminal = kitty
$fileManager = thunar
$menu = ~/.local/bin/toggle_wofi.sh


#################
### AUTOSTART ###
#################

# Autostart necessary processes (like notifications daemons, status bars, etc.)
# Or execute your favorite apps at launch like this:

# exec-once = $terminal
# exec-once = nm-applet &
# exec-once = waybar & hyprpaper & firefox
exec-once = waybar
exec-once = hyprpaper
exec-once = mako
exec-once = fcitx5
exec-once = wl-paste --watch cliphist store
exec-once = swayidle timeout 300 'hyprlock' timeout 600 'systemctl suspend' before-sleep 'hyprlock'
exec-once = /opt/sparkle/sparkle
#############################
### ENVIRONMENT VARIABLES ###
#############################

# See https://wiki.hypr.land/Configuring/Environment-variables/

env = XCURSOR_SIZE,24
env = HYPRCURSOR_SIZE,24
env = GTK_THEME,Adwaita:dark
env = ELECTRON_OZONE_PLATFORM_HINT, auto
env = GDK_BACKEND, wayland,x11
env = QT_QPA_PLATFORMTHEME,qt6ct
###################
### PERMISSIONS ###
###################

# See https://wiki.hypr.land/Configuring/Permissions/
# Please note permission changes here require a Hyprland restart and are not applied on-the-fly
# for security reasons

# ecosystem {
# enforce_permissions = 1
# }

# permission = /usr/(bin|local/bin)/grim, screencopy, allow
# permission = /usr/(lib|libexec|lib64)/xdg-desktop-portal-hyprland, screencopy, allow
# permission = /usr/(bin|local/bin)/hyprpm, plugin, allow


#####################
### LOOK AND FEEL ###
#####################

# Refer to https://wiki.hypr.land/Configuring/Variables/

# https://wiki.hypr.land/Configuring/Variables/#general
general {
gaps_in = 5
gaps_out = 0

border_size = 0

# https://wiki.hypr.land/Configuring/Variables/#variable-types for info about colors
col.active_border = rgba(33ccffee) rgba(00ff99ee) 45deg
col.inactive_border = rgba(595959aa)

# Set to true enable resizing windows by clicking and dragging on borders and gaps
resize_on_border = false

# Please see https://wiki.hypr.land/Configuring/Tearing/ before you turn this on
allow_tearing = false

layout = dwindle
}

# https://wiki.hypr.land/Configuring/Variables/#decoration
decoration {
rounding = 0
rounding_power = 2

# Change transparency of focused and unfocused windows
active_opacity = 1.0
inactive_opacity = 1.0

shadow {
enabled = true
range = 4
render_power = 3
color = rgba(1a1a1aee)
}

# https://wiki.hypr.land/Configuring/Variables/#blur
blur {
enabled = true
size = 3
passes = 1

vibrancy = 0.1696
}
}

# https://wiki.hypr.land/Configuring/Variables/#animations
animations {
enabled = yes, please :)

# Default animations, see https://wiki.hypr.land/Configuring/Animations/ for more

bezier = easeOutQuint,0.23,1,0.32,1
bezier = easeInOutCubic,0.65,0.05,0.36,1
bezier = linear,0,0,1,1
bezier = almostLinear,0.5,0.5,0.75,1.0
bezier = quick,0.15,0,0.1,1

animation = global, 1, 10, default
animation = border, 1, 5.39, easeOutQuint
animation = windows, 1, 4.79, easeOutQuint
animation = windowsIn, 1, 4.1, easeOutQuint, popin 87%
animation = windowsOut, 1, 1.49, linear, popin 87%
animation = fadeIn, 1, 1.73, almostLinear
animation = fadeOut, 1, 1.46, almostLinear
animation = fade, 1, 3.03, quick
animation = layers, 1, 3.81, easeOutQuint
animation = layersIn, 1, 4, easeOutQuint, fade
animation = layersOut, 1, 1.5, linear, fade
animation = fadeLayersIn, 1, 1.79, almostLinear
animation = fadeLayersOut, 1, 1.39, almostLinear
animation = workspaces, 1, 1.94, almostLinear, fade
animation = workspacesIn, 1, 1.21, almostLinear, fade
animation = workspacesOut, 1, 1.94, almostLinear, fade
}

# Ref https://wiki.hypr.land/Configuring/Workspace-Rules/
# "Smart gaps" / "No gaps when only"
# uncomment all if you wish to use that.
# workspace = w[tv1], gapsout:0, gapsin:0
# workspace = f[1], gapsout:0, gapsin:0
# windowrule = bordersize 0, floating:0, onworkspace:w[tv1]
# windowrule = rounding 0, floating:0, onworkspace:w[tv1]
# windowrule = bordersize 0, floating:0, onworkspace:f[1]
# windowrule = rounding 0, floating:0, onworkspace:f[1]

# See https://wiki.hypr.land/Configuring/Dwindle-Layout/ for more
dwindle {
pseudotile = true # Master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below
preserve_split = true # You probably want this
}

# See https://wiki.hypr.land/Configuring/Master-Layout/ for more
master {
new_status = master
}

# https://wiki.hypr.land/Configuring/Variables/#misc
misc {
force_default_wallpaper = -1 # Set to 0 or 1 to disable the anime mascot wallpapers
disable_hyprland_logo = false # If true disables the random hyprland logo / anime girl background. :(
}


#############
### INPUT ###
#############

# https://wiki.hypr.land/Configuring/Variables/#input
input {
kb_layout = us
kb_variant =
kb_model =
kb_options =
kb_rules =

follow_mouse = 1

sensitivity = 0.3 # -1.0 - 1.0, 0 means no modification.
accel_profile = flat

touchpad {
natural_scroll = true
scroll_factor = 0.2
}
}

# https://wiki.hypr.land/Configuring/Variables/#gestures
gestures {
gesture = 3, horizontal, workspace

}

# Example per-device config
# See https://wiki.hypr.land/Configuring/Keywords/#per-device-input-configs for more
device {
name = epic-mouse-v1
sensitivity = -0.5
}

device{
name = syna2ba6:00-06cb:cf00-touchpad
sensitivity = -0.1
natural_scroll = true
}
###################
### KEYBINDINGS ###
###################

# See https://wiki.hypr.land/Configuring/Keywords/
$mainMod = SUPER # Sets "Windows" key as main modifier

# Example binds, see https://wiki.hypr.land/Configuring/Binds/ for more
bind = $mainMod, Q, exec, $terminal
bind = $mainMod, C, killactive,
bind = $mainMod, M, exit,
bind = $mainMod, E, exec, $fileManager
bind = $mainMod, V, togglefloating,
bind = $mainMod, R, exec, $menu
bind = $mainMod, P, pseudo, # dwindle
bind = $mainMod, J, togglesplit, # dwindle
bind = $mainMod, L, exec, hyprlock
bind = $mainMod, T, exec, kitty
bind = $mainMod, F, fullscreen
# bind = CTRL ALT, T, exec, kitty
# bind = , capslock, exec, fcitx5-remote -t
# Move focus with mainMod + arrow keys
bind = $mainMod, left, movefocus, l
bind = $mainMod, right, movefocus, r
bind = $mainMod, up, movefocus, u
bind = $mainMod, down, movefocus, d

# Switch workspaces with mainMod + [0-9]
bind = $mainMod, 1, workspace, 1
bind = $mainMod, 2, workspace, 2
bind = $mainMod, 3, workspace, 3
bind = $mainMod, 4, workspace, 4
bind = $mainMod, 5, workspace, 5
bind = $mainMod, 6, workspace, 6
bind = $mainMod, 7, workspace, 7
bind = $mainMod, 8, workspace, 8
bind = $mainMod, 9, workspace, 9
bind = $mainMod, 0, workspace, 10

# Move active window to a workspace with mainMod + SHIFT + [0-9]
bind = $mainMod SHIFT, 1, movetoworkspace, 1
bind = $mainMod SHIFT, 2, movetoworkspace, 2
bind = $mainMod SHIFT, 3, movetoworkspace, 3
bind = $mainMod SHIFT, 4, movetoworkspace, 4
bind = $mainMod SHIFT, 5, movetoworkspace, 5
bind = $mainMod SHIFT, 6, movetoworkspace, 6
bind = $mainMod SHIFT, 7, movetoworkspace, 7
bind = $mainMod SHIFT, 8, movetoworkspace, 8
bind = $mainMod SHIFT, 9, movetoworkspace, 9
bind = $mainMod SHIFT, 0, movetoworkspace, 10

# Example special workspace (scratchpad)
bind = $mainMod, S, togglespecialworkspace, magic
bind = $mainMod SHIFT, S, movetoworkspace, special:magic

# Scroll through existing workspaces with mainMod + scroll
bind = $mainMod, mouse_down, workspace, e+1
bind = $mainMod, mouse_up, workspace, e-1

# Move/resize windows with mainMod + LMB/RMB and dragging
bindm = $mainMod, mouse:272, movewindow
bindm = $mainMod, mouse:273, resizewindow

# Laptop multimedia keys for volume and LCD brightness
bindel = ,XF86AudioRaiseVolume, exec, wpctl set-volume -l 1 @DEFAULT_AUDIO_SINK@ 5%+
bindel = ,XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-
bindel = ,XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle
bindel = ,XF86AudioMicMute, exec, wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle
bindel = ,XF86MonBrightnessUp, exec, brightnessctl -e4 -n2 set 5%+
bindel = ,XF86MonBrightnessDown, exec, brightnessctl -e4 -n2 set 5%-

# Requires playerctl
bindl = , XF86AudioNext, exec, playerctl next
bindl = , XF86AudioPause, exec, playerctl play-pause
bindl = , XF86AudioPlay, exec, playerctl play-pause
bindl = , XF86AudioPrev, exec, playerctl previous

##############################
### WINDOWS AND WORKSPACES ###
##############################

# See https://wiki.hypr.land/Configuring/Window-Rules/ for more
# See https://wiki.hypr.land/Configuring/Workspace-Rules/ for workspace rules

# Example windowrule
# windowrule = float,class:^(kitty)$,title:^(kitty)$

# Ignore maximize requests from apps. You'll probably like this.
windowrule = suppressevent maximize, class:.*

# Fix some dragging issues with XWayland
windowrule = nofocus,class:^$,title:^$,xwayland:1,floating:1,fullscreen:0,pinned:0
# Window rule for pinned screenshots with swayimg
windowrule = nofocus, class:^(swayimg-pin)$,floating:1,fullscreen:0,pin:1

hyprlock.conf

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28

# ~/.config/hypr/hyprlock.conf

background {
# path = /path/to/your/wallpaper.png
blur_passes = 3
blur_size = 8
}

input-field {
monitor =
size = 200, 50
outline_thickness = 3
dots_size = 0.33 # Scale of dots relative to a full circle
dots_spacing = 0.15 # Spacing between dots
dots_center = true
inner_color = rgb(29, 30, 41)
outer_color = rgb(203, 166, 248)
font_color = rgb(205, 214, 249)
fade_on_empty = false
placeholder_text = <i>Password...</i>
hide_input = false
rounding = -1 # Full rounding
position = 0, -20
halign = center
valign = center
}

waybar-conf

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
{
"layer": "top",
"position": "top",
"height": 16,
"spacing": 0,
"modules-left": [
"clock",
"hyprland/workspaces"
],
"modules-center": [],
"modules-right": [
"tray",
"network",
"bluetooth",
"backlight",
"pulseaudio",
"cpu",
"memory",
"custom/gpu",
"battery",
],
"hyprland/workspaces": {
"disable-scroll": false,
"format": "{icon}",
"persistent-workspaces": {
"*": [
1,
2,
3
]
},
"format-icons": {
"1": "󰣇"
}
},
"network": {
"format-wifi": "󰤨 {bandwidthTotalBits}",
"format-ethernet": " Wired ",
"format-linked": " 󱘖 {ifname} (No IP) ",
"format-disconnected": "  Disconnected ",
"format-alt": " 󰤨 {essid} {signalStrength}%  {bandwidthUpBits} {bandwidthDownBits}",
"on-click": "nm-connection-editor",
"interval": 1
},
"battery": {
"states": {
"warning": 30,
"critical": 15
},
"format": " {icon} {capacity}% ",
"format-charging": " 󱐋{capacity}%",
"interval": 1,
"format-icons": [
"󰂎",
"󰁼",
"󰁿",
"󰂁",
"󰁹"
],
"tooltip": true
},
"pulseaudio": {
"format": "{icon}{volume}% ",
"format-muted": " 󰖁 0% ",
"format-icons": {
"headphone": "  ",
"hands-free": "  ",
"headset": "  ",
"phone": "  ",
"portable": "  ",
"car": "  ",
"default": [
"  ",
"  ",
"  "
]
},
"on-click-right": "pavucontrol -t 3",
"on-click": "pactl -- set-sink-mute 0 toggle",
"tooltip": true,
"tooltip-format": "当前系统声音: {volume}%"
},
"custom/temperature": {
"exec": "sensors | awk '/^Package id 0:/ {print int($4)}'",
"format": " {}°C ",
"interval": 5,
"tooltip": true,
"tooltip-format": "当前 CPU 温度: {}°C"
},
"memory": {
"format": "  {used:0.1f}G/{total:0.1f}G ",
"tooltip": true
},
"cpu": {
"format": "  {usage}% ",
"tooltip": true
},
"clock": {
"interval": 1,
"timezone": "Asia/Chengdu",
"format": "  {:%H:%M} ",
"tooltip": true,
"tooltip-format": "{:L%Y 年 %m 月 %d 日, %A}"
},
"tray": {
"icon-size": 17,
"spacing": 6
},
"backlight": {
"device": "intel_backlight",
"format": "{icon}{percent}% ",
"tooltip": true,
"tooltip-format": "当前屏幕亮度: {percent}%",
"format-icons": [
" 󰃞 ",
" 󰃝 ",
" 󰃟 ",
" 󰃠 "
]
},
"bluetooth": {
"format": "  {status} ",
"on-click": "blueman-manager",
"format-connected": "  {device_alias} ",
"format-connected-battery": "  {device_alias}{device_battery_percentage}% ",
"tooltip-format": "{controller_alias}\t{controller_address}\n\n{num_connections} connected",
"tooltip-format-connected": "{controller_alias}\t{controller_address}\n\n{num_connections} connected\n\n{device_enumerate}",
"tooltip-format-enumerate-connected": "{device_alias}\t{device_address}",
"tooltip-format-enumerate-connected-battery": "{device_alias}\t{device_address}\t{device_battery_percentage}%"
},
"custom/gpu": {
"exec": "sh -c 'printf \"%s %s %s\" \"$(cat /sys/class/drm/card1/device/gpu_busy_percent)\" \"$(cat /sys/class/drm/card1/device/mem_info_vram_used)\" \"$(cat /sys/class/drm/card1/device/mem_info_vram_total)\" | awk \"{ printf \\\"GPU %d%% %.1fG/%.1fG\\\", \\$1, \\$2/1073741824, \\$3/1073741824 }\"'",
"format": "{}",
"interval": 1,
"tooltip": true,
"tooltip-format": "GPU Usage | VRAM Usage (Used/Total)"
}
}

waybar-style

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
* {
font-family: "CaskaydiaCove Nerd Font", "Font Awesome 6 Free", "Font Awesome 6 Free Solid";
font-size: 12px;
border-radius: 0;
min-height: 0;
border: none;
font-weight: bold;
/* color: black; */
}

#workspaces {
background-color: rgba(24, 24, 37, 1.0);
border: none;
box-shadow: none;
}

#tray {}


#network,
#bluetooth,
#backlight,
#pulseaudio,
#cpu,
#memory,
#custom-gpu,
#clock,
#battery {
padding: 1px 8px;
color: #cdd6f4;
}

#network,
#bluetooth,
#backlight,
#pulseaudio {
/* background-color: rgb(50, 123, 99); */

}

#cpu,
#memory,
#custom-gpu,
#battery {
/* background-color: rgb(64, 164, 20); */

}



/* #network,
#cpu,
#clock {
border-top-left-radius: 10px;
border-bottom-left-radius: 10px;
margin-left: 8px;
}

#pulseaudio,
#battery,
#clock {
border-top-right-radius: 10px;
border-bottom-right-radius: 10px;
margin-right: 8px;
} */

#waybar {
background-color: #181825;
transition-property: background-color;
transition-duration: 0.5s;
}






/* ---------------COLOR--------------- */
#clock {
color: #ABE9B3;
}

#cpu {
color: #96CDFB;
}

#memory {
color: #DDB6F2;
}

#disk {
color: #F5C2E7;
}

#temperature {
color: #F8BD96;
}

#network {
color: #8BD5CA;
/* Teal */
}

#pulseaudio {
color: #FAE3B0;
/* Yellow */
}

#custom-gpu {
color: #ED8796;
/* Red */
}

#battery {
color: #F5E0DC;
/* Rosewater */
}

#backlight {
color: #FAE3B0;
/* Yellow (Reusing for brightness) */
}

#bluetooth {
color: #8AADF4;
/* Sapphire */
}


/* ---------------OTHER--------------- */

#window {
/* background-color: #74c7ec; */
}

#waybar.hidden {
opacity: 0.5;
}

#workspaces button {
all: initial;
min-width: 0;
box-shadow: inset 0 -3px transparent;
padding: 0px 6px;
margin: 6px 3px;
border-radius: 4px;
background-color: rgba(36, 36, 52, 1.0);
color: #cdd6f4;
}

#workspaces button.active {
color: #1e1e2e;
background-color: #cdd6f4;
}

#workspaces button:hover {
box-shadow: inherit;
text-shadow: inherit;
color: #1e1e2e;
background-color: #cdd6f4;
}

tooltip {
border-radius: 8px;
padding: 16px;
background-color: #131822;
color: #C0C0C0;
}

tooltip label {
padding: 5px;
background-color: #131822;
color: #C0C0C0;
}

~/.local/bin/toggle_wofi.sh

1
2
3
4
5
if pgrep -x wofi > /dev/null ; then 
pkill -x wofi
else
wofi --show drun,run
fi

WHP 运行带着代理

1
2
3
4
5
6
whp() {
local HTTP_PROXY="http://127.0.0.1:7892"
local HTTPS_PROXY="http://127.0.0.1:7892"
local no_proxy="localhost,127.0.0.1,::1"
HTTP_PROXY="$HTTP_PROXY" HTTPS_PROXY="$HTTPS_PROXY" no_proxy="$no_proxy" "$@"
}

使用capslk进行输入法切换

  1. 打开fcitx5-configtool,修改切换输入法快捷键为ctrl + alt + space
  2. 安装keyd
  3. 修改配置文件
1
2
3
4
5
6
7
8
9
10
11
# 对所有设备生效
[ids]
*
[main]
# 映射capslock到 Ctrl + Alt + Space
capslock = macro(C-A-space)
# 按下shift 将启用'[shift]'层,也就是下面的[shift]将生效
shift = layer(shift)
[shift]
# 在此层下,capslock将触发capslock的功能
capslock = capslock
  1. 重启keyd服务; sudo systemctl restart keyd

aur的一些包

1
yay -S ttf-ms-win11-auto

主题统一

  1. yay安装catppuccin-gtk-theme-mocha papirus-catppuccin-icons-git catppuccin-cursors-mocha kvantum-theme-catppuccin-git
  2. pacman安装nwg-look qt5ct qt6ct kvantum
  3. 运行nwg-look配置主题为catppuccin, 配置icon和cursor
  4. 运行kvantum, 配置主题为catppuccin, 配置icon和cursor
  5. 分别运行qt5ct和qt6ct, 配置主题为kvantum, 配置icon和cursor
  6. flatpak配置
1
2
3
4
5
flatpak install flathub org.gtk.Gtk3theme.Catppuccin-Mocha
sudo flatpak override --filesystem=~/.themes
sudo flatpak override --filesystem=~/.icons
sudo flatpak override --filesystem=/usr/share/themes
sudo flatpak override --filesystem=/usr/share/icons

flatpak中文配置

1
2
flatpak config --set languages "zh;en"
flatpak update

END

END章节是为了VsCode索引方便, 目前未找到合适的markdown编辑器

 评论
评论插件加载失败
正在加载评论插件