Desktop Linux

FrontPage|FindPage|TitleIndex|RecentChanges| UserPreferences P RSS
쓸만한 그래픽유저인터페이스, 업무용 제품군, 오락 프로그램을 포함한 개인용 Linux 환경

Linux와 유사 유닉스 기반에서 좋은 데스크탑 환경을 구축하기 위해 몇 가지 프로젝트가 진행중이다. GNOME과 KDE가 그것이다. 그 외에 NextStep을 목표로 하는 GNUStepOpenStep이 있고, MacOS X가 클래식 MacOS와의 연결을 끊고 BSD 기반으로 하여 또 다른 유닉스 환경이 되었다.
- openstep은 그런식으로 되는것이 아닙니다. 간단하게 계보만 정리해놓겠습니다. 참고하시어 편집 부탁드립니다.

- nextstep > openstep > rapsody > mac os X 의 단계를 거치며 gnustep은 openstep의 뒤쪽의 계보입니다. gnustep은 openstep에서 제시된 spec을 linux 또는 다른 OS상에서 구현하는것이 그 목적으로서 application보다는 spec(framework)의 구현에 중점을 둔 프로젝트입니다. 현재 gnustep env은 linux외에 MS-windows용 env가 installer형태로 제공되고 있습니다. - onion

국내에서는 배포판에서 주로 KDE가 강세를 보인다. 한컴 오피스 리눅스판이 QT 기반으로 개발됐다. (QT로 이 정도 규모의 프로그램을 작성한 건 한컴 오피스가 유일하다카더라)

하지만 이상하게도 국내 KDE 사용자 모임은 없다. 한컴이나 미지 등 국내 배포판이 KDE를 기본으로 채택했기 때문에 분명 사용자는 있는데, 모두 최종 사용자 수준에서 그치는지 프로그램 메시지 번역이나 한글 사용 관련 작업이 드물다. (QT는 한자나 가나 지원에 비해 한글 지원이 미비해서 쓰기가 좀 불편하다)
KDE 어떤(AnswerMe) 성격상 사용자들의 참여를 이끌어내지 못하는 것은 아닐까 짐작해본다. GnomeKorea에서만 있어서 그런지 QT로 프로그래밍 하시는 분은 아직 보지 못 했다. 물론 국내 배포판 업체에서는 QT로 작업을 하겠지만 말이다.

GnomeKorea:GnomeDesktopGnomeKorea가 비교적 활발하게 활동한다.

영화 공동경비구역에서 그랬듯이, Linux가 MicrosoftWindows보다 더 좋은 데스크탑 환경을 만드는 것이 꿈이다. 그때까진 윈도우를 그리워 할 수 밖에 없지만.

열악한 드라이버 지원

