일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- DZ60
- 맥주리뷰
- Camera obscura #pinhole camera #room camera #방 카메라
- 준연동형
- 해외맥주
- 맥북 프로 16인치 M1 pro
- 대대포 블루
- 12월 가결
- 럭키팡
- 방송 화면에 키보드 띄우기
- QMK
- 연동형 비례대표 계산 프로그램
- 선호 막걸리
- 스플릿 키보드 후기
- 막걸리
- 우희열 명인 한산 불소곡주
- i3wm
- split keyboard
- 키보드 화면
- xiao yun
- 맥주 리뷰
- Asahi super dry
- 맥북 프로 리뷰
- 비례대표제 계산
- 비례대표 계산 코드
- 막믈리에
- 키보드 변천사
- 막걸리 리뷰
- Orthogonal 키보드
- 카트라이더 매크로
- Today
- Total
아 그게 뭐더라
ubuntu에서 i3wm 써보기 본문
i3라고 하면 당연히 씨피유 칩이 떠오르지만 여기서는 i3wm, window manager를 뜻한다.
i3는 arch linux 쪽의 고인물들이 많이 쓴다는 것 같다.
얼마나 좋은지 한번 보자.
이 동영상만 보면 i3가 뭔지 단번에 알 수 있다.
www.youtube.com/watch?v=Wx0eNaGzAZU
타일 기반 창 관리 시스템.
창을 나누는게 트리 구조로 진행되기 때문에 move to parent 같은 커맨드도 있다는 점이 흥미롭다.
꽤 괜찮아 보이길래 설치를 마음먹었다.
참고로 우리의 Ubuntu 의 default window manager는 다들 어디선가 들어봤을 GNOME(그놈) 이다. 즉, i3를 쓰게 되면, 이 GNOME에서 해주던 기능들을 그냥은 못쓴다...!
설치과정
1.설치는 그냥 sudo apt i3 하면 된다.
2. 설치하고 reboot 한번 해주면 login 창 옆에 톱니바퀴를 눌러서 i3로 로그인 하면 된다.
처음 로그인 하면 mod 키로 window 키를 쓸 것인지 alt 키를 쓸 것인지 고르라고 하는데, 소중한 alt를 내버릴 수는 없으니, win키로 했다. 아 그리고 i3 설정 적용 후 새로고침 하려면 "i3-msg restart" 명령어를 쓰면 된다.
그러면 꺼먼 화면이 나오면서 두 가지 사실을 깨달을 수 있는데,
하나는 그 동안 사용했던 단축키가 먹통이 되었음을 깨닫게 되고,
다른 하나는 GNOME의 소중함을 깨닫게 된다.
그동안 GNOME에서 사용하던 단축키들, 터미널(Ctrl+Alt+T) 부터 시작해서, 화면 잠금(win+L), 구간 클립보드 스크린샷 (Ctrl+Shift+PS), 키보드로 음량 조절도 안되는 것은 물론이고, 기본 캘린더, 네트워크 설정, 블루투스 설정 창도 없다.
자 그러면 설정을 조금 해보자. 일단 나는 vertical 모니터를 쓰고 있었는데, 이게 설정이 날아가버려서 vertical 모니터 설정부터 다시 했다.
3. 나만 그런지 모르겠는데 ibus로 한글입력이 안된다. 그래서 fcitx 설치해서 겨우 한글설정을 해 주었다.
4. 일단 xrandr 로 모니터 설정을 해 준 다음에
xrandr --output HDMI-0 --auto --primary --pos 0x0 --output DP-0 --rotate right --pos 2560x-600 --verbose
5. autorandr 도 깔아주고
6. ~/.config/i3/config 에 한 줄 추가해 줬다.
exec_always --no-startup-id autorandr --change
login 하면 무조건 실행되는 명령어를 적어주는 것이다. 자세한 정보는 여기에 있다. i3wm.org/docs/userguide.html
7. 그리고 모니터 마다 workspace를 bind 해주고 싶으면 이렇게 적어주면 된다.
workspace 1 output HDMI-0
workspace 2 output HDMI-0
workspace 3 output HDMI-0
workspace 4 output HDMI-0
workspace 5 output HDMI-0
workspace 6 output HDMI-0
workspace 7 output DP-0
workspace 8 output DP-0
workspace 9 output DP-0
workspace 10 output DP-0
xrandr 명령어로 나오는 정보를 적어주면 된다. i3에서 xrandr의 정보를 가져다가 사용하는 듯.
8. 그리고 Lockscreen이 없으니까. lock screen도 단축키로 할 수 있도록 추가해 준다.
bindsym $mod+p exec "i3lock -c aa0922 -e"
c는 색상이고, e는 빈 비밀번호 입력 못하게 하는 옵션이다.
9. 음량조절 키도 설정해주자.
bindsym XF86AudioRaiseVolume exec pactl set-sink-mute 1 0; exec pactl set-sink-volume 1 +5% #increase sound volume
bindsym XF86AudioLowerVolume exec pactl set-sink-mute 1 0; exec pactl set-sink-volume 1 -5% #decrease sound volume
bindsym XF86AudioMute exec pactl set-sink-mute 1 toggle # mute sound
pactl 말고 amixer는 unmute가 안되는 버그가 있으니까 쓰지 말자. set-sink-volume 다음에 오는 숫자는 "pactl list sinks"로 확인할 수 있다.
10. 그리고 jkl; 로 매핑되어 있는 기본값도 vim 친화적이게 hjkl 로 config에서 바꿔줬다.
11. 그런데 윗쪽이 조금 허전하다. polybar 라고 있길래 설치했다. apt-get 말고 git에서 가져와서 ./build.sh 해주면 된다. 설치 마지막에 example config 파일은 만드는게 좋다.
12. ~/.config/polybar/config 가 있음을 확인하고 cmd에 polybar example을 입력해 본다.
13. 이제 저 example config 파일을 실행해 줄 쉘 스크립트 polybar.sh 를 적는다.
#!/bin/sh
# Terminate already running bar instances
killall -q polybar
# Wait until the processes have been shut down
while pgrep -x polybar >/dev/null; do sleep 1; done
# Launch polybar
polybar example &
무식한 방법이라 아닌줄 알았는데, 다 이렇게 하더라.
14. 그리고 i3/config 에 polybar를 실행하도록 써준다.
exec_always --no-startup-id ~/.config/i3/polybar.sh &
15. polybar에는 siji 라는 이름의 font가 들어가는데, 이게 없으면 허전하니까. github.com/stark/siji/tree/master/pcf 여기 있는 siji.pcf 파일을 ~/.font를 만들어서 안에 넣어주자. 나와있는대로 설치해도 될 것 같긴 한데, 안해봐서 모르겠다.
16. polybar config을 기호에 맞게 수정하고.
17. i3 하단에 있는 status bar도 i3wm.org/i3status/manpage.html이 링크를 참고해서 고친다. (위치: /etc/i3status.conf 또는 ~/.config/i3status/conf)
18. screenshoot도 기존에 gnome에서 쓰던 것과 같이 설정해준다.
gist.github.com/dianjuar/ee774561a8bc02b077989bc17424a19f
# Screenshots
bindsym --release Print exec --no-startup-id maim "/home/$USER/Pictures/$(date +'%Y-%m-%d-%H%M%S.png')"
bindsym $mod+Print exec --no-startup-id maim --window $(xdotool getactivewindow) "/home/$USER/Pictures/$(date +'%Y-%m-%d-%H%M%S.png')"
bindsym Shift+Print exec --no-startup-id maim --select "/home/$USER/Pictures/$(date +'%Y-%m-%d-%H%M%S.png')"
## Clipboard Screenshots
bindsym Ctrl+Print exec --no-startup-id maim | xclip -selection clipboard -t image/png
bindsym Ctrl+$mod+Print exec --no-startup-id maim --window $(xdotool getactivewindow) | xclip -selection clipboard -t image/png
bindsym Ctrl+Shift+Print exec --no-startup-id maim --select | xclip -selection clipboard -t image/png
평가:
아직 제대로 안써보긴 했는데 설정할 것들이 너무 많다. 그리고 창이 조금 많아지다보면 창이 찌부가 되어버리기 때문에 계속해서 workspace를 새로 띄워주거나, 새 창을 아예 자제하게 된다. 그리고 각종 팝업 창 같은 소형 창들도 default로는 1/n 해서 사이즈를 늘려서 차지하게 된다는 점도 거슬린다. 물론 기존 GNOME과 같이 floating 창도 지원을 하긴 한다.
workspace마다 기본 창 배열 포맷을 설정할 수도 있고,
프로그램마다 띄워지는 workspace를 지정할 수도 있고,
내가 지정하는 단축키로 프로그램을 띄울 수도 있고,
이런 점들은 좋긴 한데, 전부 설정이 따로 필요하다는 점이 빡세다. 배보다 배꼽이 더 큰 느낌. 그래도 확실히 노트북에서 쓰기에는 좋을 것 같은 느낌이다. 사실 듀얼모니터에서 쓰기에도 괜찮은 것 같다.
설치한지 일주일도 안 지났다. 일단 조금 더 써봐야겠다.
=================== 2020.12.03 추가
일주일정도 사용하는 동안 큰 문제점은 없었다.
그러다 모니터를 4K로 바꾸면서 폰트가 너무 작아졌다.
Gnome 에서는 gnome-tweaks 에서 폰트 scale을 손쉽게 변경할 수 있길래 그냥 gnome으로 갈아탔다.
애초에 일반적인 GUI 프로그램들은 tile 기반 창 관리에 적합하지 않았기 때문에 불편한 점들이 있기는 했다.
차라리 tweak과 keyboard shortcut 을 활용해서 간단히 GNOME을 꾸며보는게 훨씬 좋아보인다.
'공부 > 토막 상식' 카테고리의 다른 글
Camera obscura 만들기 (2) | 2021.12.08 |
---|---|
알고하는 VPN 서버 열기 (1) | 2020.10.29 |
SSH 리버스 터널링 접속하기 (0) | 2020.05.30 |
사진 메타테이터 수정하기 (0) | 2020.03.04 |
12월에 통과된 준연동형 비례대표제 살펴보기 (4) | 2020.01.11 |