Skip to content

Releases: tidoly-com/stow

v0.1.4

Choose a tag to compare

@eunjaylee eunjaylee released this 19 Oct 01:37
  • 보안: tidoly 터널의 https 로 들어온 요청이 Host 헤더를 집 안 주소로 바꾸면 "집 안에서 온 요청" 으로 판정되어, 밖에서 이 서버의 비밀번호 로그인 · 첫 계정 만들기 · 폴더 훑기 · VPN 설정이 열리던 것을 고쳤습니다. 이제 https 로 온 요청은 Host 와 상관없이 언제나 밖에서 온 것으로 봅니다.

새로 생긴 것

  • 진척률 — 기존 사진 폴더를 훑을 때 파일 수를 먼저 세어 "3,913 / 14,298장 (27%)" 처럼 보여 줍니다. 상태 화면의 "뒤에서 하는 일" 에 남은 작업 수와 지금 하는 일, 작업마다 완료 / 전체와 막대가 붙고, 끝날 때까지 저절로 바뀝니다. 정리가 남아 있는 동안에는 관리 화면 맨 위에도 남은 작업 수와 "진행 보기" 가 뜹니다.
  • 리눅스도 관리 화면의 업데이트 단추로 새 버전으로 바뀝니다. 설치 스크립트가 업데이트만 하는 서비스(tidoly-stow-update)를 함께 깔고, 단추를 누르면 그 서비스가 처음 설치와 같은 스크립트를 돌립니다 — sudo 비밀번호를 묻지 않고, 체크섬이 맞지 않으면 바꾸지 않고 실패로 알립니다. 이미 깐 리눅스는 설치 명령을 한 번 더 실행하면 그다음부터 단추로 됩니다.
  • 아이폰 사진(HEIC)도 확대하면 원본 해상도로 바뀝니다. 브라우저가 HEIC 를 그리지 못해 미리보기(긴 변 1440)까지만 선명하던 것을, 처음 확대할 때 원본 크기 JPEG 를 만들어 바꿉니다. 만드는 동안은 미리보기로 확대되고, 한 번 만든 것은 다시 씁니다. 사진을 많이 넣는 중에도 다른 처리보다 먼저 만듭니다. 원본 받기를 막은 공유 링크로는 내보내지 않습니다.
  • 화면 캡처 자동 앨범 — 스크린샷을 "화면 캡처" 앨범에 따로 모읍니다(처음부터 켜짐, 관리 → 자동 앨범에서 끕니다). 이름이 화면 캡처인 그림과, 이름이 평범해도 폰 화면 모양인 PNG(아이폰 캡처)를 모읍니다. 앨범에서 뺀 것은 다시 넣지 않습니다.
  • 리눅스 서버에서 관리자 비밀번호를 잊었을 때 sudo tidoly-stow password 한 줄로 터미널에서 새 비밀번호를 넣습니다. 설정 파일 위치는 서비스 설정에서 찾으므로 몰라도 됩니다. 서버를 끄지 않아도 됩니다. 이 명령은 설치 스크립트를 다시 실행하면 생깁니다.

사진이 많을 때

  • 사진을 많이 넣는 동안 사진 화면이 느려지던 것을 고쳤습니다. HEIC · 동영상의 작은 그림을 만드는 ffmpeg 가 CPU 를 모두 차지하고 있었습니다 — 이제 하나가 CPU 1개만, 낮은 우선순위로 씁니다.
  • 사진이 많은 달(1만 장 넘게)의 사진 화면이 수십 초씩 걸리거나 뜨지 않던 것을 고쳤습니다. 라이브 포토의 짝을 찾는 쿼리가 색인을 쓰지 못해 사진마다 모든 사진을 읽고 있었습니다 — 1만 1천 장의 달이 6초 → 0.04초(같은 DB 사본, 같은 장비).
  • 사진이 많은 서버를 켤 때마다 1분쯤 디스크와 CPU 가 바쁘고 화면이 느렸던 것을 고쳤습니다. 짝이 없는 짧은 영상마다 라이브 포토의 사진을 찾느라 사진 목록 전체를 읽고 있었습니다(3만 장에서 켤 때마다 13GB) — 이제 색인으로 찾습니다. 작은 그림을 만들 수 없는 GIF · WebP 가 켤 때마다 다시 처리되어 열린 화면에 "바뀐 사진" 소식을 보내던 것도 멈췄습니다.
  • 기존 사진 폴더에 이미 라이브러리에 있는 사진(다른 폴더 · 폰에서 온 것과 같은 사진)이 많으면, 프로그램을 켤 때마다 그 파일들을 처음부터 끝까지 다시 읽어 하드가 몇 분씩 바빴고 그동안 화면이 느렸던 것을 고쳤습니다. 이제 한 번 읽은 중복 파일은 크기와 시각이 그대로면 다시 읽지 않습니다. 원래 사진을 지우면 그다음 훑을 때 이 파일을 대신 넣습니다.
  • 사진을 많이 읽는 동안 같은 하드에 큰 복사가 겹치면 "database is locked" 로 작업이 멈칫하고, 끝난 작업이 "하는 중" 으로 남아 다시 켤 때까지 진척률이 100% 가 되지 않던 것을 고쳤습니다. 끝냄 기록은 될 때까지 다시 시도하고, 쓰기를 기다리는 시간을 10초에서 1분으로 늘렸습니다. 열어 둔 사진 화면도 이제 바뀐 사진의 달만, 몇 초에 한 번까지만 다시 받습니다 — 전에는 정리하는 내내 화면의 모든 달을 1–3초마다 다시 읽었습니다.

