기본 콘텐츠로 건너뛰기

Opensuse Tumbleweed 를 설치했습니다

 


 오랫동안 우분투를 쭉 사용해 왔습니다. 우분투 리눅스는 기본적으로 데스크탑으로 사용하기에 적합한 환경을 제공해 주기에 누구나 사용하기 편리합니다. 

다만 우분투는 최근에 snap 에 많이 의존하고 있습니다. 제 경우는 그렇게 큰 용량의 ssd 를 사용하고 있지 않기때문에 snap 앱의 크기는 조금 문제가 되더군요. 

게다가 최근 이런저런 문제로 메모리와 저장장치의 가격이 올라버리는 바람에 업그레이드 하기도 좀 애매합니다. 사실 스냅앱이 아니면 리눅스를 사용하는데 그렇게 많은 용량이 필요하지 않기도 하고요. 

물론 그뿐만이 아니고 다른 배포판을 써보고 싶다는 생각이 들기도 했고요.

 그래서 선택한게 오픈수세의 tumbleweed 입니다. 

>

이 배포판이 우분투와 가장 다른점은 바로 Rolling Release 버전이라는 것 입니다. 때문에 항상 최신버전을 사용할 수 있죠. 단점은 아무래도 시스템의 안정성이 떨어질 수 있다는것인데...오픈수세의 경우 Factory 버전으로 만들어 테스트를 거쳐서 패키지를 업데이트 하기 때문에  롤링 릴리즈 버전치고는 안정적이라는 말이 많습니다. 

그리고 btrfs 파일 시스템을 사용해서 문제가 생길 경우 과거의 스냅샷으로 돌리는 기능이 있어서 문제가 생겨도 이전의 문제 없을 때로 시스템을 돌릴 수 있습니다.  

마지막까지 고민했던건 slowroll 인데....이건 tumbleweed 보다 약간 느리게 업그레이드 하는 것 입니다. 약간의 절충안이죠. 하지만 slowroll 은 몇년이 지났는데 아직 베타였나....그렇습니다. 실제 사용에는 거의 문제가 없다고 합니다만.... 

>

혹시나 opensuse 를 생각하는 분에게 몇가지 알려드리면....우분투와 다르게 조금 손볼 곳이 있습니다. 

 

일단 우분투와 달리 기본적으로 저작권 관련(?) 패키지가 포함이 안되어 있습니다. 주로 멀티미디어 관련 해서 문제가 됩니다.

해결방법은 packman 저장소를 추가해서  그러한 패키지를 설치하는 방법과 모든 라이브러리가 포함되어 있는 flatpak(snap과 비슷한) 앱을 설치해서 해결하는 방법이 있습니다. 각기 장단점이 있습니다. 

 

다른 문제는 의외로 한글 입력기였습니다. 제 경우 fcitx4 가 설치되어 있었는데 이게 무슨 수를 써도 한글입력이 안되더군요. 저의 해결방법은 fcitx5 를 설치하는 거였습니다. 

 

그리고 이건 좀 중요한건데....설치과정중 이런저런 설정을 하고 실제 설치에 들어가기전에 부팅부분에서 grub 을 grub for efi 로 반드시 변경하는게 좋습니다. 컴퓨터에 리눅스만 쓴다면 상관없지만 멀티부팅을 한다면 반드시 변경해 줘야 grub 으로 멀티 부팅이 가능합니다.  

 

 >

 

위의 멀티미디어 문제를 해결하는 방법은 packman 저장소를 쓰는게 보통인데 이때 "opi" 라는 프로그램을 쓰는게 많이 알려진 팁이더군요. 

 sudo zypper in opi

 로 opi 를 설치후에 

opi codecs 

로 쉽게 packman 저장소를 추가하고 해당 패키지를 추가 할 수 있습니다. opi 라는 프로그램이 이럴때 매우 유용합니다. 

이 외에도 vscode 같은 프로그램들도 opi 로 쉽게 추가하고 설치하는게 가능합니다. 

 

>

 

오랜만에 데비안 계열이 아닌 리눅스를 쓰니 이것도 재미 있습니다. 

롤링 릴리즈 버전이라 업데이트가 잦기도 하고 용량이 좀 크기도 하지만 최신버전이라는 장점.....도 나름 있고....

아무래도 데스크탑 리눅스의 표준이 우분투가 된 현재로선 우분투쪽이 이런저런 패키지 구하기가 더 쉬울수도 있긴 하지만 수세리눅스도 일단 제가 필요로 하는 앱은 거의 있었고요. 정 없으면 flatpak 으로 쓰면 그런대로 해결 되지 않을까 생각합니다. snap 앱처럼 용량은 크겠지만 몇 개 정도는.... 제 경우는 아직까지는 flatpak 앱을 설치안하고 쓰고 있습니다. OBS 라는 오픈수세 커뮤니티 저장소를 이용하면 유명한 앱들은 그럭저럭 구할 수 있더군요.(제 기준에서 말이죠)

 요즘은 남아있는 리눅스 커뮤니티도 별로 없는거 같아요. 예전에는 글이 별로 없긴 했어도 이런저런 리눅스 커뮤니티들이 남아 있긴 했었는데 말이죠. 

