맥, macOS, 창 화면 맨앞에(최상단) 고정하기 | afloat

‘afloat’은 실행 중인 창을 ‘맨앞에 고정‘, ‘Always on top‘ 기능을 가능하게 만들어주는 간단한 앱입니다. macOS High Sierra에서도 정상적으로 실행되며, 이 앱을 구동하기 위해선 추가적으로 ‘SIMBL(Simple Bundle Loader)’이 필요합니다. (SIMBL은 3자 개발자들이 기능 수정 및 추가를 소스코드에 접근하지 않고 가능하게 해주는 로더입니다)

 

참고 사항

  • 글 작성 시기 (macOS High Sierra 10.13.2) : 잘 돌아감
  • 글 업데이트 시기 (macOS Mojave 10.14.2) : 모하비로 업데이트하면서 SIMBL이 한번 다 깨지는 상황이 발생. 아래 방법대로 다시 설치하면 복구되어 사용이 가능하긴 하나, SIP을 켜는 순간 사용이 불가능.

 

  • ‘Always on top’ 기능이 적용된 카카오톡 ▼

  • 앱 설치가 완료되면 메뉴바의 아래 그림과 같이 ‘Window > Keep Afloat’를 통해 맨앞 고정이 가능합니다. ▼

모든 앱에서 다 작동하는 것은 아니지만, 필자가 사용해본 대부분의 앱에서는 동작합니다(카톡, 크롬, 파인더 등). 혹, 특정 앱에서 나타나지 않더라도 오류가 아니니 안심하셔도 됩니다. 아래 과정을 차례대로 수행하시면 5분 정도면 설치를 마칠 수 있습니다.


SIP 비활성화 시키기

El Capitan 이후, ‘System Integrity Protection(시스템 무결성 보호)’ 기능이 도입되면서 기본적으로 SIMBL의 설치를 막습니다. 그래서 SIMBL 설치 시에만 잠깐 비활성화를 시켰다가 재활성화를 시키는 작업이 필요합니다.

 

1) 맥을 재시동하면서 cmd + R을 누릅니다. (복구 모드로 부팅)

2) 복구 모드에서 ‘Utility > Terminal’에 들어갑니다. ▼

3) 아래 명령어를 입력하여 SIP를 비활성화합니다.▼ 

csrutil disable

* 설치를 모두 마시친 이후, 꼭 다시 활성화 하시기를 권유드립니다. 다시 활성화를 하실 때에는, 복구 모드로 진입하실 필요가 없습니다.


SIMBL 설치하기

  • UPDATE 2019-01-10 : 다운로드 페이지가 막혀버렸습니다. 제가 받아둔 mySIMBL 0.72 베타 버전을 링크 걸어두며, 우선은 예전 링크도 그대로 두겠습니다. 베타 버전 링크를 활용하시기 바랍니다.

아래 Github 페이지에 가셔서 다운 받으시면 됩니다. “Download the latest release“를 통해 내려 받으시기 바랍니다.

 

1) 다운받은 앱(‘mySIMBL.app’)을 실행하면, ‘SIMBL 설치 메세지’가 나타는데 ‘Install’을 눌러주시면 됩니다. ▼

실행 전, ‘mySIMBL.app’은 당연히 /Applications로 옮겨주셔야 합니다. 그냥, 더블 클릭 하셔도 자동으로 옮길지 물어보는 팝업이 나옵니다.

  • 만약, 위의 SIP 비활성화 과정을 진행하지 않으셨다면, 아래와 같이 실패 메세지를 받게 되실 겁니다. 꼭, SIP를 비활성화시키고 설치하셔야 합니다. ▼


afloat 설치하기

위 과정으로 ‘SIMBL + mySIMBL’를 준비하셨다면, ‘Afloat Github‘ 페이지로 가셔서 아래와 같이 다운 받아주시면 됩니다. ▼

 

1) 압축을 해제하고, ‘afloat-master > bundle’ 디렉토리로 가셔서 ‘Afloat.bundle’이란 파일을 찾습니다. ▼

2) 이 파일(Afloat.bundle)을 열려있는 ‘mySIMBL’ 앱에 드래그 앤 드롭합니다. ▼

최종적으로 아래 그림과 같이 되셨다면, 모든 설정을 마치신 것입니다. 시스템을 재부팅해주시고 사용해주시면 됩니다.

 

3) 이제 열리는 모든 앱에 권한을 물어봅니다. 여기서 ‘Don’t Allow’를 선택하신다면, ‘afloat’ 기능을 사용하실 수 없습니다.

 

4) 처음에 잠깐 언급했듯이 메뉴바에 ‘Keep Afloat’ 기능을 통해 창을 맨앞에 고정할 수 있습니다.

  • Window > Keep Afloat ▼


접근 ‘Deny’ ‘Don’t Allow’한 앱의 접근 권한 다시 설정하기

만약, 실수 혹은 1차적으로 SIMBL agent의 접근을 거부하셨더라도, 나중에 재설정하실 수 있습니다. 다시 해당 권한 설정을 묻는 창을 띄우는 방법은 모르겠으나, 권한을 부여하는 법은 아래와 같습니다.

 

1) 아래 경로의 설정창에서 접근 거부했던 앱들을 다시 체크해주시면 됩니다.

  • System Preferences… > Security & Privacy > Privacy 탭 > 사이드바 Automation 항목 ▼


설치를 마친 후

위 내용을 잘 따라오셨다면 창으로 Front에 고정하여 사용하실 수 있습니다. 이제 설치를 모두 마쳤으니, 다시 SIP를 enable 해주어야 합니다.

모하비의 경우, SIP을 활성화하니 기능이 정지하더군요. SIP 사용 유무의 판단은 스스로 하시기 바랍니다.

  • 재부팅 후, ‘cmd + R’를 눌러주어 복구 모드로 진입
  • ‘Utility > Terminal’ 열어서 아래 커맨드 입력 ▼
csrutil enable

  • UPDATE 2018-08-01 : macOS Sierra 10.12.2 이후 버전을 사용하시는 분들은 복구모드로 접근할 필요 없이, 터미널에서 아래 커맨드만 치시면 됩니다. ▼
sudo csrutil clear


이상입니다. 유용하게 사용하시기 바랍니다. 🙂

2 COMMENTS

  1. [“SIMBL Agent“ wants access to control “iTunes“. Allowing control will provide access to documents and data in “iTunes“, and to perform actions within that app.]
    –> Afoat 때문에 SIMBL을 설치 했어요. 당연히 어떤 앱에 접근 하기 위해서 위의 경우는 iTunes에 접근하기 위해서 위에 메세지 같이 권한을 요청하는데. 문제는 제가 모르고 몇개 앱에 대해서는 Deny를 해버렸어요. 하지만, 그앱 역시 SIML이 접근을 해야 하는데. 다시 이녀석 SIML이 제가 deny한 앱에 대해서 다시 접근을 물어 오게 할 수 있는 방법이 없을까요?

    • 안녕하세요,

      해당 권한을 질의하는 창을 다시 띄우는 방법은 모르겠으나, 다른 앱의 권한을 허용하는 방법은 아래와 같습니다. 본문도 같이 업데이트 해두었으니, 그림이 필요하시다면 참조하시면 될 듯합니다.
      – System Preferences > Security & Privacy > Privacy 탭 > 사이드바 Automation 항목 > 접근 권한을 주기 원하는 앱들 다시 선택.

댓글 남기기