쓸데없는 궁금증이 생겨서 질문드립니다.
윈도우에서는 EXE파일들이 대부분 고유한 아이콘을 가지고 있잖아요.
그런데 우분투에서 윈도우 파티션에 있는 EXE파일들을 보면 우분투에서 설정한 기본 아이콘으로 나오죠.
어떻게 해서 이런 실행파일들에 고유의 아이콘이 표시가 되는지는 잘 모르겠지만 딸랑 실행파일 하나 있는 프로그램도 표시가 되는걸
보면 파일 자체에 아이콘 이미지가 포함되어 있는걸텐데요… 어째서 우분투에서는 볼수가 없는거죠?
아이콘을 표시하는 방식이 MS 윈도우에 맞춰 짜여져 있어서? 아니면 리눅스에서는 원래 고유 아이콘을 표시를 못하는건가요?
윈도우야 그렇다고 치더라도… 리눅스용 실행 파일들은 아얘 아이콘을 포함을 안하고 있는건지요.
어차피 실행 파일 이름이야 패키지명이랑 거의 동일한데다가 직접 패키지 설치된 디렉토리에 접근할 일이 없으니까 못찾을 일은 없지만
가끔 임의의 디렉토리에 압축파일을 푸는게 전부인 프로그램들은 볼때 뭔가 밋밋하기도 하고 직관적인 느낌이 없어서 좀 아쉽네요.
물론 어떤 파일이든간에 직접 아이콘을 지정해줄 수는 있지만 그렇다고 보이는 족족 일일이 아이콘을 찾아서 바꿔줄수도 없는 노릇이구요…
따로 설정할 수 있는 방법이 없는지요.
일단 아이콘 이미지의 경우에는 딱히 어디 전용! 이라기보다 프로그램 제작자가 만들어서 포함시키는 겁니다.
윈도우에서 사용자가 설치한 프로그램 중에 자신만의 아이콘을 가지고 있는 프로그램이 설치된 폴더에 들어가 보시면
[b:19nex7p1]<해당 프로그램 이름>.ico[/b:19nex7p1] 라는 녀석이 같이 들어있습니다.
이 ico는 ICON의 약자로 윈도우의 프로그램들은 [b:19nex7p1]왠지는 몰라도[/b:19nex7p1] 만드는 사람들이 대부분 아이콘도 함께 만들어 포함시키더군요.
리눅스의 경우에는 있는 녀석들은 있지만 대부분 겉모양은 관심이 없는건지 아이콘을 만들 생각을 안합니다.
그리고 그 외에 차이점이라면, 윈도우는 아이콘 확장자가 ico이고 리눅스는 svg입니다.
이 두개가 확장자만 바꾸면 호환이 되는지는 해본적이 없어서 잘 모르겠군요.
아이콘 자동설정 툴은… 있나요? (…)
gui 가 있는 프로그램은 아이콘을 만들게 되는데
cui 프로그램 은 거의 안만들게 되죠
윈도우용 실행파일인 EXE에는 아이콘 이미지가 포함될 수 있습니다. 물론 DLL에도 포함될 수 있죠.
파일에 아이콘을 보여주는 것은 Nautilus (파일관리자)가 하는 일인데 현재 Linux용으로 개발된 Nautilus는 윈도우 실행파일 안에 포함되어 있는 이미지를 꺼내서 보여주는 기능은 없습니다. 물론 Wine에 포함되어 있는 Explorer는 이런일을 해 주겠죠.
윈도우는 확장자를 이용해서 실행파일인 지 아닌지를 어느정도 결정할 수 있겠지만 다른 OS에서는 그렇지 않습니다. 물론 어느정도 관례는 있지만 [b:2ao60odm]항상[/b:2ao60odm] 은 아니라는 거죠. 거기다 기본적으로 실행화일에 아이콘(이미지)를 저장하는 표준 혹은 비슷한 것이 없습니다. 따라서 Nautilus는 파일의 속성(실행가능한지를 나타내는 속성)을 확인해서 실행화일이면 실행가능하다록 표시하고 파일의 앞부분이나 확장자를 이용해서 종류를 임의적으로 결정하고 적당한 아이콘을 표시해 주도록 되어 있습니다.
기본 Nautilus는 보여주지 못하지만 해당 기능을 사용하는 방법이 아래에 나와 있다고 하는군요.
[url:2ao60odm]http://ubuntuforums.org/showthread.php?t=998758[/url:2ao60odm]
물론 제가 해 보진 않았으니 -_-) 물어보셔도 흠.
아, 파일 관리자에서 아이콘 이미지를 찾아서 띄워주는거군요!
아무래도 리눅스가 CUI기반이다 보니까 아이콘이 부족한거 같습니다.
윈도우에서 시스템 폴더를 뒤져보니까 지금은 쓰이지도 않고, 있는지 아는 사람들도 별로 없는 옛날 윈도우 버전 어플리케이션들에도
하나하나 아이콘이 들어가있는거 보고 갑자기 궁금해졌더랍니다^^
친절한 답변 감사드립니다.
저도 이 부분에 대해서 완전히 알지는 못합니다.
즉, 틀린 부분이 있을 수도 있으니 발견하시면 댓글로 지적해주세요.
일단 윈도의 exe 파일의 경우 파일 내부에 아이콘 그림을 넣을 수 있습니다.
하지만 리눅스에서도 이게 가능한지는 잘 모르겠지만 어쨌든 잘 사용하지는 않습니다.
이 경우 일부 고수분들께서 터미널에서 명령어를 사용할 경우에는 문제가 되지 않습니다.
그러나 그래픽 환경에서 일반인이 프로그램을 부를 때에는 모두 같은 그림만 그려진 프로그램 목록에서 이름만 보고 찾기는 힘들지요.
그래서 확장자가 .desktop인 파일이 있습니다.
아마 freedesktop.org에서 이와 관련한 표준 지침을 만들어놓은 것으로 알고 있습니다.
이 파일 안에 어떤 아이콘을 사용하라는 부분이 있습니다.
그러면 그놈 메뉴와 같은 프로그램에서 이 파일을 통해 아이콘을 불러내는 것이죠.
아이콘의 경우 프로그램 목록을 보여주는 프로그램에서 지원만 하면 svg든 png든 xpm이든 다 가능합니다.
그러다보니 윈도에서는 하기 힘든(불가능하지는 않습니다) 재미있는 것도 쉽게 가능합니다.
바로 아이콘 테마입니다.
대표적인 것이 많이 사용되는 Faenza 아이콘 테마이죠.
아이콘 테마를 설치함으로서 프로그램의 아이콘을 쉽게 바꿔버릴 수 있습니다.
[quote="echidna":jck52nai]
가끔 임의의 디렉토리에 압축파일을 푸는게 전부인 프로그램들은 볼때 뭔가 밋밋하기도 하고 직관적인 느낌이 없어서 좀 아쉽네요.
물론 어떤 파일이든간에 직접 아이콘을 지정해줄 수는 있지만 그렇다고 보이는 족족 일일이 아이콘을 찾아서 바꿔줄수도 없는 노릇이구요…
따로 설정할 수 있는 방법이 없는지요.[/quote:jck52nai]저 또한 eclipse와 같이 최신 버전의 프로그램을 사용할 때 종종 직접 다운로드받아 설치합니다.
다만 저의 경우 Faenza 아이콘 테마를 설치했기 때문의 대부분의 아이콘 테마가 다 있습니다.
따라서 ~/bin 안에 명령어와 같은 이름으로 된 바로가기 파일(링크)을 만들어줌으로서 명령어로 부를 수 있게 한 다음 구버전의 패키지를 풀어 (프로그램 이름).desktop 파일을 ~/.local/share/applications 안에 넣어줍니다.
그러면 자동적으로 프로그램 메뉴에까지 추가됩니다.