하지만 AI 가 생긴이후로 이런저런거 물어보긴 쉬워졌습니다. 그런데 잘못 알려주는 경우도 많아서 더 어려워진거 같기도 하고....그렇습니다. 

댓글

이 블로그의 인기 게시물

유로트럭 시뮬레이터 2 순간이동 치트 사용방법

최근 이벤트때 운송해야 할 물건이 나오지 않아 고민중에 어떤 게임사이트에서 찾아낸 방법입니다. 이미 게임을 충분히 하신 분들은 여기저기에 창고가 이미 있을것이기 때문에 그 창고로 이동하면 되지만 그렇지 못한 분들은 지역을 이동하는것이 시간이 많이 걸립니다. 이 방법을 쓰면 특정 도시로 빠르게 이동이 가능합니다. 내문서 -> Euro Truck Simulator 2 의 config.cfg 를 사용하시는 텍스트 에디터로 수정합니다. 수정해야 할 부분은 위에 표시해 놓은 부분입니다. 원래값은 0 이며 1로 바꿔줍니다. 이제 키보드의 '~' 키를 누르면 콘솔창이 뜹니다. 위의 스크린샷이 콘솔을 띄운 화면 입니다. 위와 같이 키보드를 눌렀을때 콘솔이 뜨면 일단 준비과정은 끝납니다. 이제 순간이동 사용법을 알려드리겠습니다. 1. 숫자키 '0'을 눌러서 프리카메라 모드로 들어갑니다. 2. 'm' 키를 눌러서 이동해야 할 도시를 확인하고 도시의 이름을 외워둡니다. 3. 콘솔을 열고 'goto 도시이름' 을 입력합니다. 성공했으면 해당 도시로 바로 이동합니다. 4. 마우스와 키보드 오른쪽의 숫자키패드를 이용해서 지상으로 이동합니다. 5. Ctrl + F9 키를 눌러 트럭을 소환합니다. 위의 순서에서 4번은 주의 하셔야 합니다. 트럭은 Ctrl + F9 를 누르는 순간 카메라의 위치로 소환됩니다. 만일 지상으로 이동하지 않고 트럭을 소환하실 경우 트럭이 지상으로 추락하여 손상 100%가 될 수도 있습니다. 즐거운 게임 되시길 바랍니다.    2022 년 2월 3일 수정사항 트럭의 소환키가 F9 에서 Ctrl + F9 로 변경되었다는 걸 확인해서 본문을 수정했습니다.

antix linux 업데이트시 GPG Error

 최근에 가장 가벼운 리눅스를 검색해서 antix 리눅스를 설치해서 테스트 해 보고 있습니다. 역시 가볍긴 가볍더군요. 생각보단 패키지 구성도 괜찮아 보였고요.    설치후 좀 써보고 업데이트를 하는데 GPG Error 가 발생했습니다. GPG 키 관련 문제인것 같아서 검색해 보니 antixforum에 답이 있었습니다.  https://www.antixforum.com/forums/topic/how-to-fix-expired-gpg-key-error/   간단히 적어보자면... http://repo.antixlinux.com/bookworm/pool/main/a/antix-archive-keyring/antix-archive-keyring_20019.5.0_all.deb 위 파일을 받은 다음에 터미널에서... sudo dpkg -i antix-archive-keyring_20019.5.0_all.deb 을 실행해서 설치해 주면 됩니다.    그런다음 업데이트를 시도해 보면 잘 됩니다.   

pygame 에서 이미지 회전하는 방법

 pygame 에서 transform.rotate 를 사용해서 이미지를 회전시켜 보면 생각과는 달리 요상하게 회전합니다.    따라서 이를 해결해 보고자 검색해 보다 다음 링크를 찾았습니다. https://stackoverflow.com/questions/4183208/how-do-i-rotate-an-image-around-its-center-using-pygame/54714144 위 링크를 보면 파이게임의 이미지 회전이 왜 그렇게 이상한지 알 수 있고 답변하신 분이 blitRotate 라는 함수를 만들어 놓아서 이용할 수 있습니다.  제 소스에 가져와서 테스트를 해 봤는데 제 생각대로 회전 하더군요.  def blitRotate(image, pos, originPos, angle):       #calcaulate the axis aligned bounding box of the rotated image     w, h       = image.get_size()     box        = [pygame.math.Vector2(p) for p in [(0, 0), (w, 0), (w, -h), (0, -h)]]     box_rotate = [p.rotate(angle) for p in box]     min_box    = (min(box_rotate, key=lambda p: p[0])[0], min(box_rotate, key=lambda p: p[1])[1])     max_box    = (max(box_rotate, key=lambda p: p[0])[0], max...