"One of the nice things about getting older is that you come to understand that you can integrate multiple aspects of your life together. When you're young, you think everything has to be binary, as that's exactly how you feel at that age".
- Min Jin Lee

[작은 팁] freebsd 외장hdd 빠르게 쓰기 (exfat 파일시스템)


freebsd을 써오면서 좀 불만이었던게1, usb으로 외장 hdd을 연결할 때 호환성 혹은 성능이 너무 느림.

그래서 아예 빠른 유선랜을 연결해놓고 samba으로 파일을 백업/공유했었다.

호환성은 linux luks 지원도 아쉽지만, 대부분의 외장하드 파일시스템을 잘 지원하지 못하는거 같았어서.

그런데, 이번에 다시 시도하면서 그냥 얌전하게 fusefs + fusefs-exfat 사용하니 그럭저럭 괜찮은 성능이 나와서 이렇게 해야겠구나 생각.

fusefs + ntfs 같은 port도 있는데, 이것도 빠를거 같지만, exfat이 더 구현이 빠를거 같다. (파일시스템 구조부터 훨씬 단순할테니까)

Footnotes


1

물론 이런 불만 말고도 freebsd은 wifi칩, bluetooth, gpu지원 등등 hw driver지원이 항상 부족하지만.

블로그 검색을 다시 짰다 (PageFind 제거)


pagefind이 freebsd 환경에서 동작하지 않아서, 그냥 다시 짰다.

fuse.js을 사용하는 예제 등이 있었지만1, 그럴거면 그냥 ajax으로 얻은 index.json-을 직접 검색해도 될거 같아서 그냥 javascript 작성 오랬만에.

그리고 ui등도 내 취향에 맞게 간단하게 만들어서 만족스럽다.

pagefind처럼 검색어에 따라 필요한 만큼만 http get하는게 아니라 조금 아쉽지만, 전체 index.json-fetch해도 500kb 안쪽인거 같아서 괜찮지 않을까 싶음. (거기에 브라우저캐슁도 먹으니까)

Footnotes

ddakong v1.1 릴리즈: FreeBSD / kqueue


릴리즈 v1.1

freebsd 지원: 빌드가능하도록 수정 + kqueue 이벤트처리 추가

(원래는 epoll/linux만 지원)

<https://github.com/ageldama/term-ddakong/releases/tag/v1.1>

  • darwin/osx, openbsd 등은 빌드+실행될거 같은데 확신은 못하겠믐.
  • 매 릴리즈마다 크로스컴파일해서 바이너리릴리즈해왔는데, 리눅스는 aarch64, armhf, i686, x86_64 자동화해놨는데, freebsd은 아직이라 이번엔 스킵.

…오랬만에 freebsd 켜서 쓰는데, 반응속도감 역시 엄청좋다.

ddakong v1.0 릴리즈: lua scripting 시스템


릴리즈 v1.0

ANSI C/DLL 플러그인만이 아니라, Lua scripting plugin 만들어서, 그냥 루아스크립팅만으로 플러그인 같은 확장이 가능해졌다.

그리고 이것저것 안정화/문서화하고, 더욱 hackable🪓🔥하고 가벼운 터미널입력기가 되었음.

https://github.com/ageldama/term-ddakong/releases/tag/v1.0

ddakong v0.0.8 릴리즈: 안정화 및 플러그인 시스템


릴리즈 v0.0.8

안정화/문서화하고, 이제 플러그인 시스템을 도입해서 원하는대로 hackable🪓🔥한 터미널용 입력기가 되었다.

플러그인 작성해서:

  1. 한글만이 아니라 다른 언어 입력기로 사용할 수도 있음.
  2. UTF-8 이외에 다른 인코딩으로 출력가능함. (예: EUC-KR, EUC-JP …)
  3. 토글키(Control-H) 마음에 안들면 바꾸면 됨.
  4. 등등등

오늘 한 작업들은:

  1. 안정화 많이 진행했다.
  2. 코드 문서화 주석작성 다 했다.
  3. cross-platform build 자동화해서 릴리즈 때 편해졌다.

    • armhf (raspberry pi 32bit), aarch64 (raspberry pi 64bit), i386 (32bit), x86_64 모두 릴리즈하고 있다.
    • ..혹시나 어디선가 i386 기계 터미널에서 한글을 입력하고 싶은 사람이 있을거 같아서.