고친 것

  • tidoly 터널의 이번 주 새 자리가 다 찼을 때, 관리 화면이 "tidoly 가 이 서버의 열쇠를 받지 않습니다" 라고 잘못 알리던 것을 고쳤습니다. 이제 "대기 N번째 · 다음 자리는 … 에 열립니다 · 차례가 오면 저절로 연결되고 메일로 알려 드립니다" 로 보이고, 순번은 30초마다 다시 확인합니다. 기다리는 동안에도 주소 · 인증서 · tidoly 로그인은 그대로 됩니다.
  • 작은 그림을 만들지 못한 파일(망가진 JPEG, ffmpeg 가 못 여는 HEIC)이 프로그램을 켤 때마다 다시 시도되어, 상태 화면의 실패 수가 켤 때마다 늘던 것을 고쳤습니다. 이제 한 번 포기한 파일은 다시 넣지 않고, 이미 여러 번 쌓인 실패는 파일마다 하나로 줄입니다.
  • 사진 화면에서 저장 위치를 하나만 고른 때처럼 좁힌 화면을 열어 둔 채 다른 위치의 사진을 읽는 동안, 화면이 2초마다 통째로 새로고침되던 것을 고쳤습니다. 이제 새 달이 이 화면에 정말 생겼을 때만 다시 그립니다.
  • 쿠폰 앨범도 다른 앨범처럼 찍은 날짜별로 보입니다. 전에는 유효기간 순서였는데, 그림에서 읽은 유효기간이 정확하지 않아 순서가 어긋났습니다.
  • 기존 사진 폴더를 훑는 동안 관리 화면이 2초마다 통째로 새로고침되어, 폴더를 고르는 창이 닫히고 다른 폴더를 등록할 수 없던 것을 고쳤습니다. 이제 폴더 줄만 다시 받고, 창이 열려 있는 동안에는 기다립니다.
  • GIF · WebP 그림이 이름이나 폴더에 날짜가 있어도(DCIM/201812__, Screenshot_2018…) 파일을 복사한 날에 놓이던 것을 고쳤습니다. 이미 넣은 그림은 다음에 켤 때 다시 읽습니다.
  • 원본 받기를 막은 공유 링크에서, 작은 그림이 아직 만들어지기 전에는 그 자리에 원본 파일이 나가던 것을 고쳤습니다. 이제 작은 그림이 만들어질 때까지 빈 그림을 보냅니다.
  • 공유 링크로 연 화면이 왼쪽에 빈 메뉴 자리를 남겨, 사진 한 장 화면이 반만 검게 보이던 것을 고쳤습니다.
  • 링크를 만든 뒤 뜨는 창에서 "주소 복사" 가 클립보드를 비우던 것과, 닫기(X) 단추가 제목 아래로 내려가던 것을 고쳤습니다.
  • 같은 얼굴을 여러 번 붙인 합성 사진 · 스티커 사진이 인물을 여럿 만들던 것을 고쳤습니다. 한 사진 안에서 아주 닮은 얼굴은 하나만 남깁니다(실제 다른 사람 · 닮은 가족은 그대로 둘). 이미 그렇게 읽힌 사진은 켤 때 다시 봅니다.
  • 찍은 날짜가 없는 사진(스크린샷, 메신저에서 저장한 그림)이 파일을 복사한 날에 놓이던 것을 고쳤습니다. 이제 파일 이름(Screenshot_20231215-…, KakaoTalk_20230501_…)이나, 기존 사진 폴더의 폴더 이름(아이폰을 PC 로 옮긴 DCIM/201805__, 2018-05, 2018/05)의 날짜로 놓습니다. 폴더를 훑을 때부터 이 날짜를 써서, 정보를 다 읽기 전에도 사진이 대략 맞는 달에 놓입니다. 이미 넣은 사진은 다음에 켤 때 다시 읽습니다.

