Whiplash 악보

상협이가 드럼 실력이 많이 늘었다.

며칠 전에는 Caravan 악보를 찾아달라고 하더니, 오늘은 Whiplash를 찾아달란다. 기특했다.

musescore에 몇 달 전에 유료 회원을 가입했는데, 역시나 친절한 악보가 있다.

필요한 사람이 있을지도 모르니까, musescore용 Whiplash 악보를 pdf로 변환해서 업로드한다. 링크는 바로 아래.

Whiplash 악보 다운로드

악보를 midi로 변환해서 로직프로에서 불러들이고 작업을 하는데, 실력이 없어서 듣기 좋지는 않지만.. 필요한 사람이 있을 것 같아서 역시나 업로드한다. 링크는 바로 아래.

Whiplash Logic Pro 파일 다운로드

베이스 연습해서 상협이랑 같이 합주해야지.

apogee duet firewire to m1 silicon mac

2009년엔가 구매한 apogee duet fire를 m1 실리콘에서 쓰기 위해 분투하고 있다.

m1에서 maestro2는 제대로 작동하지 않는다.
duet fw는 인식하지만 maestor2는 제대로 작동하지 않으니 절음발이인 상태.

대신 intel-based mac에서 maestro2를 이용해서 duet fw를 세팅하면 그 세팅이 duet fw에 입력이 되고, 다시 m1에 붙여서 쓰면 된다고 하는데...

여간 귀찮은 일이 아니다.

게다가 오늘 macbook pro 2013의 키보드를 교체하려다가, 키보드 부품번호를 잘 못 주문하는 바람에 알리에 다시 주문을 넣고 한달 여를 기다려야 하는 상황.

대신, m1에 있는 HD/Library/Preferences/com.apogee.duetDaemon.plist 파일을 손보면 되는 것 같은데, 아직까지는 어떤 항목을 손대야 하는지를 몰라서 intel-based mac에서 maestro2의 설정을 바꿔가면서 해당 plist 파일의 어떤 항목이 바뀌는지를 파악해야 할 듯..

그리고나서 해당 plist 파일을 바꿀 수 있는 UI를 만들면 될 것 같다.

만들어서 배포해야지.

R package build

nonparaeff 패키지를 처음 작성했던 게 아마 포닥을 하고 있을 때였던 것 같다.
혼자 쓰다가 CRAN에 업로드를 하고자 매뉴얼도 작성해서 Kurt에게 메일로 submission을 하면 Kurt가 CRAN으로 업로드를 하는 시스템이었는데, 이제는 자동 submission 시스템으로 바뀌어서 무척 편해졌다.
DEA 책을 쓰면서 자잘한 함수들을 몇개 더 만들고, 버그도 수정해 가면서 2013년에 0.5.8 버전을 만들고 그 이후는 귀찮아서 업데이트를 하지 않았다.

그 동안에 Kurt가 패키지 업데이트가 필요하다는 메일을 자꾸 보내왔다.
NAMESPACE를 작성해서 패키지를 수정하라는 것이었는데, NAMESPACE가 뭔지를 모르니 무시를 하곤 했다.
내가 패키지를 만들던 시절에는 매뉴얼에 NAMESPACE에 대한 내용이 없었거나 내가 귀찮아서 안 읽었거나, 둘 중의 하나인데.. 아무튼 NAMESPACE에 대해서 시간을 내서 공부하기가 싫었다.

저번주에는 Kurt에게서 최후 통첩이 날아왔다. Compind 패키지와 의존성 문제가 생기는 문제를 해결하지 않고 NAMESPACE를 작성하지 않으면 패키지를 CRAN에서 내리겠다는 내용이었다. 내 nonparaeff에 의존하는 패키지가 있다는게 살짝 기쁘기도 했지만, 어쨋든 매뉴얼을 새로 읽고 뭔가를 고쳐야 한다는 압박감과 귀찮음이 동시에 밀려오기도 했다.

할 수 없이 저번주부터 다시 R Packages라는 책을 띄엄띄엄 읽어가면서 고칠 부분을 조금씩 손을 봤다. Writing R Extensions 매뉴얼보다 더 친절하게 쓰여 있어서 읽기가 무척 수월하기도 했고, 무엇보다 이런 유용한 정보를 Wikibooks로 뿌려서 저자에게 고마운 마음이 들었다.


