====== Install Manjaro Linux 19 Kyria XFCE ======
* Install [[linux:manjaro|Manjaro Linux]]
* [[linux:mint:install|Linux Mint Cinnamon / Mate Install]] 함께 참조할 것.
===== USB ISO 구워서 설치 준비 =====
* [[https://wiki.manjaro.org/index.php?title=Burn_an_ISO_File|Burn an ISO File]]
* Use ''NTFS'' Partition
* Linux에서 USB 굽기
sudo dd bs=4M if=/path/to/manjaro.iso of=/dev/sd[drive letter] status=progress oflag=sync
* ''driver letter'' 는 숫자를 포함하지 않는다. ''/dev/sdb'' 같은 값.
* USB Live 이미지로 부팅하여 설치를 진행한다.
* 거의 자동으로 모든 설정을 해주기 때문에 언어와 시간대(Timezone) 정도만 설정하면 된다.
===== EFI 파티션 =====
* ''FAT32'' 260MB 이상의 파티션을 ''/boot/efi'' 로 마운트하고, ''boot'' 플래그를 지정해야한다.
* 전원 Hibernation 을 사용하고자 한다면 Ram 용량 보다 약간 크게 swap 파티션 생성 필요.
===== package 저장소 변경 =====
* ''pamac-manager'' (소프트웨어 추가/제거) 를 실행하고 환경 설정에서 **공식 저장소** 미러 서버를 **South_Korea**로 변경한다. 혹은 명령 하나만 실행해도 된다. [[linux:arch:pacman|arch pacman]]
sudo pacman-mirrors --country South_Korea && sudo pacman -Syyu
* Enable **AUR**, **Snap**
===== guake 설치 =====
* [[linux:guake|Guake]] 를 설치하고, ''Super+`'' 로 단축키 지정.
sudo pacman -S guake
* Guake 설정에서 **Start at login** 을 설정하여 로그인시 자동 시작되도록 한다.
===== XFCE Whisker Menu 단축키 변경 =====
* [[linux:xfce:shortcuts|XFCE 단축키 Shortcut]] 를 참고 하여 변경하되 가장 먼저 ''xfce4-popup-whiskermenu'' 의 기존 단축키를 삭제하고 ''Super+ESC''로 변경한다.
* 이를 해야 ''Super'' 단축키를 사용하는 다른 기능들이 작동한다.
===== sudo 설정 =====
* [[linux:sudo|sudo]]
* ''/etc/sudoers.d/100-my-no-password'' 파일 생성 후
%wheel ALL=(ALL) NOPASSWD: ALL # 비밀번호 없이
===== 그놈 서비스 시작시 활성화 =====
* **설정 -> 세션 및 및 시동 -> 고급 설정** 에서 **시동할 때 그놈 서비스 시작**을 활성화 한다.
* ''gnome-keyring-daemon'' 이 로그인시에 실행된다.
* google-chrome 이 gnome-keyring 으 사용해서, 필요함. 시동할때 시작하지 않으면 google-chrome 시작시 비밀번호를 입력해야만 하게 된다.
===== ᅟbash 기본 설정 =====
''~/.bashrc''에 다음 추가
set -o vi
export PATH=/home/kwon37xi/.local/bin:$PATH
* [[:git|git]]용 Bash Prompt 설정
===== Input Method installation =====
* [[linux:inputmethod|Input Method (입력기, 한글)]]를 설치한다. ''fcitx'' 혹은 ''nimf''가 나아보인다.
* [[https://wiki.archlinux.org/index.php/Localization/Korean_(%ED%95%9C%EA%B5%AD%EC%96%B4)#%EC%9E%85%EB%A0%A5%EA%B8%B0_%EC%84%A4%EC%A0%95|한국어 지역화 입력기 설정]]
==== nimf ====
* 2019/12/12 build fail. -> fcitx
pamac build nimf
# or
git clone https://aur.archlinux.org/nimf.git
makepkg -si
* ''~/.xprofile''
export GTK_IM_MODULE=nimf
export QT4_IM_MODULE="nimf"
export QT_IM_MODULE=nimf
export XMODIFIERS="@im=nimf"
nimf
* restart X or reboot
* nimf 설정에서 불필요한 언어를 비활성화 처리한다.
* 한국어 설정에서 한국어/시스템 키보드 변환을 ''Shift-Space''와 ''Hangul''로 설정한다.
==== fcitx-hangul ====
* 설치
sudo pacman -Syu fcitx-hangul fcitx-gtk3 fcitx-configtool
* ''~/.xprofile''
export GTK_IM_MODULE=fcitx
export QT_IM_MODULE=fcitx
export XMODIFIERS=@im=fcitx
* 충돌나는 키들 ''DISABLED'' 설정 [[linux:inputmethod|Input Method (입력기, 한글)]] 참고
* 재시작 후 자동으로 fcitx 가 실행되지 않는다면 ''~/.xinitrc''에 ''fcitx &'' 추가. 그냥 XFCE 시작 프로그램으로 등록해도 될 듯.
==== uim ====
* [[https://wiki.archlinux.org/index.php/User:Isaac914/uim|User:Isaac914/uim - ArchWiki]]
* 설치
sudo pacman -Syu uim
* ''~/.xprofile''
## for uim
export GTK_IM_MODULE='uim'
export QT_IM_MODULE='uim'
uim-xim &
export XMODIFIERS='@im=uim'
* 시작 프로그램에 ''uim-toolbar-gtk3-systray'' 등록 # X Window 환경에 따라 변경
* 설치 후 ''uim-pref-gtk3'' (혹은 ''-gtk, qt5'' 등) 를 실행하여 필요 없는 입력기 제거하고 **벼루**를 기본으로 설정 및 한/영 변환키 지정들 수행.
* **벼루** 외의 다른 모든 입력기를 끈다. 여기에는 "직접"도 포함된다(내가 다른 입력기를 안 사용하므로). 그렇지 않으면 입력기 전환 단축키를 누를 때마다 끝글자가 제대로 입력 안되는 현상이 발생했다.
* **전체적인 설정**
* **디폴트 입력기** : **벼루**로 지정
* **입력기 전환** : 끈다
* **입력기 토글** : 끈다
* **전체적인 키 설정1**
* **[전체] 켜기** : 모두 제거
* **[전체] 끄기** : 모두 제거
* **벼루 키 설정 1 -> 한글모드로/영문모드로** 에서 ''space'', ''Hangul'' 둘 다 지정
* **툴바 -> Icon** : ''Use icon for dark background'' - system tray 가 어두운 테마일 경우 체크해줘야 아이콘이 올바르게 보인다.
===== yay 설치 =====
* [[linux:arch:aur|AUR Arch User Repository]]을 편하게 사용하기 위한 ''yay''를 설치한다.
* Manjaro의 **pamac manager**에서도 이미 AUR 통합을 지원해주긴 한다.
pamac build yay
or
git clone https://aur.archlinux.org/yay.git
cd yay
makepkg -si
cd ..
rm -rf yay
===== 한국어 글꼴 설치 =====
* [[https://wiki.archlinux.org/index.php/Fonts#Korean|Arch Linux 한국어 글꼴]]
* ''adobe-source-han-sans-kr-fonts''는 **본고딕**을 의미하는 듯.
* ''ttf-ms-fonts'' 는 MS Windows 를 통해 많은 외국인들이 사용하는 Arial, Times new roman, Courier 등의 글꼴을 설치한다.
* https://github.com/kwon37xi/free-korean-fonts 에서 그 외 글꼴 설치
* 나는 다음과 같이 기본 설치한다.
sudo pacman -S noto-fonts-cjk adobe-source-han-sans-kr-fonts ttf-baekmuk
yay -S aur/spoqa-han-sans \
aur/ttf-d2coding \
aur/ttf-nanum \
aur/ttf-nanumgothic_coding \
aur/ttf-kopub \
aur/ttf-kopubworld \
aur/ttf-unfonts-core-ibx \
aur/ttf-neodgm \
aur/ttf-ms-fonts
* XFCE와 브라우저의 기본 글꼴을 나눔 계열과 Monospace 는 **D2Coding** 위주로 변경한다. Noto Sans Mono 는 알파벳 ''O''와 숫자 ''0'' 구분이 잘 안됨.
* 한글 기본 글꼴 비교
{{ :linux:manjaro:linux_fonts_compare.png |}}
===== QT5 config =====
* ''qt5ct''를 실행하여 동일하게 글꼴과 스타일을 설정해준다.
* ''qtconfig-qt4''는 QT4 용인듯.
===== Firefox 설정 =====
* [[:firefox|Firefox]]
* FF 68현재, Linux/Mac에서 Mouse Gesture 확장기능이 작동하려면 ''ui.context_menus.after_mouseup = true'' 설정 필요.
* 홈페이지를 변경해도 무조건 manjaro.com 이 뜨는 현상 - [[https://forum.manjaro.org/t/firefox-opens-manjaro-org-every-time-i-start-it/54743/13|Firefox opens manjaro.org every time I start it - Technical Issues and Assistance / Applications - Manjaro Linux Forum]]
* ''/usr/lib/firefox/distribution/distribution.ini''에서 아래 항목 삭제하고 원하는 페이지로 환경설정에서 지정
browser.startup.homepage="https://manjaro.org/"
* 2020/02 이후 더이상 아래 안됨. 아래 스크립트로 FF 업데이트 후 변경해줘도 됨. ''about:home'' 대신 다른 값 가능.
sudo sed -i "s|https://manjaro.org/|about:home|1" /usr/lib/firefox/distribution/distribution.ini
===== Google Chrome 설치 =====
yay -S aur/google-chrome
===== Manjaro Settings Manager - 만자로 설정 관리자 및 모니터 설정 =====
* **Manjaro Settings Manager - 만자로 설정 관리자** 를 통해 하드웨어 드라이버등의 통합 설정을 손쉽게 지원한다.
* non-free 그래픽 카드 등의 하드웨어 설정
* 언어 패키지 - 한국어 패키지 설치
* 커널 설치
* 시간/날짜 설정
* [[linux:xrandr|XRandr]] 로 모니터 설정. 이미 설치 돼 있음.
===== GVim Editor 설치 =====
sudo pacman -S gvim
* [[https://gist.github.com/kwon37xi/f8d79278899ae1b5bdf5|my .vimrc]]
===== xfce4-notifyd 설치 =====
* 최신 버전 인스톨러에서는 기본으로 ''xfce4-notifyd''로 해줌. 아래 작업 불필요.
* 기본 설치되는 ''notify-osd''일 경우 알림창에 버튼도 안 나오는등 별로 안 좋기 때문에 [[linux:xfce|XFCE]] notifyd 로 교체한다.
* 패널에 **알림 플러그인**도 설치해서 설정 조정 가능하지만 별로 필요하지는 않음.
sudo pacman -R notify-osd
systemctl --user start xfce4-notifyd
# 설정 조정
xfce4-notifyd-config
===== 듀얼 부팅 일 경우 Windows 파티션 연결 =====
* [[linux:partition|Linux Partition]] 참조.
* 나의 Lenovo Thinkpad E550 Dual Booting 파티션 설정
* ''sudo blkid''로 UUID 확인
/dev/sda4: LABEL="Windows8_OS" UUID="3ED80E52D80E093B" TYPE="ntfs" PARTLABEL="Basic data partition" PARTUUID="c76ee1af-b509-4b2b-90bf-ae912ae38735"
/dev/sdb1: LABEL="DATA" UUID="536BCDA326007C64" TYPE="ntfs" PARTUUID="78000000-01"
* ''/etc/fstab'' 에 다음 추가
UUID=536BCDA326007C64 /mnt/data ntfs-3g defaults,umask=007,fmask=111,gid=46,uid=1000 0 1
UUID=3ED80E52D80E093B /mnt/windows ntfs-3g defaults,umask=007,fmask=111,gid=46,uid=1000 0 1
* 디렉토리 생성
mkdir /mnt/windows
mkdir /mnt/data
* 마운트
sudo mount /mnt/windows
sudo mount /mnt/data
===== 기본 디렉토리 연결 =====
별도 파티션에서 데이터를 저장할 경우에만,
export DATA_HOME=/mnt/data
cd ~
rmdir 공개
ln -s "$DATA_HOME/Public" "공개"
rmdir 다운로드
ln -s "$DATA_HOME/Downloads" "다운로드"
ln -s "$DATA_HOME/Downloads" "Downloads"
rmdir 문서
ln -s "$DATA_HOME/Documents" "문서"
rmdir 비디오
ln -s "$DATA_HOME/Videos" "비디오"
rmdir 사진
ln -s "$DATA_HOME/Pictures" "사진"
rmdir 서식
ln -s "$DATA_HOME/Templates" "서식"
rmdir 음악
ln -s "$DATA_HOME/Music" "음악"
===== Dropbox / Google Drive =====
* [[linux:dropbox|DropBox for Linux]]
* [[linux:googledrive|Google Drive for Linux]]
===== XFCE 설정 =====
* [[linux:xfce|XFCE]]
* [[linux:xfce:shortcuts|XFCE 단축키 Shortcut]]
* [[linux:lightdm|LightDM]]
===== Touchpad 설정 =====
* [[linux:arch:touchpad|Arch Linux Touchpad]] 참고.
* XFCE 설정 메뉴에서
* **스크롤 방향 반전** 을 체크하여 Natural Scroll 설정이 가능하다.
* **누르려면 터치패드를 가볍게 두드림**을 꺼주면 타이핑 중 터치패드 눌림이 없어짐. 단, 두드리기로 클릭 불가.
* 마우스에 대해서는 natural scroll 설정을 하지 말 것.
===== PC Speaker 끄기 =====
* XFCE의 경우 이곳 저곳에서 PC 스피커 삐 Beep 음이 계속 난다면, 끄는게 낫겠다.
* [[linux:pc_speaker|Linux PC Speaker]]
* ''~/.xprofile''
xset -b
===== swappiness 낮추기 =====
* 불필요하게 swap 이 발생하는 것을 막는다.
* [[linux:performance|Linux Performance]]
* ''/etc/sysctl.d/100-majaro-less-swap.conf''
vm.swappiness=10
* reboot
===== grub 부팅 timeout 줄이기 =====
* ''/etc/default/grub'' 에서 ''GRUB_TIMEOUT'' 값 줄이기
GRUB_TIMEOUT=2
* ''sudo update-grub'' 로 적용.
===== SSD TRIM 활성화 =====
* SSD 드라이브를 사용한다면 최적화를 위해 TRIM을 활성화한다.
sudo systemctl enable --now fstrim.timer
===== CPU performance 모드로 변경 =====
* [[linux:cpufreq|Linux CPU Frequency]]
* ''~/.local/bin/cpu_performance.sh''
sudo cpupower -c all frequency-set -g performance
* 시작 프로그램에 등록
===== systemd 에러 확인 =====
# 에러가 났는지 확인
sudo systemctl --failed
# 자세한 메시지 확인
sudo journalctl -p 3 -xb
===== ntpd 설정 =====
* 시간을 자동으로 맞추기 위해 [[linux:시간|Linux 시간]] 을 보고 설정한다.
===== xfce4-screensaver 설정 =====
* 기본으로 스크린세이버가 설치되지 않는데 ''xfce4-screensaver''를 설치해도 된다. 단, [[linux:lightdm|LightDM]]의 ''light-locker''와 lock 화면 충돌이 일어난다.
* 먼저, 시작 프로그램에서 ''light-locker''를 제외시킨다. 프로세스 목록에 ''light-locker''가 있으면 중단시킨다.
* ''xfce4-screensaver'' 를 설치하고 시작프로그램에 잘 등록됐는지 확인한다.
* 참고 : 2020현재 ''xfce4-screensaver''가 lock 화면에서 비밀번호 입력 화면이 안나오는 버그가 있어보임.
sudo pacman -R light-locker
sudo pacman -Syu xfce4-screensaver
===== 개발 환경 설정 =====
* [[:git|git]]
* [[java:jabba|Jabba]]
* [[:sdkman|sdkman]]
* [[node.js:nvm|NVM]]
* [[linux:direnv|direnv]]
* [[:docker|Docker]] - [[docker:install_arch|Docker install on Arch/Manjaro]]
* [[:virtualbox|VirtualBox]] - [[linux:virtualbox|VirtualBox LinuxHost]]
* [[:vagrant|Vagrant]]
===== Troubleshootings =====
* ''ePdfviewer'' 설치. 기본 설치되는 ''qpdfview''는 너무 느렸음.
==== XFCE Error : 이후 다시 발생안함 ====
* Manjaro 18 XFCE 버전의 버그로 보인다. 일정 시점에만 발생하고 이제는 발생하지 않음.
* [[https://forum.manjaro.org/t/failed-to-execute-child-process-no-such-file-or-directory/89736/33|failed to execute child process no such file or directory - Newbie Corner - Manjaro Linux Forum]]
* Error like the following
> Failed to execute child process "/usr/lib/xfce4/exo-1/exo-helper-1 (no such file or directory)
sudo pacman -S xfce4-gtk3
# yes to the following
> thunar-volman-gtk3 and thunar-volman are in conflict. Remove thunar-volman? [y/N]
sudo reboot
==== linux-firmware 특정 버전에서 Intel WiFi Driver 적재 실패 ====
* ''linux-firmware'' 패키지를 업그레이드 한 뒤로 WIFI 모듈이 적재 안되는 현상이 발생했음.
* [[https://bugs.archlinux.org/task/63117|FS#63117 : iwlwifi crash on Intel AC 9620]]
* ''/var/cache/pacman/pkg/''에 있는 ''linux-firmware-20190717.bf13a71-1-any.pkg.tar.xz''로 다운그레이드 하고 재부팅하자 올바로 작동하였음.
* [[https://wiki.archlinux.org/index.php/downgrading_packages|Downgrading packages - ArchWiki]]
sudo pacman -U /var/cache/pacman/pkg/linux-firmware-20190717.bf13a71-1-any.pkg.tar.xz
* ''/etc/pacman.conf''에 ''linux-firmware'' ignore 설정
IgnorePkg = linux-firmware
* 이후 새로운 버전의 ''linux-firmware''가 나오면 테스트해보고 ''IgnorePkg'' 풀어준다.
===== 참조 =====
* [[https://youtu.be/BcDGVcO_tZU|10 Things to do first in Manjaro]]