카테고리 보관물: Linux

HHKB Fn+ESC suspend 진입 방지

Linux에서 Happy Hacking Keyboard의 Fn key를 누르고 있다가 실수로 ESC key를 눌러서 Fn + ESC 조합이 되어 sleep에 진입하는 경우가 종종 있는데, 한 참 작업하는 중에 컴퓨터가 sleep에 들어가 버리면 흐름이 다시 잡기가 여간 힘들다.

Fn+ESC는 WakeUp에 해당하는 Keycode 값(151)이 keyboard로 부터 올려지는 것이어서 상위단에서 이 상황을 따로 구분해 주기는 어렵다. HHKB의 DIP switch를 변경해 주거나 해당 키를 처리하지 않도록 환경 설정을 해주어야 하는데, DIP switch를 변경하면 다른 설정이 영향을 받을 것 같아서 환경 설정으로 수정해 보기로 했다.

Fn+ESC에 의해 발생되는 sleep key는 먼저 logind에서 처리되고 Window manager (GNOME)에 전달되는데, logind에서 이 키를 받았을 때 무시하도록 하려면 다음과 같이 /etc/systemd/logind.conf를 수정해 준다.

/etc/systemd/logind.conf


HandleSuspendKey=ignore
HandleSuspendKeyLongPress=ignore
HandleHibernateKey=ignore
HandlePowerKey=ignore
HandlePowerKeyLongPress=ignore
HandleRebootKey=ignore

GNOME 추가 수정

Hyprland를 사용하는 경우에는 위의 설정만으로도 되지만, GNOME은 추가로 전원에 관련된 동작을 수정해 주어야 한다. Terminal에서 gsettings의 전원 동작을 아래와 같이 설정해 준다.

gsettings set org.gnome.settings-daemon.plugins.power power-button-action 'nothing'
gsettings set org.gnome.settings-daemon.plugins.power sleep-inactive-ac-type 'nothing'
gsettings set org.gnome.settings-daemon.plugins.power sleep-inactive-battery-type 'nothing'

이제 시스템을 재부팅하고 Fn+ESC를 누르면 해당 키가 무시되어 suspend에 진입하지 않게 된다.

Image file의 partition 크기 늘리기

이미지파일에서 주어지는 파티션의 크기가 너무 작은 경우 더이상 파일을 복사 할 수 없는 경우가 종종 생긴다.

fdisk 명령어로 보면 이미지 파일의 파티션정보가 보이는데, 이 경우 기본적으로 5.5GB의 공간이 Linux partition (ext4)으로 할당되어 있다.

이 크기를 늘리고 싶다면 truncate로 image file의 크기를 조절하고, parted로 원하는 파티션에 할당해 주면된다.

# Image의 크기를 1GB 늘림
truncate -s +1G ./raspios_inc_7gb.img

# 두번째 파티션(ext4)에 100%를 할당
parted raspios_inc_7gb.img resizepart 2 100%

다시 한번 fdisk를 실행해보면 이전 5.5GB에서 6.5GB로 1GB 늘어난 파티션이 두번째인 Linux partition에 적용된 것을 확인할 수 있다.

Raspberry Pi용 Qt5 Cross Compile을 위한 Bash Script

지난번 포스팅 “Raspberry Pi 5용 Qt5 Cross Compile“에서 수행했던 과정을 좀더 편리하게 사용하기 위해서 Bash Script로 만들었다.

다운로드

GitHub gist로 올려 두었으니 다음 위치에서 다운로드 받아서 크로스 컴파일을 수행할 위치에 저장해 둔다.

wget https://gist.github.com/litcoder/6db4c80289edb8bca43cd11a3ae88574/raw/3b0f170850892fe5be86c47395c3b8c026cf9e34/build_qt5_rpi.sh

사용법

–help 옵션으로 간단한 설명이 나오기는 하지만, 가장 간단한 실행 방법은 work space를 실행 파일의 파라미터로 넘겨 주는 것이다.

bash build_qt5_arm64.sh <work space>

별 문제가 없다면 스크립트가 동작되고 raspios.img 파일이 생성되는데 이것을 Raspberry Pi Imager 혹은 dd 명령어로 SD card에 flash해서 사용하면 된다.