네 이전의 LinuxMint MATE 18.2의 커스텀을 하면서 몇 가지 있었으면 했던 것을 빼먹었더군요.


그래서 이번에 그것을 보충하려고 합니다.


한국에서 리눅스 데스크탑을 사용할 때 고통을 주는 것들이 몇 가지 있습니다. ActiveX야 윈도에서도 고통을 주니까 넘어가고 흔히 고통을 주는 물건으로 꼽히는 것이


1. HWP

2. EGG, ALZ


이것들이 있습니다. 이 둘을 해결하기 위해서 두 개의 패키지를 설치할 건데요. 바로 한컴뷰어(http://www.hancom.com/cs_center/csDownload.do)와 ARKZIP(https://github.com/Thestars3/arkzip/)입니다.


그러니까 한국을 위한 배포판이라면 왠지 있어야 했을 패키지가 바로 이 두 녀석이었던 겁니다.


Customizer의 DEB설치 기능을 통해 이들을 설치 할 생각입니다. 이걸 왜 빼 먹었나 싶어요.


따라서 이전의 http://moordev.tistory.com/193 작업을 잘 따라오셨던 분들은 아직 작업중의 FileSystem 이 남아 있을 것이라 생각합니다. 이전 글에서 이어서 한다고 가정하고 설명하겠습니다.


우선 한컴뷰어를 다운로드 받아야 합니다.


http://www.hancom.com/cs_center/csDownload.do

여기로 들어가서 우분투용 DEB파일을 다운로드 받습니다.


아래에 쭉 내리다보면 뷰어가 있습니다. 자신이 만드는 민트의 비트에 맞춰서 DEB파일을 다운로드 받습니다.


그 다음 Customizer를 실행합니다. 뭐...이젠 따로 설명 안 하겠습니다.


이번에는 DEB설치 버튼을 누르고 아까 다운로드 받은 hwpviewer~~~.deb 파일을 선택하면 됩니다.


그러면 터미널에 어쩌고 저쩌고 뜨면서 진행이 될 것이고 완료가 되면 Customizer 창이 돌아올 겁니다.


이번에는 Arkzip을 설치해봅시다. Arkzio은 EGG와 ALZ를 지원하는 리눅스용 압축해제 프로그램으로 반디집에 쓰인 Ark 라이브러리를 이용해서 만들었습니다. 문제는 현재 개발이 중단되어서 우분투 16.04에서 설치할 때 에러가 납니다.


https://github.com/Thestars3/arkzip/issues/6


그래서 여기에 저랑 이름이 똑같은 동일 인물이 해당 문제를 해결해서 패키지를 올려놓았습니다.


누구라곤 말 안 하겠지만 참 잘했네.

이것의 zip파일을 다운로드 받은 다음 압축을 풀면 DEB이 나옵니다. 이것을 같은 방법으로 설치합니다.


Arkzip을 사용할 때는 파일 매니저(혹은 탐색기?)에서 압축 파일을 오른쪽 버튼을 누른뒤에 Arkzip으로 열기를 선택하면 묻지도 따지지도 않고 알아서 풀어버립니다. (반디집의 알아서 풀기 기능이 그냥 실행된다고 생각하시면 됩니다.)


Arkzip으로 압축을 풀겠다면 이렇게 하면 된다.



그리고 한국어 사용자라면 있어야 편한 탐색기의 플러그인을 제공하는 것이 좋을 것이라고 생각됩니다. 가끔 윈도우에서 압축한 한글파일명의 ZIP파일을 풀면 파일이 이름이 깨질 수 있습니다. 그런 경우에는 Arkzip으로 풀면 해결이 됩니다.


하지만... 이미 풀어버렸다면? 다시 압축을 풀지 않고 파일 이름을 복구 할 수 있는 방법이 있습니다.


그놈3의 노틸러스에는 Filename-Repairer라는 플러그인이 있고(저장소에서 설치 가능) xfce의 Thunar에는 thunar filename repairer가 있습니다. http://moordev.tistory.com/119 제 블로그에서도 한 번 소개했었지요. MATE도 당연히 있습니다. Thunar용 Filename Repairer를 만든 LinuxMatt란 분이 MATE의 파일 매니저인 Caja용으로 포팅을 해놓으셨더군요.

https://github.com/LinuxMatt/caja-repairer


그런데 이걸 컴파일 하려면...미쳐버리겠지요.

그래서 DEB으로 만들어서 올립니다. 우분투 16.04 64비트 용 Caja-Repairer입니다.


repairer_0.1.1-1_amd64.deb

이걸 다운로드 받은 다음 역시 아까처럼 DEB설치 기능으로 설치해주시길 바랍니다.


사용 방법은 파일/폴더의 이름이 아래 이미지처럼 깨졌다면 오른쪽 버튼을 눌러서 아래에 (정상적인 이름)이름 바꾸기를 선택하시면 됩니다.


알아서 정상적인 이름을 찾아주는 착한 플러그인

허구한날 ZIP의 압축 푼 파일의 이름이 깨지기 때문에 이 기능이 아주 유용할 겁니다. 추가로 웹에서 다운로드 받은 파일 이름이 깨졌을 때도 똑같이 작동 하기 때문에 이것도 굉장히 편리합니다. (EUC-KR 서버에서 다운로드 받은 한국어 파일이름이 깨진다거나 %20%30뭐 이런식으로 된 것)


여기에 PDF가상 프린터도 추가를 하려고 합니다. http://moordev.tistory.com/53

cups-pdf 패키지로 가상으로 프린트를 해서 PDF로 변환해 주는 것입니다. 윈도우에서는 한컴PDF나 Adobe PDF가 그 역할을 담당하고 있습니다. LibreOffice는 자체 PDF 변환 기능이 있어서 상관 없지만 한글뷰어를 통해서 hwp를 pdf로 변환하고자 할 때에는 굉장히 유용합니다.


Customizer의 터미널을 열도록 합시다.

파일의 크기가 작기 때문에 금방 끝납니다. 하지만 작은것에 비해 강력합니다.


대신, Cups-PDF는 홈폴더에 PDF란 폴더가 있어야 그 곳에 PDF파일을 저장합니다. 한컴PDF처럼 저장하는 위치 안 물어봅니다.


홈폴더에 뭔가 만들려면 /etc/skel에 만들면 된다고 했었지요?


그럼 이렇게 명령을 내립시다.


mkdir /etc/skel/PDF


이제 이 배포판은 PDF을 만드는 기능도 탑재된 배포판입니다.


사실 마음 같아서는 한컴타자연습이나 카카오톡 PC버전도 설치하고 싶은데 Wine만 1기가를 먹어버리는 문제가 있어서 이건 어쩔 수 없이 통과해야겠네요. 나중에 따로 Playonlinux의 Valut패키지로 배포하는 것으로 하겠습니다.


그리고 간단한 그림판 같은 것으로 pinta를 설치해도 좋은데 이건 단순 취향 문제니까 원하시면 설치하세요.


이 정도면 한국형(?) 커스텀은 완료된 것 같으니 다시 ISO로 묶도록 하겠습니다.


현재까지 테스트한 결과 썩 안정성이 나쁘지 않고 한국어 화도 상당히 괜찮아서 배포를 결정했습니다.


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

구글 드라이브 링크입니다. 이전 버전과는 달리 USB 부팅이 지원됩니다.


SHA1 : 9f7baefda7597850e10d48a42cbe4a93406bb55a

SHA256 : e808d837e89fa03ab5c77c11be11f7c12e561d507d7242dcf49d60586375cbeb

MD5 : 497c29e404bd66e575921351347b2a9e



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

구글 드라이브 링크이고 구글 드라이브에서 바로 다운로드 받으신 후 사용하시면 됩니다.


SHA1 : 6937fef928ce99fb682992b28c417743d69577e3

SHA256 : f02947fe0a4f7f211a6a25b0054a73ee8c5b717721a3e58062ca3aca948ee716

MD5 : 54a15f76512d90be70441bc438015b86




,


오랜만입니다.



아마도 대부분 사람들은 이전에 했던 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

,