R 버전이 올라가면서 DESCRIPTION 파일의 i) Depends 항목을 될 수 있으면 쓰지 말아야 하며 Imports와 Suggests 항목이 그 역할을 대신하고, ii) NAMESPACE 파일에서 다른 패키지에서 꼭 필요한 함수들만 불러오는 방식으로 정책이 바뀌었다는 것을 드디어 알아냈다.

DESCRIPTION 파일에서 Authors@R 항목이 신설되었고 Author와 Maintainer 항목은 쓰지 않을 것을 권고하고 있으나, 실상 Author와 Maintainer 항목을 쓰지 않으면 에러가 발생했다.
Authors@R 항목으로 쓰려고 했지만 어쩔 수 없이 Author와 Maintainer 항목을 구분해서 작성했다.
예전에는 Author에 한명만 기록을 할 수 있었던 것 같은데, 이제는 여러명을 comma로 구분해서 쉽게 넣을 수 있게 되었다.

중간에 한글로 커멘트를 달아놓은 ar.dual.dea()함수는 뭔가 더 작업을 해야 할 것 같은데, 그 작업을 하기 귀찮아서 아예 패키지에서 삭제해버렸다.

CRAN에 submission을 하면 NOTE들을 해결하라고 몇번 빠꾸를 먹다가, 어제는 제대로 submission을 한 것 같아서 Francesco Vidoli에게 제대로 submission을 했다는 메일을 보내고 퇴근을 했다.
그러나 운전 중에 reverse dependency 문제가 발생했다는 메일을 받았다.
이런 것까지 내가 신경을 써야 할 필요가 있을까 짜증이 밀려왔지만, reverse dependency 문제를 보고하는 시스템이 있어야 패키지 작성자들이 제대로 패키지를 작성하게 된다는 결론에 이르러서 얼른 문제를 해결하겠다고 마음을 또 먹었다.


Compind 패키지의 NAMESPACE 파일을 살펴보니, ar.dual.dea() 함수를 사용하고 있어서 reverse dependency 문제가 발생한 것이었다. "소스코드를 다 뜯어볼 필요없이 NAMESPACE 파일만 보면 여러 문제가 해결되네. 이래서 NAMESPACE 파일이 필요한 거구나"라고 혼잣말을 하면서 R 개발자들에게 찬사를 보냈다. "역시 똑똑한 사람들은 설계를 잘 해"

집에서는 컴퓨터를 켜기가 싫어서 Vidoli에게 '내일 출근을 해서 롤백하겠다'고 메일을 보냈지만, 이 아저씨는 냉큼 ar.dual.dea()함수를 사용하지 않게끔 Compind 패키지를 재작성해서 submission을 한 것 같다.

오늘 출근을 하고 ar.dual.dea() 함수를 다시 집어넣고, DESCRIPTION 파일과 NAMESPACE 파일들을 손보고 다시 submission을 했다.

이번에는 에러가 발생하지 말기를 바라면서 이 글을 작성하고 있다.

iTerm2에서 git으로 인해서 줄바꿈이 이상하게 나올 때

iTerm2에서 git을 쓰다보면(emacs에서 magit을 쓸 때도 마찬가지다) 이상하게 %기호가 나오면서 줄바꿈이 이상하게 바뀔 때가 있다.

줄바꿈이 깨질 때

이럴 때는 다음과 같이 명령을 주면 해결된다.

defaults delete com.googlecode.iterm2

몇 달간 귀찮아서 구글링을 안 하다가 stackexchange에서 해결책을 찾았다.

[GitLab] root 비밀번호 까먹었을 때

  1. gitlab이 설치된 머신에 ssh로 접속을 한다.
  2. sudo docker ps -a을 쳐서 docker 컨테이너 목록을 살펴본다.
  3. gitlab 컨테이너 ID를 복사해서 sudo docker exec -it CONTAINER_ID /bin/bash로 컨테이너의 bash로 들어간다.
  4. bundle exec rake "gitlab:password:reset"을 쳐서 Rail console에 들어간다.
  5. Rail console에서 다음과 같이 순차적으로 명령을 집어넣는다.
    user = User.find_by_username 'root'
    user.skip_confirmation!
    user.password = 'NEW_PASSWORD'
    user.password_confirmation = 'NEW_PASSWORD'
    user.save!