tidoly stow v0.1.3

Choose a tag to compare

@eunjaylee eunjaylee released this 18 Oct 03:32
  • 리눅스에서 /data 처럼 /mnt · /media 밖에 붙인 디스크가 사진을 둘 곳 · 저장 위치 더하기의 "이 장비" 목록에 나오지 않던 것을 고쳤습니다. 시스템이 붙인 것(/boot, snap, 컨테이너 볼륨)은 빠집니다.
  • 처음 설치할 때 추천하는 사진 폴더가, 윈도 · 리눅스에서 남은 공간이 가장 큰 다른 디스크(예: D:\stow, /data/stow)가 됩니다. 홈 폴더의 디스크가 더 넉넉하면 전처럼 홈 폴더 아래입니다. 맥은 그대로입니다 — 다른 디스크가 대개 떼어 내는 외장 디스크라서입니다.

설치된 tidoly stow 는 관리 화면의 업데이트 로 받습니다(맥 · 윈도). 리눅스는 설치 명령을 다시 실행합니다. 지난 변경은 CHANGELOG.

tidoly stow v0.1.2 — 공유 링크

Choose a tag to compare

@eunjaylee eunjaylee released this 18 Oct 03:04
  • 공유 링크 — 계정이 없는 사람에게 사진을 주소 하나로 보여 줍니다. 웹에서 사진을 고르거나 앨범 안에서 링크 를 누르면 만들어지고, Immich 앱의 링크 공유로도 만들 수 있습니다. 받은 사람은 로그인 없이 날짜별로 보고, 허락하면 원본을 받습니다.
    • 기본으로 7일 뒤 닫히고, 내 계정 → 공유 링크 에서 기한 · 비밀번호 · 원본 받기를 바꾸거나 닫습니다.
    • 자기 사진과 자기 앨범만 링크로 보입니다.
    • tidoly 터널이 연결되어 있을 때만 열립니다 — 집 와이파이나 VPN 만으로는 바깥 사람이 열 수 없습니다.
  • 관리 화면의 새 버전 알림에 바뀐 것 보기 링크를 달았습니다.

설치된 tidoly stow 는 관리 화면의 업데이트 로 받습니다(맥 · 윈도). 새로 설치하는 방법은 README, 지난 변경은 CHANGELOG.

tidoly stow v0.1.1

Choose a tag to compare

@eunjaylee eunjaylee released this 17 Oct 13:28

느린 PC 에서의 첫 실행을 고쳤습니다.

  • 앱을 켜면 창이 바로 열리고, 사진 서버가 뜨는 동안 "사진 서버를 여는 중입니다" 를 보여 준 뒤 사진 화면으로 넘어갑니다. 전에는 서버가 뜰 때까지 아무 창도 뜨지 않았습니다.
  • 설치의 마지막 화면("사진 서버를 여는 중입니다")이 느린 PC 에서 모양 없이 깨져 보이던 것을 고쳤습니다.

설치된 tidoly stow 는 관리 화면의 업데이트 로 받습니다(맥 · 윈도). 새로 설치하는 방법은 README.

tidoly stow v0.1.0

Choose a tag to compare

@eunjaylee eunjaylee released this 17 Oct 12:49

첫 공개 릴리스입니다. 내 PC 에 사진을 보관하고, 휴대폰은 Immich 앱으로 붙습니다.

설치

  • macOS (Apple Silicon · Intel): curl -fsSL https://github.com/tidoly-com/stow/releases/latest/download/stow-macos.sh | sh
  • Windows: stow-install.exe 를 받아 실행합니다. 서명이 없어 SmartScreen 이 한 번 경고하면 "추가 정보 → 실행".
  • Linux (amd64): curl -fsSL https://github.com/tidoly-com/stow/releases/latest/download/stow-linux.sh | sudo sh

설치된 앱은 관리 화면에서 새 버전을 알리고, 맥 · 윈도는 업데이트 단추로 바꿉니다. 받은 파일은 SHA256SUMS 로 확인할 수 있습니다.