반응형


우선 flatpak 이란 무엇인가? 부터 설명해야 겠죠.


간단히 말하자면 프로그램을 설치하는 방법중 한가지 입니다.


예를들어 리눅스용 프로그램을 하나 만들어서 배포하려고 하면 리눅스 배포판이 여러개라 여러 설치판을 만들어야 합니다. 페도라용, 수세리눅스용, 아치용, 데비안용, 우분투용....등등.....대부분의 프로그램들은 인기있는 몇가지 배포판만 지원하는 경우가 많습니다.


하지만 flatpak 으로 만들어 배포하면 어떠한 리눅스를 사용하던 flatpak 프로그램만 설치해 주면 프로그램을 쉽게 설치할 수 있습니다.

또한 flatpak 으로 설치된 프로그램들은 샌드박스에서 실행 되기때문에 보안문제의 걱정도 줄여줍니다. 


비슷한 것으로 우분투에서 지원되는 snappy 라는 것도 있는데, 왠지 분위기는 flatpak 쪽이 좀 더 좋은것 같습니다. 하지만 둘다 같이 사용하는것도 가능하기 때문에 자신이 사용하려는 프로그램에 따라 사용하면 되겠습니다.


제 경우는 retroarch 에 대해 알아보던중에 flatpak 을 알게 되었고, 이번에 사용해 보게 되었습니다. 간단히 우분투에서의 사용법을 알아보도록 하겠습니다.



https://flatpak.org  이 flatpak 의 홈페이지고요. https://flatpak.org/setup/  으로 가시면 설치방법이 리눅스 배포판별로 잘 나와있습니다.


우분투는 터미널에서 


sudo add-apt-repository ppa:alexlarsson/flatpak

sudo apt update

sudo apt install flatpak


위에서 부터 차례대로 하나씩 입력해 주면 설치 할 수 있습니다. 참 쉽죠!!!!? 

사실 원래 우분투 패키지에도 존재하긴 하지만 버전이 좀 낮습니다. 따라서 ppa 를 설치해서 최신버전으로 설치해 주는것이 좋습니다.


*참고*    우분투 18.10 이후부터는 PPA 를 추가 하지 않고 설치해서 사용해도 됩니다. ppa 추가 없이 터미널에서


sudo apt install flatpak


으로 설치하시면 됩니다. 


flatpak 설치 후엔 flathub 저장소를 설정해 줍니다. 꼭 flathub 를 이용할 필요는 없지만 많은 프로그램을 이곳에서 보고 설치할 수 있습니다.


https://flathub.org 가 사이트 홈페이지고요. 저장소 설치법은 메인에 나와있지만....


flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo

 

터미널에서 sudo 로 실행하여야 되지만, sudo 로 실행안하면 사용자 암호를 물어보는 창이 알아서 뜨니 그냥 실행해도 상관없습니다.




지금까지는 flatpak 을 이용하기 위한 기초작업입니다.이제 직접 프로그램을 설치해 봅시다. 


첫번째 설치방법은 기본적인 터미널을 이용하여 설치하는 방법입니다. 터미널에서 다음을 입력합니다.


flatpak remote-ls --app


그러면 현재 flathub 저장소 밖에 등록을 안해 놨으니 flathub 에서 설치할 수 있는 프로그램 리스트가 쭉 뜹니다.


만일 특정 프로그램을 찾는 다면 다음처럼 찾을 수도 있습니다.


flatpak remote-ls --app | grep retro


grep 뒤에 찾고 싶은 문자열을 넣으면 됩니다. 대소문자 구별합니다.

flatpak 자체의 검색기능도 물론 있습니다.

flatpak search retro

저는 retroarch 를 설치할거고 리스트를 보니 org.libretro.RetroArch 로 리스트에서 보입니다.

이제 프로그램 이름도 알았으니 설치해 봅시다. sudo 는 사용하지 않습니다.

flatpak install flathub org.libretro.RetroArch

실행결과는 아래와 같습니다.


retroarch 실행에 필요한 런타임 프로그램 몇개도 같이 설치해 줍니다.


설치후 실행은 


flatpak run org.libretro.RetroArch


로 실행하면 됩니다. tab 키를 이용한 자동완성이 되니까 프로그램 이름은 적당히 입력하고 tab 키를 눌러도 됩니다.


그리고....실제로 평소에 프로그램을 실행할때는 위와 같이 실행할 필요는 없고요. 프로그램 메뉴에도 자동으로 등록이 되니까 그냥 메뉴에서 실행하면 됩니다.


그 외에 flatpak 명령어는 http://docs.flatpak.org/en/latest/flatpak-command-reference.html 에서 확인할 수 있습니다.




위에서는 터미널에서 명령을 입력해서 프로그램을 설치하는 방법이었고요.

두번째 설치방법은 GUI 툴을 사용하는 것입니다. 


우선 선행작업이 필요합니다.


sudo apt install gnome-software-plugin-flatpak


위 프로그램은 gnome-software 센터에서 flatpak 을 인식할 수 있는 플러그인 프로그램을 설치하는 것입니다. 설치후에는 gnome-software 센터에서 flathub 프로그램들이 검색이 됩니다.


또는 https://flathub.org/apps.html 에서 원하는 앱을 선택하면 파일이 다운로드되고 이 파일을 소프트웨어 센터에서 열면 프로그램을 설치 할 수 있습니다.



보면 corebird 가 3개 검색이 되는데 맨위는 우분투의 snap 프로그램이고요. 가운데가 일반적인 우분투 저장소에서 설치가능한것, 마지막이 표시한곳을 보면 아시겠지만 flathub 에서 설치하는 프로그램입니다. 


제가 실행해보니 프로그램 설명부분에서 사소한 에러가 나기는 하는데요. 실제 설치와 삭제에는 문제가 없었습니다.


참고적으로 하나더 말씀 드리자면.....

flatpak 으로 프로그램을 설치하는 경우는 일반적인 경우와 달리 비밀번호를 물어보지 않습니다. 우분투 패키지의 경우 관리자 권한으로 프로그램을 설치하지만 flathub 는 유저권한으로 설치하기 때문입니다.




flatpak 의 경우 최신 버전을 별도로 설치해서 써보고 싶거나, 우분투 패키지로 없는 프로그램을 설치할때 유용하게 사용할 수 있을것 같습니다.

프로그램을 배포하는 입장에서도 부담을 덜 수 있을것 같고요.



+ Recent posts