오랜만입니다.



아마도 대부분 사람들은 이전에 했던 ElementaryOS(http://moordev.tistory.com/189)보다는 이것을 기다리셨을 것으로 생각합니다.


LinuxMint MATE입니다.


사실 LinuxMint는 하모니카(http://hamonikr.org/)의 기반 배포판으로 유명한 버전입니다. 그리고 수준높은 한글화 덕에 리눅스 데스크탑에 많이 유입되었습니다.


하지만 문제는 새로운 버전이 나오지 않고 있습니다. 아무래도 손을 놓은 것이 아닐까 싶습니다. 최소한 게시판이라도 관리해줬으면 좋겠는데...


아쉽지만 없으면 직접 만들면 되겠지요.

어쨌건 시작하겠습니다.


준비물은

1.당연하게도 리눅스 데스크탑이 필요합니다.

2. Customizer(http://moordev.tistory.com/187)

3. LinuxMint MATE ISO

http://ftp.kaist.ac.kr/linuxmint-iso/stable/18.2/linuxmint-18.2-mate-32bit.iso

(32비트 구형 컴퓨터용)


http://ftp.kaist.ac.kr/linuxmint-iso/stable/18.2/linuxmint-18.2-mate-64bit.iso

(64비트 요즘 컴퓨터라면 당연히 이쪽이겠지요. 저도 이것을 쓰겠습니다.)

4. 삽질을 마다하지 않겠다는 굳은 의지

5. 각종 양념(추가할 글꼴이라던가 배경으로 삼을 이미지라던가...)


이번에 커스텀의 목표는 하모니카 기본 테마 버전 같은 수준을 목표로 하겠습니다.


그리고 저번에는 좀 왔다갔다 하는 그런 것이 있었는데 이번에는 터미널 작업이 더 많아 질 예정입니다. 그냥 귀찮아서 터미널 명령으로 때우는 것이 좀 많을 예정입니다.


Customizer를 실행합시다.


이전에도 말씀 드렸듯이 터미널에서

sudo customizer-gui


위 명령으로 실행하면 터미널에 진행 과정이 뜨기 때문에 편리하다고 말씀드렸었지요.

터미널과 함께라면 우린 무서울 것이 없었다

ISO선택 버튼을 누르고 다운로드 받은 LinuxMint 18.2 버전의 ISO 파일을 선택합시다.


그러면 /home에 ISO란 폴더와 FileSystem이란 폴더가 생기면서 ISO파일을 풀어냅니다.


그리고 마찬가지로 세팅 탭에서 위치(로케일이라고 바꾸고 싶네요)에서 ko_KR.UTF8선택


그리고 저장소 주소를 수정해야 하는데 리눅스 민트는 아쉽게도 소스 수정 버튼을 눌러봐야 아무런 소용이 없습니다.


추가 탭에서 파일 시스템 탐색으로 들어가서 저장소를 직접 수정하도록 합시다.

정말 많이 쓰인다 이 버튼

그다음 /home/FileSystem/etc/apt/sources.list.d


이곳으로 들어갑시다. 해당 버튼을 눌렀을 때 뜨는 곳이 /home/FileSystem이므로 etc폴더를 찾아 들어간다음 apt/sources.list.d 순서로 찾아가시면 됩니다.


이놈이 범인이다. 리눅스 민트가 우분투와 다른 몇 가지 중 하나


그러면 official-package-repositories.list 파일이 보이는데 이 녀석이 바로 저장소가 적힌 파일입니다. 이 파일을 텍스트에디터로 열어봅시다.


제일 위에 수동으로 수정하지 말아달라고 써있습니다만 커스텀 하는 중에 소프트웨어 소스를 쓸 수 있을리가 없잖습니까...


그냥 무시하고 수동으로 하겠습니다.




어디서 많이 본 것 같죠? 네 그냥 이전의 ElementaryOS 때의 것을 가져왔습니다.

archive.ubuntu.com 을 ftp.daumkakao.com으로

security.ubuntu.com 을 ftp.daumkakao.com으로 바꿨습니다.


ftp.daumkakao.com 이 마음에 안 드시면 ftp.kaist.ac.kr이나 ftp.neowiz.com도 있습니다.


여기에 한 가지를 더 추가하겠습니다. 바로 리눅스 민트 저장소입니다.

http://packages.linuxmint.com

을 카이스트 서버로 바꾸겠습니다. 카이스트의 리눅스 민트 저장소 주소는

http://ftp.kaist.ac.kr/linuxmint/

이겁니다.


저장하고 텍스트 에디터를 닫도록 합시다.


겸사겸사 파일 매니저를 연 김에 /etc/default/locale과 키보드 레이아웃도 수정하도록 합시다.


/home/FileSystem/etc/default

안에 있는 locale 파일과 keyboard 파일을 수정하겠습니다.





locale 파일은


LANG=ko_KR.UTF8


keyboard 파일은


XKBMODEL="pc105"
XKBLAYOUT="kr"
XKBVARIANT="kr104"
XKBOPTIONS=""
BACKSPACE="guess"


만약 노트북 키보드가 아닌 일반 키보드를 쓰신다면 XKBVARIANT 항목은 비워둬야 한다고 했었죠?


일단 여기까지만 하고 파일 탐색기를 닫읍시다. (나중에 또 열어야 합니다. 한글 입력기 때문에...)


이제 필요한 패키지를 설치하기 위해서 터미널 작업을 시작하겠습니다.


메인 탭의 터미널 버튼을 누릅니다.

그리고 한국어 로케일파일을 생성하기 위해서

locale-gen ko_KR.UTF-8




명령을 내립니다.

로케일 생성이 완료되었다면

그 다음 로케일 세팅을 마무리 짓기 위해


dpkg-reconfigure locales

위 명령을 내립니다.



그리고 이제 update-locale

이제 로케일 설정은 완료하고 (이제 /etc/default/locale 파일이 알아서 해 줄 겁니다.)


혹시 모르니까 /etc/default/locale 파일을 확인해주세요.


LANG=앞에 #이 생기는 경우가 있습니다. 그러면 앞의 #을 다시 지워주셔야 합니다.

keyboard 파일도 마찬가지입니다.


한국어 언어팩을 설치합시다.




패키지를 설치해야 하니 우선 apt-get update


그다음 한국어 언어팩 설치하기 위해서

apt-get install `check-language-support -l ko`


명령을 내립시다.




이 때 고맙게도 추천 패키지에 fcitx가 있어서 fcitx가 동시에 설치가 됩니다. 혹시 모르니 이후에 한 번 더 명령을 내리도록 하지요.


fcitx가 마음에 안 들면

apt-get install --no-install-recommends `check-language-support -l ko`

를 통해서 추천 패키지를 빼면 됩니다. 그리고 다른 한글 입력기를 설치하면 됩니다. 하지만 저는 fcitx를 그대로 쓸 예정입니다.


apt-get fcitx fcitx-hangul fcitx-config-gtk

이미 설치가 되어 있다고 뜨는군요. 좋습니다.


겸사겸사 apt-get upgrade 명령으로 업데이트도 미리 적용해둡시다.


필요한 작업은 다 끝난 것 같고 이제 한글 입력기 설정만 남았군요. elementaryOS때는 파일 시스템 탐색에서 만들었는데 이번에는 터미널에서 한번 만들어보도록 하겠습니다.


nano /etc/skel/.xinputrc


이렇게 하면 터미널에 텍스트 입력기가 딱 뜹니다.


run_im fcitx


이렇게 적읍시다.


Ctrl+O를 누르고 Enter

그리고 Ctrl+X를 눌러서 빠져나오면 /etc/skel폴더에 .xinputrc 파일을 직접 터미널에서 만들어 낸 것입니다.


일명 나노 입력기로 굉장히 메모장스러운 콘솔기반 텍스트 에디터다. 익숙해지면 마우스만 못 쓰는 메모장 취급을 하게 된다.

이걸로 필요한 것은 전부 다 했습니다. 근데 여기서 한 가지만 더 하도록 하지요.


이걸 한번 해보자



하모니카에서는 민트 메뉴의 이름을 윈도스럽게 "시작"이라고 바꿨는데요. 이것을 직접 해보도록 하겠습니다.


터미널은 exit명령을 통해서 빠져나옵시다.

다시 파일 시스템 탐색을 또 사용하도록 합시다.


이번에는

/home/FileSystem/usr/share/glib-2.0/schemas


이곳으로 가도록 합시다. 딱 봤을 때 미쳤다는 느낌이 확 들지 않나요? 여기서 저 시작메뉴를 담당하는 xml 파일을 찾아 수정할 것입니다. 어차피 제가 알려드릴테니 상관은 없습니다.


바로 com.linuxmint.mintmenu.gschema.xml 입니다.


파일명이 많이 헷갈리므로 조심하자


해당 파일을 텍스트 에디터로 열고

applet-text 라는 항목을 찾습니다. 그냥 검색 기능을 쓰면 편하겠지요.


찾았다!


해당 내용을 보시면


    <key type="s" name="applet-text">
      <default>"Menu"</default>
      <summary></summary>
      <description></description>
    </key>


이렇게 쓰여 있는데 눈치 빠르신 분들은 <default></default> 사이에 있는 "Menu"를 "시작"이라고 고치면 되겠다는 것을 아실 겁니다.


그리니까

    <key type="s" name="applet-text">
      <default>"시작"</default>
      <summary></summary>
      <description></description>
    </key>


이렇게 말이지요.


한글 입력이 안 되면 Ctrl+C, Ctrl+V가 있다.



비슷한 방법으로

mint-artwork-common.gschema.override(로그온 화면)과

mint-artwork-mate.gschema.override(데스크탑 배경화면)에서

background 부분을 수정하면 기본 배경 화면을 바꿀 수 있습니다.


정 귀찮으면 저 경로에 있는 파일을 덮어버려도 된다.



하는 김에 이것도 한번 해볼까요?


/home/FileSystem/usr/share/backgrounds


여기에 들어가면 기본 배경 화면이 참 많습니다.

마음에 안 들면 여기다가 더 추가하는 것이지요. 아니면 싹 삭제를 하고 갈아 엎어도 되는데 그랬다간 lightdm의 배경 화면도 설정 해야하는 문제가 생길 수 있으니 그건 참도록 합시다.


여기에 mybackground란 폴더를 하나 만들어봅시다.


이제 여기에 원하는 배경 화면을 한 번 추가한 뒤에 기본 배경화면으로 바꿔보도록 하겠습니다.


제가 쓸 배경 화면은...


이겁니다. 우분투 8.04 기본 배경 화면인데, 제가 굉장히 좋아하는 스타일의 배경 화면입니다.

해상도가 좀 낮다는 느낌이지만 저는 만족하니까요.


mybackground 폴더 안에 해당 이미지를 넣겠습니다.


그리고 아까 찾았던

mint-artwork-common.gschema.override(로그온 화면)과

mint-artwork-mate.gschema.override(데스크탑 배경화면)

이 두 파일에서

'/usr/share/backgrounds/linuxmint/default_background.jpg'

'/usr/share/backgrounds/mybackground/warty-final-ubuntu-7.jpg'

로 싹 물갈이를 합니다.


이제 기본 배경화면도 바꿨습니다. 여기에 필요하면 추가 폰트를 넣거나 다른 패키지를 같이 설치해주시면 되겠습니다.


여기서 부트 옵션을 손대보도록 합시다. LinuxMint는 어찌된 영문인지 우분투에서 사용하는 로케일 선택이 먹히지가 않습니다. 그래서 부트 옵션에 손을 대줘야 한국어 로케일이 잘 먹히더군요.


그동안은 파일 시스템 탐색 버튼을 눌렀지만 이번에는 ISO 탐색 버튼을 이용하겠습니다.


/home/ISO/isolinux/isolinux.cfg

해당 파일을 텍스트 에디터로 열어 봅시다.

아래쪽에


label live
  menu label Start Linux Mint
  kernel /casper/vmlinuz
  append  file=/cdrom/preseed/linuxmint.seed boot=casper initrd=/casper/initrd.lz quiet splash --
menu default
label xforcevesa
  menu label Start in compatibility mode
  kernel /casper/vmlinuz
  append  file=/cdrom/preseed/linuxmint.seed boot=casper xforcevesa nomodeset b43.blacklist=yes initrd=/casper/initrd.lz ramdisk_size=1048576 root=/dev/ram rw noapic noacpi nosplash irqpoll --
label oem
  menu label OEM install (for manufacturers)
  kernel /casper/vmlinuz
  append  file=/cdrom/preseed/linuxmint.seed oem-config/enable=true only-ubiquity boot=casper initrd=/casper/initrd.lz quiet splash --
label check
  menu label Integrity check
  kernel /casper/vmlinuz
  append  boot=casper integrity-check initrd=/casper/initrd.lz quiet splash --
label memtest
  menu label Memory test
  kernel /casper/memtest
label local
  menu label Boot from local drive
  COM32 chain.c32
  APPEND hd0


뭔가 엄청나게 많은 것을 알 수 있습니다. 여기에 부트 옵션을 추가해서


label live
  menu label Start Linux Mint
  kernel /casper/vmlinuz
  append  file=/cdrom/preseed/linuxmint.seed boot=casper initrd=/casper/initrd.lz quiet splash lang=ko_KR.UTF8 --
menu default
label xforcevesa
  menu label Start in compatibility mode
  kernel /casper/vmlinuz
  append  file=/cdrom/preseed/linuxmint.seed boot=casper xforcevesa nomodeset b43.blacklist=yes initrd=/casper/initrd.lz ramdisk_size=1048576 root=/dev/ram rw noapic noacpi nosplash irqpoll lang=ko_KR.UTF8 --
label oem
  menu label OEM install (for manufacturers)
  kernel /casper/vmlinuz
  append  file=/cdrom/preseed/linuxmint.seed oem-config/enable=true only-ubiquity boot=casper initrd=/casper/initrd.lz quiet splash lang=ko_KR.UTF8 --
label check
  menu label Integrity check
  kernel /casper/vmlinuz
  append  boot=casper integrity-check initrd=/casper/initrd.lz quiet splash --
label memtest
  menu label Memory test
  kernel /casper/memtest
label local
  menu label Boot from local drive
  COM32 chain.c32
  APPEND hd0

여기서 빨간색으로 표시한 lang=ko_KR.UTF8 을 추가해줍니다. 사실 /etc/default/locale이 알아서 해주기는 하지만 혹시나 하고 추가하는 것 입니다. 몇몇 라이브 리눅스 도구에서 로케일 설정을 날려버리기도 하더군요.


이제 ISO 다시빌드 버튼을 눌러서 확인을 해봅시다.


다만, 단점이 Customizer가 커널을 지 마음대로 낮춰 버립니다. 아마도 이건 Customizer의 버그로 추측됩니다. 뭐...상관은 없습니다.


이제 테스트를 해봅시다. 테스트는 VirtualBox를 이용했습니다.



한글 입력과 바뀐 배경 화면이 모두 잘 적용되었습니다. 한국어 인터페이스도 잘 뜨는군요.


아쉬운 거라면 커널 버전이 마음대로 4.4로 낮춰졌다는 것인데 4.4가 장기 지원 판임을 감안하면 이해 못 할 것도 없습니다.


만약 우분투 기반의 커스텀 배포판을 만들고 싶다면 이런 식으로 만들면 되는 겁니다! 쉬웠나요? 아니면 어려웠나요? 조금씩 따라한다면 어렵지 않을 것이라고 생각합니다.


여기서 만든 ISO를 배포하기로 했습니다. 우선 그 다음 보충 설명이 있으니 다음 글 제일 아래에 있는 링크를 눌러주시면 되겠습니다.

http://moordev.tistory.com/194

,



블로그 유입 키워드의 대다수가 어째....


다 스타크래프트네요.


이제 리마스터 버전도 나오고 이슈가 되는 것은 당연하다고 생각하고 있지만 어쩌다가 이렇게까지 되어버린 것인지는...


아무튼 뭐 좋은게 좋은거지요 뭐.


스타크래프를 Wine 1.0시절부터 굴렸던 사람으로서 도움이 많이 되어서 기쁘네요.

,

한국어화라는 것은 말 그대로 한국어에 맞게 무언가를 편집해서 만든다는 것을 의미합니다. 보통은 한국어화보다는 한글화라는 표현을 더 많이 쓰지요. 어차피 한글이 한국어를 표현하기 위해서 만들어진 글자이고 의미상으로 틀린 것은 없기 때문에 둘 다 맞다고 할 수 있습니다.


하지만 어쩌다보니 저는 한국어화라는 표현이 더 편해진 탓에 한국어화라는 말을 계속 쓰게되더군요. (그래서 몇몇 페이지에 한국어화라는 표현으로 된 글이 꽤 있습니다. 보통 검색을 잘 못 들어오시더군요.) 그러므로 한국어화란 표현과 한글화란 표현을 혼용해서 쓰더라도 이해해 주시기 바랍니다.




예전에 컴퓨터가 전문가만의 영역이던 시절에는 한글이 그렇게 중요하지 않았습니다. 오로지 한글로 된 문서를 만들기 위한 수준이었고 이외에는 한글 표현에 대해 그렇게 생각을 안 했었지요. 하지만 개나소나 컴퓨터를 사용해야 하고 또 그렇게 만들기 위해 많은 노력이 필요한 21세기 현재, 한국어 인터페이스는 해당 소프트웨어 판매에 영향을 준다고 해도 과언은 아닙니다.


그나마 메시지들이 한글로 나와서 초보자들도 쓸 수있었다고 하는 한글 MS-DOS

일반 최종사용자(End-User) 입장에서 어떻게든 쉽게 사용하기 위해선 모국어로 된 UI가 필요했고 그에 대한 것이 필요했다는 겁니다.


사실 2017년 현재 30대 중반에서 40대까지 컴퓨터 종사자의 말을 들어보면 영어를 알지 못하면 컴퓨터를 쓰는데 지장이 많았고 사전과 컴퓨터 책을 같이 끼고 컴퓨터를 사용했다는 말을 하는 경우가 있습니다. (특히 fdisk같은 걸로 파티션 작업이라도 할려고 하면 어휴...라고 하시더군요.)지금의 컴퓨터 잘한다고 하는 사람들과 이들을 비교하면 진짜 격세지감일지도 모르지요. 그만큼 컴퓨터는 어려운 물건이었고 그렇게 만든 주 이유 중 하나가 바로 한국어 인터페이스의 부재였다고 생각합니다.


사실 윈도우 시대부터는 당연히 한글판 윈도우를 쓰게됐고 또 그렇게 되었기 때문에 잘 모를 수도 있겠지만 DOS 시절에는 한글판이 있었음에도 한글이 배척받기도 했었습니다. 다름아닌 Hbios(위의 스크린샷에서 보이지나요?)등을 통해 한글을 표현했는데 이런 한글 표현을 위한 드라이버가 가뜩이나 확장하기엔 비싼 메모리를 잡아먹었고 당시 컴퓨터를 사용하던 사람들은 이런 메모리조차 아까워했었기에 한글 바이오스를 로드를 막는 등의 방법을 사용했었습니다. 네, 결론은 돈 문제였습니다.


이런 현상들로 인해 당시에는 한국에서 만들었음에도 한글로 된 인터페이스가 없는 프로그램도 많았고 한글로 된 파일 명은 읽지 못하는 등, 문제가 상당히 많았습니다. 하지만 그때까진 한국에서 컴퓨터는 쓰는 사람만 쓰는 물건이었고 그나마 쓰는 사람들은 또 사용하는 프로그램의 호환성 문제로 영문 UI를 선호했기에 그 당시에는 그랬습니다.


그래서 컴퓨터를 사용하던 그 때 그 시절 사람들은 이런 이야기를 하곤 했습니다.


"컴퓨터? 우선 영어부터 배워!"


하지만 2017년 현재 시대는 유니코드시대가 되었고 전세계의 모든 문자를 표현할 수 있게 되었으며 영문UI를 쓰나 한글UI를 쓰나 메모리크기 차이는 거의 없을 정도로 메모리의 크기가 어마어마해졌습니다. 그래서 현재 한국에서 사용되는 컴퓨터의 대다수는 한국어 UI를 가지고 있습니다. 뭘 써도 차이가 없다면 편한게 더 좋은거니까요.


2017년 현재 지금은 영어를 몰라도 컴퓨터를 쓰는데에 크게 지장이 없고 일반적인 업무도 아무런 문제가 없는 수준에 올라왔습니다. 그렇게 때문에 지금은 누구나 컴퓨터를 사용하는데 거리낌이 없습니다. 용어 문제가 걸리기는 하지만 그것만 제외하면 현재 컴퓨터의 상황을 글을 읽음으로서 알아낼 수 있거든요.


역으로 말하면 영문판으로도 아무런 문제없이 쓰는 사람이라고 해도 모국어가 한국어라면 한글판에서 더 편안함을 느낀다는 겁니다. 가끔 번역이 뭐같아서 영문판이 더 나은 경우가 있기는 하지만 그런 몇몇 사례를 제외하면 한글로 써 있는 화면을 볼 때 훨씬 피로가 덜 밀려오는(?)것을 볼 수 있을 겁니다.


그리고 이것은 접근성을 향상 시키는 결과를 가져오게 됩니다. 그러면 이게 곧 프로그램의 경쟁력 강화로 이어지게 되는 것입니다.


멀리 갈 것도 없습니다. 어째서 한국에서는 아래아 한글이 그렇게 많이 쓰일까요? 전세계적으로 워드프로세서는 MS-WORD가 꽉 잡았는데 말이지요.


그건 아래 스크린샷을 직접 보시지요.

한글 2.1 출처는 http://oldpc.tistory.com/19


DOS용으로 나온 MS-WORD 5.5의 스크린샷 출처는 https://winworldpc.com/product/microsoft-word/5x-dos

위쪽은 DOS시절의 한글2.1이고 아래는 MS-WORD 5.5입니다. 보이시나요? 둘 다 마우스는 사용 가능했고 MS-WORD 쪽이 비디오 카드를 좀 구린 것을 써서 색상이 촌스러워서 그렇지 문서 작성하는데 지장이 없는 워드프로세서입니다.


누가 봐도 한글을 택하고 싶지 않나요? MS-WORD의 UI가 구려서 그렇다고요?


그러면 이건요?


출처:http://blog.naver.com/PostView.nhn?blogId=tcfc2349&logNo=220412158623&redirect=Dlog&widgetTypeCall=true


출처 : https://winworldpc.com/product/microsoft-word/95

기능도 비슷하고 UI도 비슷한 버전입니다. MS-WORD 95 (당시 한글판의 번역이 되다 말았음)와 한글96입니다. 어떤 것을 쓰시고 싶은가요?


당연히 한글로 된 프로그램을 쓰고 싶겠지요. MS-WORD는 한글보다 못하지도 않지만, 당시의 접근성이 워낙 좋았기 때문에 MS-WORD가 한글에게 시장에서 밀려버린 것입니다. 그리고 MS-WORD가 한국어로 나오는 이 시점에도 이런저런 상대적인 장점이 부각되어서 한글의 위세는 당당하지요. (요즘은 꼭 그렇지만도 않은 것 같긴 합니다만...)


결국 프로그램의 한국어화는 한국에 살고 있는 이상 자신이 편리하게 하기 위해, 그리고 쓰고 싶기 위해서 필요한 것입니다. 누구나 쉽게 쓰기 위해서 쓰는데 겁먹지 않기 위해서 그런 것이란 의미입니다.


전자 제품을 더럽게 못쓰는 사람들이 몰려 있는 곳이 아이러니하게도 바로 구글 플레이 스토어의 리뷰란 입니다. 이곳의 리뷰란을 보다보면 바보들의 행진인 경우가 많은데


"영어라서 1점 깎았습니다."

"영알못이라 무슨말인지 모르겠어요."

"어떻게 쓰라는거야"

"프로그램이 꺼지지 않아요. 무슨 메시지가 뜨는데 작동하지 않아요."


라고 쓰여있는 약간은 한심한 내용이 많이 있습니다. 하지만 역으로 말하면 이런 사람도 스마트폰을 쓸 수 있을 정도로 스마트폰의 시스템 자체가 한국어로 잘 만들어져 있다고 볼 수도 있습니다. 그러니까 영어를 몰라도 스마트폰을 쓸 수 있다는 의미입니다. 저런 영어로 나오는 앱만 아니면 말이지요.


바보들 이야기가 나와서 말인데 무언가를 설계할 때에는 Fool Prrof 라고 하는 것을 고려해야합니다. 이것이 무엇이냐면, 바보도 쓸 수 있게 해야한다. 라는 의미입니다.


대표적인 것이 아래 사진인데 우주왕복선을 싣고 이동하는 화물기의 사진입니다.


여기에는 재미있게도 이런 내용이 쓰여져 있습니다.

"우주왕복선을 여기에 붙이시오. 주의 : 검은색이 아래임"


"설마 우주왕복선 같은 것을 만드는 그런 놈들이 우주왕복선의 위 아래도 구분 못 할까봐?" 라고 생각하신다면 "세상은 넓고 바보는 많다." 라는 것을 잊지 마세요.


당연히 저 문구는 농담일 가능성이 다분하지만 그만큼 "최종 사용자들은 바보다."라는 생각으로 물건을 만들어야 한다는 의미입니다.


즉, 21세기 현재는 바보들도 컴퓨터를 쓸 줄 아는 시대이기에 프로그램을 만들 때에 이것을 바보들이 사용한다고 가정을 해야합니다. 여기의 바보에는 당연히 영알못도 포함되고 기본적인 용어도 헷갈리는 바보도 고려해야 합니다.


이런 한국의 바보들에게 프로그램을 팔려면 당연히 한국어화가 필요하겠지요. 게다가 용어 번역도 어느정도 해 놓아야 합니다. 한번 파일(이건 딱히 대체 단어가 없습니다.)메뉴를 열었는데 "세이브", "로드", "엑시트" 이렇게 적혀져 있다고 해봅시다. 참 편하고 좋겠네요. 이건 바보가 아니라고 해도 어리둥절 하겠지요? 이쪽은 만든 쪽이 바보라고 할 수 있겠습니다. (의외로 상용 프로그램 중에서 볼 수 있습니다. 한국이 아닌 다른 나라에서 번역 한 경우 그렇습니다.)



결론을 말하자면 프로그램의 한국어화는 사람들의 접근성을 위해서 하는 것이고 바보도 쓸 수 있을 정도로 편하게 쓰게 하기 위해서 필요한 것입니다.


그런 의미에서 프로그램들의 한국어화는 모두를 위해 필요하다고 생각합니다. 만약 언어 쪽에 자신이 있으신 분들은 해당 프로그램 제작자에게 한번 번역을 위한 기술지원 요청을 해보세요. 싫어 하는 사람은 아무도 없을 것입니다.


2017년 7월 현재 UKUI와 CDemu의 한국어 번역이 소스 트리에 등록되어 제 이름이 박혀 있는 기분 좋은 순간입니다. (다음에는 Playonlinux를 해야겠습니다.)

,

https://www.stanleyparable.com/


Stanley Parable은 굉장히 실험적이고 신기한 게임입니다. 그리고 3대 OS를 다 지원합니다. 사실은 Portal2의 리소스와 코드를 활용했다고 하지요. 그래서 Portal2가 제대로 안 되면 얘도 제대로 안 돌아갑니다.


자세한 게임 내용은 굳이 말 안 하는게 좋은 게임이고 어쨌건 해당 게임의 데모버전으로 구동이 가능한지 테스트를 잠깐 해보았습니다.


.....안 되네요. 스팀이 따로 반응이 없더군요. 그래서 스팀을 따로 실행한 상태로 직접 ~/.steam/steam/steamapps/The Stanley Parable Demo (데모의 경우)

~/.steam/steam/steamapps/The Stanley Parable (정식판의 경우)

이곳으로 직접 들어가서 터미널로 ./stanley_linux 명령으로 실행했더니


그럼 그렇지 싶습니다.


libtcmalloc_minimal.so.4 파일이 없다고 합니다. 사실 이건 모든 소스 엔진 게임에 적용되는 사항이라고 합니다.

https://askubuntu.com/questions/902821/error-while-loading-shared-libraries-libtcmalloc-minimal-so-4


스팀설치하면서 왜 이걸 빼 먹었나 싶지만 어쨌건 필요한 패키지를 설치하면 되는 거겠지요.


sudo apt install libtcmalloc-minimal4:i386


그랬더니 추가 에러가 나옵니다.



이 무슨... 그냥 구글에 넣고 검색했더니 libstdc++.so.6 파일 문제라고 합니다.

~/.steam/steam/steamapps/common/The Stanley Parable Demo/bin


여기 있는 libstdc++.so.6파일의 이름을 바꾸라고 합니다. 아에 읽지 못하게 삭제를 하던지요.


그냥 뒤에 bak을 붙이던지 하면 되겠지요.


mv .steam/steam/steamapps/common/The Stanley Parable Demo/bin/libstdc++.so.6

.steam/steam/steamapps/common/The Stanley Parable Demo/bin/libstdc++.so.6.bak


(데모의 경우)


mv .steam/steam/steamapps/common/The Stanley Parable/bin/libstdc++.so.6

.steam/steam/steamapps/common/The Stanley Parable/bin/libstdc++.so.6.bak


(정식판의 경우)


이런 명령을 줘서 바꾸던지 아님 그냥 직접 파일 매니저로 갈아치우던지 하면 되겠습니다.


아차 Stanley Parable의 경우에는 폰트 문제가 있어서 한글패치를 하고 하시려면

basemodui_scheme.res

파일을 수정해야 합니다.


한글패치는 http://hellostrangers.tistory.com/81

여기서 구할 수 있습니다. 이 안에 있는 basemodui_scheme.res 파일을 수정해야 한다는 의미지요.


기본 폰트는 League Gothic Regular 라는 폰트인데 이것이 한글이 전혀 없습니다. 스탠리 패러블에는 어울리는 폰트일지언정 보이지 않는 다면 쓰레기겠지요.


http://steamcommunity.com/app/221910/discussions/0/792924952392503442/?l=koreana


그냥 귀찮으니까

League Gothic Regular

NanumGothic

으로 갈아치웁시다.


그러면 나눔고딕으로 싹 바뀌어서 뜨겠지요. 좀 거시기 하기는 하지만 마음먹으면 Noto Sans도 쓸 수 있고 그냥 Gulim으로 적어서 바보같이 만들 수도 있을 겁니다.


음.. 이제 한글로 잘 뜨는군요. 모양은 좀 거시기 하지만...


그럼 Portal2는 어떨까요?


우리는 Stanley Parable을 위해 라이브러리를 설치하고 파일을 수정했는데요. 비슷한 방법으로 만약 실행이 안 된다면 libstc++.so 파일을 손을 대면 문제 없이 실행됩니다. 단 한글 폰트는 ttf-wqy-zenhei 패키지를 설치해 주셔야 제대로 실행이 됩니다.


뭐... 이것은 굳이 따로 안 해도 잘 되겠네요.

,


지난번에는 나만의 배포판을 만들기 위해 Customizer를 설치했었습니다.

참고 :http://moordev.tistory.com/187


이번에는 이것을 이용해서 우분투 기반의 배포판에 한글입력기를 설치하고 일부 패키지를 설치하는 식으로 조금씩 커스터마이징을 해보도록 하겠습니다.


그래서 이번에 해볼 배포판은 바로 위에 나와있는 ElementaryOS입니다. (https://elementary.io/)


굉장히 예쁘고 Mac스럽기 때문에 익숙함에서 오는 묘한 편리함이 있습니다. 하모니카에서도 Plank+Numix버전이 바로 ElementaryOS의 데스크탑인 Phanteon을 설치한 물건이었습니다.


ElementaryOS는 0.3 freya까지는 한국어 언어팩 설치가 힘들었지만 0.4 loki부터는 처음부터 한국어 언어팩을 내장하는 등 굉장히 편리해 졌습니다. 실제로 어렵지 않더군요.


그럼 시작해 보겠습니다.


우선 ElementaryOS의 ISO를 다운로드 받아야겠지요?

https://elementary.io/ko/


구입이라고 써있어서 새삼 놀라지는 마세요. 구입가격은 0부터 시작할 수 있습니다. 그러니까 0을 적고 elementaryOS다운로드 버튼을 누르셔도 된다는 의미입니다.

얼마를 적던지 상관이 없다. 그저 0이상의 정수를 적기만 하면 된다. 가벼운 마음으로 0달러를 적어도 되고 진짜 마음에 든다면 100달러를 투척해도 상관없다는 의미다.

ISO의 다운로드가 완료되었다면 이제 customizer를 실행할 차례입니다.


터미널을 열고 아래와 같은 명령을 내리세요.


sudo customzier-gui


이렇게 해주시면 터미널에 진행 상황이 뜨고 문제가 생겼을 때 메시지를 확인 할 수 있어서 편리합니다.


ISO선택 버튼이 보이실 겁니다. 저것을 누르고 아까 다운로드 받은 ElementaryOS의 ISO이미지 파일을 선택하시면 터미널에 ISO의 압축풀기 및 일부 뼈대파일 구축을 위한 준비를 해줍니다. ISO압축해제 데이터의 경로는 /home/FileSystem이고 ISO부팅을 위한 뼈대파일은 /home/ISO입니다. 세팅 탭에서 이것은 바꿀 수 있습니다만 저는 기본 상태 그대로 사용하겠습니다.


압축이 풀리는 중... 만약 터미널을 같이 안 띄웠으면 얼마나 진행되었는지 알 수가 없어서 답답했을 것이다.

커스터마이징 작업이 준비가 되었다면 제일 먼저 하는 일은 세팅탭에서 chroot의 국가및 언어설정을 한국어로 설정하는 것입니다.


위치라고 되어있는데 아마도 Locale의 번역을 그냥 이렇게 한 것 같다. 국가 설정? 이런 것이 낫지 않았을까.

사실 이것은 배포판의 기본 Locale 설정과 아무 관계가 없지만 이후 터미널 작업시 그나마 한국어로 작업하는 것이 좋기 때문에 하는 것입니다. 만약 귀찮다면 이 부분은 넘어가도 좋습니다.


다시 메인 탭으로 넘어와서 소스 수정 버튼을 눌러봅시다. 여기서 소스는 저장소의 소스를 말합니다. 즉, 저장소의 서버 주소를 말하는 것이지요. 배포판에 따라선 여기서 수정할 수 없고 추가 탭의 파일시스템 탐색으로 들어가 /home/FileSystem/etc/default/apt/source.list.d/안에 있는 파일을 수정해야 할 수도 있습니다. (리눅스 민트가 대표적)


다행히 ElementaryOS는 우분투와 동일하게 source.list 파일에 저장소를 적어두었습니다.


주소들이 대부분 http://archive.ubuntu.com/ubuntu 이군요. 여긴 공식저장소 서버로 여기서 패키지를 받아오려면 한참이 걸립니다. 따라서 여기를 한국서버로 바꾸겠습니다.


일반적인 방법으로는 archive.ubuntu.com을 kr.archive.ubuntu.com으로 바꾸고 security.ubuntu.com은 그대로 두는 방법이 있습니다.


지에디트(gedit - 그놈의 기본 텍스트 에디터)나 Pluma(MATE계열 기본 텍스트 에디터)를 기준으로 검색-바꾸기를 누르신다음


이렇게 해주시고 모두 바꾸기를 누르시면 됩니다. 일반적인 방식입니다.


또 다른 방법으로는 그냥 아는 주소로 갈아치우는 방법입니다. ftp.daumkakao.com 이 국내 2위의 포털답게 굉장히 속도가 빠른데요. 그냥 이걸로 갈아치우면 패키지 받아오는 속도가 정말 빠릅니다. 


저는 아래의 방식을 추천합니다. 빠른 버전업도 중요하지만 업데이트 작업 속도가 빠른 것도 중요하거든요.


이제 저장 버튼을 누르고 잠시 기다리면 Customzier 창이 정상으로 돌아올 것입니다. 이제 다음 작업은 기본 국가 설정을 한국으로 하는 것입니다.

우선은 파일조작이니 추가 탭에서 파일시스템 탐색 버튼을 누릅시다.

Customizer에서 터미널과 함께 자주 쓰는 버튼


그러면 관리자 권한으로 /home/FileSystem으로 된 파일 매니저가 실행이 될 겁니다.


여기서 etc/default폴더로 들어가면 locale이란 파일과 keyboard 파일이 있습니다. 파일명을 보시면 이 두 파일이 국가설정과 키보드 배치에 관여하는 파일이라는 사실을 눈치 챌 수 있을 겁니다.


이번에 수정 되어주실 두 분



우선 locale파일을 열면 아무것도 적혀있지 않거나 영어로 되어있을 것입니다.

그것을 이렇게 바꿉시다.


우선 locale파일

LANG=ko_KR.UTF-8

이렇게 적어주시면 됩니다.


그리고 keyboard 파일은 이렇게


XKBMODEL="pc105"
XKBLAYOUT="kr"
XKBVARIANT="kr104"
XKBOPTIONS=""

BACKSPACE="guess"


여기서 한 가지 알아두셔야 할 것이 있는데요. XKBVARIANT="kr104"은 노트북 용으로 오른쪽 Alt키를 한/영키를 대신할 때 사용합니다. 따라서 일반 키보드 사용자 분들은 XKBVARIANT="" 이렇게 지워주셔야 합니다.


그리고 이왕 하는 김에 시간대도 설정하지요. /home/FileSystem/etc에 있는 timezone이란 파일을 열면 etc/UTC라고 써있을 것입니다.

Asia/Seoul로 고쳐주시면 됩니다.




일단 큰 작업은 끝났고 터미널로 돌아가기 위해서 파일 매니저를 닫읍시다.

그러면 비활성화 상태였던 customzer에 생기가 돌아옵니다. 이제 메인 탭으로 가서 터미널 버튼을 누르도록 합시다. (사실 마음먹고 하면 터미널의 nano나 vi 만으로도 작업이 가능하지만 일단 쉽게 하기 위해서 파일매니저를 통한 작업을 먼저 했습니다.)


먼저 수정된 저장소로부터 패키지 목록을 받아올 것입니다. 왜냐하면 한글 입력기와 몇 가지 언어팩을 설치 해야하니까요.


앞에 sudo를 안 써도 되는데 습관이다.

apt-get update


정상적으로 소스 수정을 했다면 아무 문제 없이 패키지 목록을 받아올 것입니다.


우분투나 쿠분투, 루분투의 경우에는 이 단계에서 한글 언어팩을 설치하는데 elementaryOS의 경우에는 이미 다 설치 되어 있어서 바로 다음 작업으로 넘어갈 수 있었습니다.


사실 한글 언어팩을 설치하는 명령은

apt-get install `check-language-support -l ko`


이겁니다. 그런데 elementaryOS는 필요한 언어 팩은 다 설치가 되었기 때문에 아무 반응이 없습니다. 좋은 것입니다. 다음 Target에서는 분명히 저 명령을 쓸 일이 생기겠지요.


그 다음 다시 한번 국가 설정을 하도록 합시다. 사실 안 해도 문제는 없을 것 같은데 혹시 몰라서 한 번 더 하는 것입니다.


dpkg-reconfigure locales


여기서 ko_KR.UTF-8를 찾아 열심히 선택하시고 Space bar를 누른 다음(그럼 별표가 생길 겁니다.) Tab키를 눌러서 확인 버튼을 누른다음 기본 로케일을 ko_KR.UTF-8을 선택하고 다시 Tab키를 눌러서 확인에 enter를 누르시면 됩니다.


그러면 로케일을 생성한다면서 어쩌고 저쩌고 한참 걸리는데 보통의 우분투는 영문 기본(en_GB.UTF-8)과 ko_KR.UTF-8만 나오는데 elementaryOS는 그냥 로케일을 다 때려넣었더군요. 그냥 배포판 특징이라고 생각합시다. 말 그대로 초보자용 OS니까요.


이걸로 힘들었던 국가설정은 끝났습니다. 이제 한글 입력기를 설치합시다.


저는 한글 입력기로 fcitx를 사용하겠습니다. fcitx가 설정이 편하거든요. 기본 한국어 설정도 좋고요. 만약 uim을 원하시는 분이 계신다면...직접 한번 해보시는 것을 추천합니다.


fcitx를 설치합시다.

apt-get install fcitx fcitx-hangul

이제 뭔가가 주루룩 설치되겠지요? 아까 국가 설정을 해놓았기 때문에 알아서 한국어 설정까지 끝내버립니다. 그래서 제가 편하다고 하는겁니다. 국가 설정을 보고 알아서 입력기 설정을 해버리거든요.

뭔가 이것저것 많이 설치하는 중...



이제 한글 입력기도 설치가 끝났으니 다른 것을 하나 더 해볼까요?


elementaryOS는 기본 웹브라우저로 Epiphany라는 물건을 씁니다. 그런데 이게 뭔지 아시나요?


사실 그놈 데스크탑의 기본 웹브라우저인데 Firefox나 Chrome같은 워낙 대단한 물건들이 많다보니 상대적으로 묻힌 비운의 브라우저입니다. 비슷한 처지인 Konquerer(KDE의 기본 브라우저이자 파일 매니저)는 그나마 KDE를 쓴다면 다용도로 쓸 수 있어서 그나마 쓰이지만 Epiphany는 아쉽게도 확장성은 Firefox에 밀리고 성능은 Chrome에 밀리며 가벼움은 midori에 밀리는 아무튼 그런 물건입니다.


제 생각에 그냥 Epiphany따윈 지워버리고 Firefox를 설치하는게 좋을 것 같습니다. 그럼 이 부분도 마저 작업을 하도록 합시다.


apt-get remove epiphany-browser

apt-get install firefox

apt-get autoremove


일단 여기까지 하시면 firefox를 설치할 수 있는데 여기서 한 가지 더 해주셔야 합니다. Firefox의 한글 언어팩을 설치 안 했거든요.


apt-get install `check-language-support -l ko`


이렇게 하면 firefox의 한글 언어팩도 마저 설치됩니다.


여기서 필요하면 Flash도 설치할 수 있겠지만 2017년이 된 지금 Flash는 필수가 아닌 선택이 되어 버렸으니 이쪽은 넘어가도록 하겠습니다. 사실 adobe가 Flash지원을 다시 하기는 헀지만 Chrome의 pepper와 비교해서 어떤게 나을지는 알 수가 없기도 하고 요즘 웹에서 Flash가 이젠 딱히 필요 없기도 해서 그냥 안 하기로 했습니다.


굳이 하시겠다면


apt-get install flashplugin-installer


이렇게 하시면 됩니다.



이제 터미널에서 나와야겠지요. 터미널 창은 그냥 닫지 마시고


exit


명령으로 나와주셔야 합니다. 그래야 chroot가 무사히 풀립니다. 안 그러면 꼬입니다.


이제 다 되었을까요? 아니요.

하나 더 남았습니다. 우린 아까 한글입력기인 fcitx를 설치했지만 이것을 입력기로 사용한다는 설정을 하지 않았습니다. 그리고 elementaryOS는 Plank라는 Dock을 사용하는데 Dock에 Firefox도 등록하지 않았습니다. 이 두 작업을 마저 하도록 합시다.


이제 남은 작업은 USER MODE SETTING 즉, home/유저명 폴더 안에 있는 세팅을 미리 하는 작업입니다. 해당 작업은 /etc/skel 안에 있지요.(skel은 skeleton의 줄임말입니다.)


customizer의 추가 탭에 들어가서 다시 파일시스템 탐색 버튼을 누르도록 합시다. /etc/skel 파일내를 파일매니저를 통해 수정할 생각이거든요.



Customizer에서 터미널과 함께 자주 쓰는 버튼


사실 터미널을 닫아다가 열었다가 하는 것이 귀찮으신 분들은 관리자 권한으로 따로 파일 매니저를 열어서 작업하기도 합니다. 하지만 편한게 편한거라고 이런 식으로 왔다갔다 하는 편이 동시 작업 할 일이 없어서 더 안전합니다.


/home/FileSystem/etc/skel 순으로 들어가 봅시다.


아무것도 안 보일 텐데요. 숨김파일을 보이게 하면 될 겁니다.


.xinputrc 파일은 내가 미리 만든거다. 오해하지 말자. 없으면 만들면 되는거다.

안 보였던 파일과 폴더가 보일겁니다. elementaryOS가 아닌 다른 배포판의 경우에는 이것조차 없는 경우가 있는데 그러면 만들면 됩니다.


우선 한글 입력기 설정을 위해서 .xinputrc란 파일을 하나 만듭시다.


그리고 안의 내용은


run_im fcitx


이렇게 적으시면 됩니다. 이제 한글 입력기 설정도 끝났습니다.


이제 Plank설정을 하러가 볼까요?


여기 보시면 .config이란 폴더가 하나 보입니다. 누가봐도 설정파일이 들어있는 폴더란 느낌이 다분하죠?


여러분이 사용하시는 리눅스 데스크탑에는 .config 폴더안에 어마어마하게 많은 것이 있을 것입니다. 여기서는 그냥 plank 하나만 있군요. 안에 폴더가 계속 나오는데


/home/FileSystem/etc/skel/.config/plank/dock1/launchers


그냥 여기로 갑시다.


dockitem이란 파일이 많군요. 여기서 epiphani.dockitem이란 파일이 하나 있는 것을 알 수 있습니다.


우린 아까 Epiphany따윈 필요없다고 그냥 날려버리고 Firefox를 설치했지요. 그러니까 epiphany대신 firefox로 바꾸도록 합시다.


일단 epiphany.dockitem 파일은 이제 필요없으니 지워버립시다.

그리고 새로 firefox.dockitem이란 파일을 하나 만듭시다.


그리고 그 내용은


[PlankDockItemPreferences]
Launcher=file:///usr/share/applications/firefox.desktop


이렇게 적으시면 됩니다.

이게 무슨 뜻인지 궁금하시다면  /usr/share/applications란 폴더에 들어가면 엄청난 수의 desktop파일이 있는데 이것이 바로 우리가 메뉴에서 보던 그 아이콘들입니다. 바로 해당 Dock의 아이템은 아 아이콘인 것이다. 라는 의미입니다. 맘먹고 하면 다른 것도 만들 수 있겠지요.


여기까지 왔으니 추가 폰트를 미리 넣는 것도 한번 해볼까요?


저장소에서 설치 지원이 되는 폰트면 아까 터미널에서 작업을 미리 할 수 있었겠지만 만약 그렇지 못한 폰트라면 수동으로 넣어줘야 합니다.


customizer로 실행된 파일 매니저로

/home/FileSystem/usr/share/fonts

여기로 들어가 봅시다.


여기에 보시면 X11, truetype, opentype 등등 많은데요. 여기서 보통은 TTF파일을 많이 사용할테니 truetype 폴더에 들어가봅시다. 그러면 여기에도 뭔가 많이 있습니다.


여기서 폴더별로 정리해서 사용하고 있다는 것을 알 수 있는데 여기에 우리만의 특별한 폰트들을 넣어보도록 하지요.


여기에 폴더를 하나 만들어봅시다. 이름은... MY FONTS 정도가 괜찮겠군요.


그리고 이 안에 그냥 추가하고 싶은 폰트들을 넣으면 되는 겁니다. 저 같은 경우에는 서울 서체(http://www.seoul.go.kr/v2012/seoul/symbol/font.html)와 가짜굴림(http://moordev.tistory.com/176)

을 넣었습니다. 서울 서체는 윈도우용 수동설치 파일을 다운로드 받았습니다.


그냥 이렇게 드래그해서 밀어넣으면 폰트추가 끝

이 외에도 이것저것 넣고 싶은게 많으면 그냥 다 넣으시면 됩니다.


이제 대망의 ISO 제작의 시간입니다.


파일 매니저를 닫고 ISO 다시 빌드 버튼을 누릅시다.


빌드중... 시간이 꽤 걸린다.

짜잔! 이제 완성되었습니다! 테스트 해봐야지요!

QEMU버튼을 누르면 QEMU로 테스트를 할 수 있습니다.


물론...시스템에 따라..

이 따위로 패닉이 날 수도 있는데 Qemu의 잘못이지 여러분의 잘못은 아닙니다. 이런경우에는 Qemu대신 Virtualbox를 사용하는 것을 추천합니다.


Virtualbox에 대한 자세한 내용은 넘어가도록 하고 Virtualbox에서 테스트를 해봤습니다. 최종적으로 만들어진 ISO는 /home 폴더에 있습니다. Virtualbox에서 가상머신에 넣을 이미지를 해당 ISO로 하시면 됩니다.



처음 써보는 물건이라 걸리는 것이 있기는 하지만 한글 출력과 한글 입력이 되기는 되는군요. fcitx가 약간 버그가 있는 것인지 조금은 특이하게 입력이 되는 것 같지만 일단 아무 문제 없이 입력이 되기는 합니다.


그리고 Epiphany를 대신해서 설치한 Firefox도 아무 문제 없이 한국어로 잘 실행되는군요.


참고로 sha1 sha256 md5가 모두 계산되어서 있으니 나중에 배포하실 때 같이 첨부해서 배포해주세요.


해당 ISO를 공유합니다.


https://drive.google.com/open?id=0B575ztEFv5-UdXJmb0NtOEpRVEU


MD5 :1fa3d2c692e3f3f6a735f13918c50535

SHA256 : 198b68cb4e1d1fb35ed2136aa16dfb451e18ff62e1b0e8a2b6b295f1b41e8cc8

SHA1 : ec7382f2744f2f02d0efb8e494eac35580e36412

커스텀 된 것은 위에서 한 그대로이므로 그냥 Elementary OS에 한글 입력기를 끼얹고 한글폰트를 추가 한 후 Firefox를 설치했다... 정도입니다.

,


가끔.. 아주 가끔이지만 우분투 계열 사용자 중에서 시스템종료할 때마다 위의 화면과 같은 메시지를 띄우면서 종료가 늘어진다고 호소하는 사람이 많습니다.



이 물건은  Assistive Technology Service Provider Interface라고 그놈에서 사용하는 패키지 중 하나입니다. UI경험을 도와주는 역할을 한다고 합니다. 하지만 UI경험을 도와주기는 커녕 UI 경험을 까먹고 있지요.


그렇다면 이딴 패키지는 필요 없습니다. 그냥 없애버리는 것이 정답입니다. 하지만 이 패키지는 그놈 데스크탑과 관련이 깊기 때문에 쉽게 해제해서는 안됩니다. 그냥 패키지는 냅두고 프로그램이 돌아가지 않게만 하는 것이 낫습니다.


그러니까 저 at-spi 대몬을 이름을 바꿔서 작동 안 하게 하는 것입니다.


sudo mv /usr/lib/at-spi2-core/at-spi-bus-launcher /usr/lib/at-spi2-core/at-spi-bus-launcher.old

sudo mv /usr/lib/at-spi2-core/at-spi2-registryd /usr/lib/at-spi2-core/at-spi2-registryd.old


이렇게 하면 저 메시지가 괴롭히는 일이 없어질 것입니다.

,


예전에 이런 글을 올린적이 있었지요. UCK vs U-customzier http://moordev.tistory.com/42


UCK라는 도구와 U-Customizer란 도구였습니다.


그중 UCK는 우분투 공식 커스터마이징 도구였고 사용은 편하지만 조금 자세한 커스터마이징은 힘들었다고 했었지요.


U-Customizer란 도구는 chroot를 사용해서 굉장히 다양한 커스터마이징이 가능한 도구지만 그만큼 초보자에겐 고역인 물건이라고 소개를 해었습니다. 특히 GUI로 Gambas를 이용했는데 이놈의 설치가 문제가 많아서 특히나 고역이었습니다.


하지만 시간은 흐르고 흘러서 새로운 소스로 U-Customizer(이후 Customizer로 통일하겠습니다.)가 새로 나오게 되었습니다.


Github주소도 바뀌었습니다. 이전의 gambas기반의 소스는 따로 보관하고 PyQT를 기반으로 새로운 GUI를 만들었습니다. 덕분에 반응 속도가 좋아졌습니다.


https://github.com/kamilion/customizer


다만 아쉬운 것이 있다면 PPA를 운영하거나 바이너리를 제공했으면 하는데 예나 지금이나 소스만 내주더군요. 게다가 github의 마스터브랜치의 소스는 말이좋아 마스터 브랜치지 지뢰밭입니다. 버그가 여기저기 산개해 있습니다. 차라리 최신버전의 우분투를 커스터마이징 하지 않는다면 Release페이지(https://github.com/kamilion/customizer/releases)의 소스를 사용하는 것을 추천합니다.


여기서 zip으로 다운로드 받던지 tar.gz로 다운받던지 마음대로 하자. 어쨌건 둘 다 압축 푸는 것은 문제 없다.



만약 자신만의 우분투를 만들기 위해 Customzier에 입문하시는 분들이라면 소스코드를 보자마자 난감해 하실 겁니다. 그도 그럴것이 요구하는 패키지에 대해 설명을 안 해 놓았더군요.


sudo apt-get install git build-essential fakeroot make binutils g++ \
python python-dev python-qt4 pyqt4-dev-tools squashfs-tools \
xorriso x11-xserver-utils xserver-xephyr qemu-kvm dpkg-dev \
debhelper qt4-dev-tools qt4-linguist-tools

이겁니다. 사실 Customizer는 python3와 QT5를 이용해서 새로 만들고 있기 때문에 위의 패키지 중에서 pyqt4와 python2.7을 대신하려고 하고 있습니다. 하지만 2017년 7월 기준으로 마스터 브랜치가 아직 문제가 많습니다. Python3와 QT5를 이용해서 컴파일 했는데 (소스 루트에 있는 Makefile을 수정하면 됩니다.) ISO를 도로 묶는 것이 안 되거나 chroot가 안 되면서 파일 시스템을 꼬아버리는 문제가 있습니다. 그런데 그게 같은 상황에서 일어나면 이해하겠는데 가끔 그런 일이 일어나니 그게 더 머리 아플 지경입니다. 버그 리포팅을 하고 싶어도 언제 그런 일이 벌어지는지 설명을 할 수가 없어요. 버그 상황 재현이 안 된다고 할까요.


그래서 2017년 7월 현재 아직은 Python2.7과 QT4를 기반으로 한 버전을 사용하겠습니다.


이제 설치를 어떻게 할까요? Installer.py를 실행하면 될까요? 이것을 써도 되는데 우리는 바로 DEB을 만들어서 설치를 하도록 합시다.


터미널 작업 당연히 들어갑니다. Customzer로 chroot 작업하는 것도 순전 터미널 삽질이니 터미널에는 친해져야 합니다. 더군다나 소스 컴파일이라 터미널이 어쩔 수가 없더군요. (훗날 누군가가 제대로 된 GUI 도구를 만들어 줬으면 합니다. 그런데 이놈의 make 옵션 들 때문에...)


cd 소스압축 푼 곳

make deb


끝입니다.


이러면 소스코드가 있던 곳 상위 폴더에 (그러니까 소스 코드를 ~/SRC/Customizer에 풀었다면 ~/SRC 여기)에 DEB 파일이 하나 생성 됩니다. 우리는 우분투를 쓰고 있고 DEB파일이 있다?

그냥 설치하면 그만이겠지요. Gdebi나 소프트웨어 센터나 dpkg나 아무거나 쓰고 싶은거 쓰세요.


그러면 메뉴에 Customizer라고 생기는데...


이거 문제 많습니다. 사실 chroot를 사용해야 하기 때문에 관리자 권한이 필요하고 GUI에는 진행 상황이 제대로 뜨지 않기 때문에 굉장히 답답합니다. 그러니까 저걸 아직 선택하지는 말아주세요.


그냥 터미널을 열고 다음과 같이 입력하시는 것을 추천합니다.


sudo customizer-gui


이렇게 하면 터미널에 진행상황이 전부 다 뜨고 답답함이 많이 줄어듭니다. 단점이라면 이후 커스터마이징 중에 사용하는 chroot기반 터미널하고 헷갈린다는 것 정도?


하지만 chroot기반은 사용자 이름이 root 일테니 구분하면 편합니다.


이후 작업은 커스터마이징을 할 배포판의 ISO를 선택하고(우분투 기반이 아닌 다른 배포판도 모두 가능하다고 합니다. 어차피 chroot를 이용해서 패키지를 설치하거나 삭제하는 것으로 작업하는 것이라...)


터미널 버튼을 통해서 chroot로 들어간 뒤에 이런저런 작업을(/etc/apt/source.list 파일의 서버를 한국 서버로 바꾼다거나 이런저런 패키지를 추가하거나 미리 업데이트를 해버리거나 한국어 입력기를 설치하거나) 진행하고 ISO가 풀린 곳에 (주로 /home/Filesystem)관리자 권한으로 파일 매니저로 열어서 이런 저런 파일을 넣어주거나 삭제하고 Filesystem/etc/skel 내부에 이런저런 작업을해서 유저모드 설정을 마무리를 지으면 커스터 마이징이 끝나게 됩니다.

그리고 ISO다시 빌드 버튼을 누르면 세팅이 완료된 ISO가 만들어지게 되는 것이지요.


자세한 것은 다음에 알려드리도록 하고 이번에는 Customizer를 설치하는 것까지만 하기로 했으니까요. 이상 Customizer 설치법에 대해 알려드렸습니다.


다음에는 Customizer로 특정 배포판을 미리 한국어 설정으로 해보도록 하겠습니다. 우분투는 UCK로 하는 것이 너무 쉽기 때문에 UCK가 먹히지 않는 LinuxMint나 ElementaryOS를 가지고 해보겠습니다.


그럼 다음에는 Customizer로 한국어 설정을 미리 완료한 배포판을 만들어보도록 하겠습니다.

,

리눅스에서 동영상 가속을 할 때에 관하여 글을 적은적이 있었습니다.

http://moordev.tistory.com/181


VDPAU, VAAPI가 주력이고 서로가 서로를 보완하는 관계라고 했었지요.


Nvidia vs Intel의 구도라고도 할 수 있는데 그 와중에 AMD는 둘 다 지원 중이라고 했습니다.


하지만 드라이버 지원이나 WineNine같은 가속을 위해서 Padoka PPA를 쓰면 AMD에서도 VAAPI 가속이 비활성화 되고 맙니다. mesa-va-driver라는 패키지를 설치하면 VAAPI가 지원이 되어야 하지만 Padoka PPA에서는 해당 패키지를 제공하지 않습니다. 그리고 LLVM5.0으로 업그레이드 되면서 기존의 패키지는 작동을 하지 않게 되고맙니다.


그래서 대신 쓸 수있는 방법이 VDPAU를 VAAPI로 감싸서 사용하는 방법이 있습니다. 사실 이건 VAAPI가 지원이 되지 않는 Nvidia에서 사용하는 방법이지만 VAAPI가 지원이 안 된다면 AMD에서도 충분히 해볼 수 있습니다.


우선 vdpau-va-driver를 설치합시다.


sudo apt install vdpau-va-driver


그리고 환경설정을 조금 바꿔줘야 하는데요.


/etc/enviroment 파일에 아래와 같이 적어주셔야 합니다.


LIBVA_DRIVER_NAME=vdpau


~/.profile에 적어주셔도 되는데 이때에는


export LIBVA_DRIVER_NAME=vdpau


이렇게 해야 VDPAU드라이버로 VAAPI를 작동시키게 됩니다.



위 스크린샷을 보시면 위쪽은 환경설정을 안 했을 때의 VAAPI정보이고(오류가 납니다.) 아래는 VDPAU로 환경설정을 했을 때 VAAPI정보입니다. MPEG2부터 H264와 VC1까지 지원한다고 나옵니다.


실제로 QT기반 webkit 프로그램의 HTML5가속의 경우 VAAPI가속을 사용하게 때문에 해당 환경설정은 효과가 있었고 정상적으로 사용할 수 있었습니다.


AMDGPU를 쓰면서 PadokaPPA를 쓰시는 분들은 참고 바랍니다.



==================2017.7.7==========================

더 쉬운 방법이 있습니다.


알고보니 Paulo형님께서 패키징을 실수하신 것 같네요.

/usr/lib/dri 폴더에는 radeonsi_drv_video.so 파일이 있지만 정작 프로그램들이 라이브러리 존재 여부를 확인하는 곳인 /usr/lib/x86_63-liux-gnu/dri (64비트 기준) 안에는 파일이 없습니다.


따라서 환경 설정을 굳이 할 게 아니라


ln -s /usr/lib/dri/radeonsi_drv_video.so /usr/lib/x86_64-linux-gnu/dri/radeonsi_drv_video.so


이렇게 해서 링크만 걸어줘도 VAAPI가 작동합니다. 괜히 삽질하고 있었네요.

,

http://store.steampowered.com/app/431960/Wallpaper_Engine/




지금 스팀에 올라와서 말 그대로 상당히 인기리에 팔리고 있는 프로그램입니다.

움직이는 배경화면으로서 상당히 리소스도 적게 먹고 재미있다고 하더군요.


사실 10년전에도 비슷한 것은 있었습니다. 사실 윈도98에도 (말많고 탈많은 물건이었지만)Active Desktop이라 해서 HTML을 배경화면으로 할 수 있었습니다. 여기에 검색창을 만들어 넣는다던가(98년에 그랬습니다. 지금 스마트폰의 있는 그것을 말이지요)통째로 웹페이지 하나를 넣는다던가 하는 것이 가능했습니다.


출처 : http://toastytech.com/guis/win98.html Windows95는 확장을 설치한 이후부터 Windows98은 설치하자마자 이런 짓거리가 가능했다.



하지만 이 기능의 큰 문제로는 가뜩이나 부족한 메모리를 엄청나게 처먹는다는 것에 있었고 지금이야 메모리 부족은 거의 없으니 상관은 없어졌지만 HTML을 쓴다는 것만봐도 아시겠지만 구리디구린 IE 엔진을 사용했기에 (물론 당시에는 IE 엔진이 그나마 나았지만) 불안정해지는 문제가 있었습니다.


그리고 당시에는 Canvas태그가 없었기 때문에 동영상 배경이나 애니메이션을 넣으려면 <embed=~~>를 써서 WMP 플러그인이나 Flash를 써야 했는데 아시다시피 WMP도 어마어마하게 성능을 처먹었다는 것을 감안하면 쓰레기였지요. (특히 Flash는 CPU사용율을 계속 잡아먹는 문제가 있었습니다.)


그래도 바탕화면에서 나름 바로 무언가를 할 수 있다는 것이 핀리해지면서 은근히 사용하는 사람이 있었습니다. 그리고 이후 이러한 기능이 가젯이라는 이름으로 생기면서 HTML 방식은 굳이 필요가 없어졌지요. 그리고 2010년대 들어와서야 개량이 제대로 된 IE 엔진으로 뭘한다는 것 자체가 문제이기도 했고요.


그리고 다시 Wallpaper Engine이란 이름으로 돌아온 이러한 프로그램을 보니 감회가 남다릅니다. 세상이 많이 좋아졌구나 싶기도 하고 결국에는 여기까지 왔구나 싶기도합니다.


사실 안드로이드에 라이브 월페이퍼가 생기면서 예견된 일이기도 했지요. 



그러면 말입니다. 리눅스는 어떨까요? 리눅스는 Xwindows를 기반으로 하고 있고 배경화면부터 윈도우 매니저까지 모듈화가 이루어져 있기 때문에 해당 모듈만 잘 쑤셔넣어주면 그만입니다. 즉! 훨씬 쉽다는 의미입니다.


애초에 Openbox시스템을 쓰는 곳에서 Conky를 배경으로 쓰는 경우가 많은데 Conky도 사실 프로그램의 일종인 것을 감안하면 이해가 되는 것이지요. Conky외에 제대로된 배경화면을 원한다면 feh라는 뷰어를 쓰면 되는데 feh는 사실 말 그대로 그림을 보기위해 사용하는 도구입니다. 리눅스에서 많이 쓰는 mirage나 EyeofGnome, gthumb 같은 툴이란 의미입니다. 그냥 이것을 배경으로 깔아버린 것입니다.


하지만 리눅스에선 움직이지 않잖아....하시는 분들도 있을 겁니다. 그런 분들에게 말씀드리고 싶은 것이 있는데...

xwinwrap이란 프로그램이 프로그램 자체를 배경으로 깔아버립니다. 



위의 영상이 2008년도 영상입니다. 주 영상은 당시에 큰 혼란(?)을 몰고 왔던 Compiz지만 여기에 배경화면이 움직이는 것을 볼 수 있습니다. 사실 배경화면에 화면보호기를 깔아버린건데요. 원래 화면보호기도 프로그램이니 그것을 배경으로 대용 한 것입니다.


그렇다면... 만드는건 어렵지 않겠다는 생각이 들지 않나요?


일단 xwinwrap은 https://github.com/lrewega/xwinwrap 여기서 소스코드를 구할 수 있습니다. 다만 최신 환경에서 호환문제가 있어서 제대로 작동을 안 한다는 문제가 있습니다만 이건 뭐....삽질하다보면 되지 않을까요?


일단 이것만 정상적으로 돌아와도 Wallpaper Engine 부럽지 않을 것 같네요. 근데 이거 왜 안 되는거지...?

,

http://hamonikr.org/board_aMBI05/31680


Harmonikr프로젝트는 대한민국 정부에서 리눅스데스크탑 저변확대를 위해 진행한 리눅스 민트 기반 한국어 화 프로젝트입니다.


꽤 성공적이라는 말을 듣고 있고 리눅스민트가 기본적으로 편리하기 때문에 하모니카를 쓰셨던 분들은 대부분 만족을 하셨다고 합니다. 하지만 2.1 Rosa버전 이후 업데이트가 끊겼으며 16년 후반기에 나온다는 정식버전은 어디론가 사라지고 어느새 17년 중반을 넘어서고 있습니다.


하지만 기존의 하모니카를 쓰셨던 분들이 한글 설정도 할 필요없는 편리함에 하모니카를 썼던 것인데 이렇게 업데이트가 끊기게 되면 쓰시는 분들이 점점 더 없어지겠지요.


솔직히 리눅스 민트를 설치하고 


sudo apt-get install `check-language-support -l ko`
sudo dpkg-reconfigure locales


이렇게 해주신 다음 ko_KR.UTF8을 선택하면 하모니카와 큰 차이는 없습니다. 하지만 일반인들에겐 이것조차 어려운 것이 문제이고 그래서 설치하자마자 바로 한국어를 쓸 수 있는 하모니카가 사람들 입에 오르내렸던 것일 겁니다.


없다면 직접 만들면 되지!라는 것이 저의 모토인 이상 하모니카 수준의 뛰어난 번역은 어려울지언정 그래도 바로 한국어로 쓸 수 있는 물건이 있어야겠다는 생각이 들었습니다.


LinuxMint를 기반으로 customizer로 작업을 했습니다.

(작업중에는 따로 스크린샷을 찍지는 않았습니다.)


사실 하모니카는 두가지 버전이 있습니다.


리눅스민트와 꼭 닮은 기본 테마버전과


속칭 하모니카 스타일이란 소리를 듣고 있는 Numix+Plank테마 버전이 있습니다.


저는 이 둘을 잘 섞어서 말 그대로 Remix해서 만들기로 했습니다. 한국어 설정은 물론 기본으로 하는 것이지요.


그래서 아래와 같이 만들었는데 어떤가요? 비슷한가요? (하모니카 1.0과 아이콘이 같습니다.)


다운로드는 아래 링크에서 받을 수 있습니다.(구글드라이브)

https://drive.google.com/file/d/0By3VcoIXExM8U0hlNWZPY2VEUWs/view?usp=sharing


SHA256SUM

f19b82db6d8a57984e5e19012f55dcee63af8d9cb0c21c0e002539f5c66d9cb4  ./LinuxMint-amd64-18.2.iso


SHA1SUM

ec55664b44db0e7fa0a003763f0076975db32656  ./LinuxMint-amd64-18.2.iso

MD5

7418dc8c49e748bd58e1b0d88b6bdefd  ./LinuxMint-amd64-18.2.iso



LinuxMint 18.2와 다른 것은 아래와 같습니다.


1. 기본 로캘을 ko_KR.UTF8로 지정했습니다.
2. 한국어 입력기를 fcitx로 설정했습니다.
3. 기본 저장소를 ftp.daumkakao.com로 지정했습니다.
4. SMplayer를 설치했습니다.
5. 기존 하모니카에서 일부 번역 파일을 이식했습니다. (Ubiquity - 그래서 HamoniKR라고 나옵니다 하모니카가 아님에도 불구하고, vino, synaptic,smplayer 등등)
6. numix-circle아이콘을 기본으로 지정했습니다. 하모니카1.0 시절의 느낌이 드실겁니다.
7. 파일매니저(Caja카하)에 파일 이름 복구기능을 추가했습니다. (https://github.com/LinuxMatt/caja-repairer) 파일명이 깨졌다면 해당 파일에 오른쪽 버튼을 눌러보세요.
8. Arkzip을 설치했습니다. 파일 매니저에서 Egg파일과 Alz파일에 오른쪽 버튼을 누르고 arkzip으로 실행 버튼을 누르시면 압축이 알아서 풀립니다.(https://github.com/Thestars3/arkzip)
9. 한컴뷰어를 설치했습니다.(http://www.hancom.com/cs_center/csDownload.do)
10. pepperFlashWrapper를 설치했습니다. Firefox에서 FlashPlayer가 작동할 것입니다.
11. 청소프로그램인 Bleachbit를 설치했습니다. 한달에 한번정도 실행해서 청소해주면 편리합니다.
12. 서울글꼴, 가짜굴림(이름만 굴림이고 실제로는 나눔고딕), WQY-Zenhei(소스엔진게임 한글출력)을 설치했습니다.

하모니카에 있었던 alias들은 필요성을 못 느낌과 동시에 위험한 alias도 꽤 있어서 설정하지 않았습니다.(del, 크롬설치 등)

대다수 설정은 Usermode이기 때문에 .config/dconf/user 파일을 삭제하면 리눅스민트 본연의 모습으로 돌아올 수 있습니다. (예외가 있습니다. 메뉴에 있는 시작 문구나 시작메뉴의 아이콘 설명 등)



제 마음대로 LinuxMint 18.2 HarmoniKR Remix라고 이름 붙였는데 괜찮을지는 모르겠네요. 달라진거라고 해봐야 Plank와 Numix아이콘, 그리고 몇몇 항목 밖에는 없지만 말이지요.

,