국내에 리눅스가 붐을 일으키기 시작할 무렵, 알짜가 아직 존재했을 때, 리눅스를 깔고 X 윈도우를 본다는 것 자체가 대단한 성과였다. 윈도우에선 전혀 알 필요도 없었던 컴퓨터의 세세한 구성이나 규격을 머리나 종이에 남겨둬야 했고, 리눅스가 지원하는 규격이 아니면 낭패를 보기 일쑤였다. (그 좋은 17" 모니터를 높은 해상도로 쓰려다가 터트리기도 했다. 그 직후에 주파수가 안 맞으면 모니터 자체가 경고를 내는 기능이 출시됐다)

그래, 사정은 좀 나아졌다. 요즘에 나오는 최신 배포판은 모니터 해상도를 X상에서 직접 바꿀 수 있으며, 마우스의 애니메이션, 마우스 그림자 지원등 가히 환상적이다.

또, MicrosoftWindows가 98에서 2000을 거쳐 XP로 가면서 거의 모든 장치의 드라이버를 수용하고 추가 설치도 편리하게 바꾼 것처럼, 그간 Linux 커널과 X 윈도우도 여러 장치에 대한 드라이버를 축적했다. 하지만 여전히 새로운 기술이 나오면 그걸 지원하기까지 시일이 걸린다. 당연한 일이다. 그걸 개발한 데서 아무런 기술 지원도 받지 않고 오직 추측과 노하우로 어쨌든 돌아가는 드라이버를 만드는 게 리눅스 드라이버 개발이다. 가끔 nVidia나 ATI 같이 자기들이 드라이버를 개발해서 배포하는 데도 있긴 하다. 하지만 인텔의 센트리노 기술이나 세비지 계열 그래픽 카드는 리눅스 지원이 애매하다.

이런 상황이다보니, 잘 지원되는 제품이 개발되도 으레 그 회사는 리눅스 지원을 신경 쓰지 않는다. 리눅스란 OperatingSystem 자체가 없다는 식이다. 가령
  • 요즘은 그나마 낫지만 ADSL 초기에 리눅스 쓴다 그러면 답은 무조건 안됩니다였다. 프로그램만 있으면 잘 되는데도.
  • Mp3Cdp로 유명한 아이리버 사이트에 가보면 리눅스 지원은 안되고 계획에 없다고 답변이 달려 있다. 하지만 19x 기종에 대해선 외국의 어떤 사람이 GnomeKorea:GnomeVFS모듈을 개발해 배포하고, 390 이상 기종은 따로 드라이버 없이 USB 저장 장치로 바로 인식이 된다고 한다. 아이리버 회사는 자기들이 만들었으면서도 어떤 식으로 쓸 수 있을지 제대로 파악하질 않았다는 말이 된다.
  • 삼성에서 나오는 YEPP을 지원하는 패키지가 있다. 아직 버전이 1.0은 아니지만 쓸만하리라 예상한다. http://freshmeat.net 에서 yepp으로 찾아보라.

게임이 없다

Loki Entertainment란 회사가 있었다. SimCity나 기타 여러 윈도우 게임을 리눅스로 포팅했다. 몇 년 전 망해서 지금은 웹사이트만 유지되고 있다.

Direct X에 버금가는 SDL이나 OpenGL 등이 잘 지원되고 있어, 게임 개발 환경으로는 충분하다. 일례로 그래픽 기술을 가늠하는 Quake 시리즈는 리눅스에서도 잘 돈다. 최근작인 네버 윈터 나이츠는 리눅스 실행 파일을 배포하고 있는데, 주변에 하는 사람이 많다.

게임은 데스크탑 환경에 꼭 필요한 부분이다. 왜 게임 개발 업체는 리눅스 환경에서 도는 게임을 개발하지 않는가?
그것은 굳이 리눅스 시장을 살리기 위해 게임 회사 입장에서 투자할 필요성이 없기 때문이다. 당연한 이야기가 아닌가, 시장성이 없는 곳에 투자하는 것은 남의 돈으로 노는 관료들 뿐이다.

따라서 리눅스 데스크탑 위에서 돌아가는 게임들의 지속적 출시는, Desktop Linux의 점유율을 Mac 만큼은 올려놔야 기대할 수 있는 분야일 것이다.

조작감이 떨어지고 연구되지 않았다

KDE도 있고 Gnome의 나름대로 통합된 환경도 있는데 이게 무슨 말인가 하면. 마우스의 감도에서부터 화면 위의 개체를 눌렀을 때의 반응이나 움직임의 느낌이 통일되지 않았고, 또한 어색하다. 최적화가 잘 된 배포판이라 하더라도 MS의 윈도우나 애플의 MacOS에 비하면 어딘가 모종의 불편함을 느끼게 되는 그런 인터페이스를 가지고 있다.

GUI에 대한 엄격한 가이드 라인이 필요하다. http://developer.apple.com/documentation/UserExperience/Conceptual/OSXHIGuidelines/index.html
Gnome에서는 GUI에대한 가이드라인을 제시하고 있습니다 GnomeKorea:HIG - FrogLamb

결국 데스크탑으로서 점유율을 높이려면, GUI가 배포판을 가리지 않고 완전히 통일되는. 즉 지금의 매력을 십분 죽이고 들어가는 일을 자행해야 할지도 모른다.
마지막의 말은 동의하지 않습니다. KDE나 Gnome이나 독자적으로 기능을 향상해나가면 윈도우나 MacOS에 비해 부족한 점이 해결될 것입니다. --씨엔

한가지를 생각해봅시다. Gnome없는 KDE가 완벽한 무료소프트웨어가 되었을까요? KDE없이 Gnome이 지금만큼 발전할수 있었을까요? DesktopLinux는 매우 빠른 속도로 발전해왔습니다. 통합된 상황이었으면 지금만큼 빠르게 발전하지 못했을겁니다. GUI측면이 윈도우나 MacOS에 비해서 떨어집니다. 하지만 DesktopLinux는 얼마되지 않는 세월동안 그들의 작업을 따라잡아가고 있습니다. 불편함을 느끼는 인터페이스가 문제라고 하신다면 빠른 시간내에 해결될겁니다. Linux가 윈도우즈보다 훨씬 빠르게 성장한것보다 더 빠르게 DesktopLinux는 성장해가고 있으니깐요. 리눅스의 매력을 죽이지 않아도 충분히 가능한 일입니다. --씨엔

윈도가 망할 수 없는 이유로 꼽는 게 대개들 오피스라고 하는 사람들이 많더군요. 그런 이유보다도 저변의 문제가 아닐까 하는 생각을 합니다. 일단 널리쓰면 그걸로 끝이 아닌가 싶습니다. 흠.. 리눅스가 널리 퍼지려면 아무래도 누군가 열성적인 전도사가 나와야 가능할 거라는 생각이 드네요..

한글 글꼴이 부족하다는 등의 여러 이유로 OpenOffice가 MS오피스를 밀어내기는 역부족이라고 생각하겠지만, 영어권 쪽은 다르다고 들었습니다. --무신
Please SeeAlso


"; if (isset($options[timer])) print $menu.$banner."
".$options[timer]->Write()."
"; else print $menu.$banner."
".$timer; ?> # # ?>