우분투 "마우스 배터리 전원 부족" 메시지 삭제

로지텍 무선 마우스의 배터리가 10% 이하로 떨어지면 우분투에서 아래 이미지와 같이 알림 메시지를 출력하는데, 이것이 부팅시 한번만 실행되는 것이 아니라, 주기적으로 실행되어 우분투 사용에 불편함을 초래한다.

배터리 교체로 이문제를 해결할 수도 있지만, 10% 미만 배터리도 1-2개월을 거뜬히 사용할 수 있기에 그냥저냥 쓰다가 떨어지면 바꿔야지 했는데, 배터리 부족 알림이 수시로 실행되어 알림을 비활성화 시키는 방법을 찾았고, 아래 블로그에 잘 설명되어 있어, 이 글에서는 간단하게 적용 방법만 정리하도록 하겠다.

 

Disable "Mouse battery low" spam notification on Ubuntu

 

wrgms.com

위 블로그에서는 이 문제를 upowerd 소스를 gitlab에서 내려받아 low-battery 패치를 적용 및 빌드하여 이것을 시스템에 적용하는 일련의 과정을 스크립트를 제공하고 있다. 이 스크립트 내용을 아래와 같으면, ~/low-battery-patch.sh 파일로 아래와 같이 생성하도록 한다.

$ vi ~/low-battery-patch.sh

#!/bin/bash
# Check which version you're using
upower --version  
UPOWER_ORIG_VER=`upower --version`

# Check Debian / Ubuntu vs. Arch Linux / Manjaro
OS=`awk -F= '/^ID=/{print $2}' /etc/os-release`  
OS_VER=`awk -F= '/^VERSION_ID=/{print $2}' /etc/os-release | cut -d "\"" -f 2`

if [ "$OS" == "manjaro" ]
then  
    echo "Manjaro detected"
    sudo pacman -S base-devel gtk-doc gobject-introspection git
    PATH_UPOWERD="/usr/lib"
    PATH_UPOWER="/usr/bin"
elif [ "$OS" == "ubuntu" ]
then  
    sudo apt install git gtk-doc-tools gobject-introspection libgudev-1.0-dev libusb-1.0-0-dev autoconf libtool autopoint
    if [ "$OS_VER" == "20.10" ]
    then
        echo "Ubuntu version 20.10 (Groovy Gorilla) detected"
        PATH_UPOWERD="/usr/libexec"
        PATH_UPOWER="/usr/bin"
    else
        echo "Ubuntu version <= 20.04 detected"
        PATH_UPOWERD="/usr/lib/upower"
        PATH_UPOWER="/usr/bin"
    fi
else  
    echo "Unknown system; this script was only tested on ubuntu and manjaro."
    exit 1
fi

# Download and patch upowerd

git clone https://gitlab.freedesktop.org/upower/upower  
cd upower/src  
wget https://gist.githubusercontent.com/guiambros/f2bf07f1cc085f8f0b0a9e04c0a767b4/raw/ef90dfcfa2489bab577bd984a6082abacdf8b0b1/up-device.patch  
patch < up-device.patch  
cd ..  
./autogen.sh
./configure
make

# Install upowerd
#
pushd .  
cd src/.libs  
strip upowerd  
sudo chown root.root upowerd  
sudo mv upowerd ${PATH_UPOWERD}/upowerd-silent  
cd ${PATH_UPOWERD}  
sudo mv upowerd upowerd-original  
sudo ln -s upowerd-silent upowerd  
popd

# Install upower
#
pushd .  
cd tools/.libs  
strip upower  
sudo chown root.root upower  
sudo mv upower ${PATH_UPOWER}/upower-silent  
cd ${PATH_UPOWER}  
sudo mv upower upower-original  
sudo ln -s upower-silent upower  
popd

# Restart upowerd
#
sudo systemctl restart upower

# Compare versions before/after (they will likely be different, but it depends on what your distro packages by default)
echo "upower version BEFORE the update:"  
echo "${UPOWER_ORIG_VER}"  
echo "-------------------------------------"  
echo "upower version AFTER the update:"  
upower --version

위 파일을 생성한 후, 실행권한을 할당하고 sudo로 실행하면 소스 다운로드 및 패치 그리고 빌드후 시스템에 적용까지 한번에 이루어지며, 실행되어 있는 "마우스 전원 부족" 메시지가 사라지는 것을 확인할 수 있다.

$ chmod 755 ~/low-battery-patch.sh
$ sudo ~/low-battery-patch.sh