user@github-trending: ~/daily

$ cat posts/2026-10-28-cleanyourtv.md

CleanYourTV — 와이파이로 안드로이드 TV 광고 홈을 싹 걷어내고 애플 TV 스타일 홈으로

2026-10-28 · ★ +2616 today Python Gathin23/cleanyourtv

루트 없이, 케이블 없이, 앱 삭제 없이 안드로이드 TV·구글 TV의 스폰서 행·광고·텔레메트리만 골라 끄고, 532KB짜리 깔끔한 런처를 기본 홈으로 올려주는 디블로트 키트. 복원 스크립트 한 줄이면 원상복구된다.

TL;DR

CleanYourTV는 안드로이드 TV나 구글 TV의 홈 화면을 정리해주는 도구다. TV의 개발자 옵션에서 USB 디버깅만 켜면, 같은 와이파이에 있는 컴퓨터에서 ADB로 접속해 제조사 텔레메트리·광고 서비스·스폰서 행·안 쓰는 기본 앱을 pm disable-user로 비활성화하고, 532KB짜리 작은 런처를 기본 홈으로 설치한다. 앱은 하나도 삭제하지 않기 때문에, 복원 스크립트 한 줄이면 전부 되돌릴 수 있다.

뭐 하는 프로젝트야?

TV 홈 화면이 광고판처럼 변한 게 문제라면, 이 프로젝트는 그 원인을 끄는 쪽으로 접근한다.

  • 백업: 먼저 TV에 깔린 패키지 목록과 설정을 백업한다
  • 비활성화: 제조사의 텔레메트리, 광고 서비스, 스폰서 행, 안 쓰는 기본 앱을 끈다. 삭제가 아니라 비활성화라 복원이 가능하다
  • 런처 교체: 검은 배경에 자주 쓰는 앱 4개를 담은 독, 포커스된 앱 이름을 크게 보여주는 상단 선반, 아래로 누르면 펼쳐지는 나머지 앱 그리드로 구성된 애플 TV 스타일 홈을 기본 홈으로 만든다
  • 테마: 배경·벽지·레이아웃을 바꾸는 테마는 재빌드 없이 와이파이로 밀어 넣을 수 있다

런처 자체는 자바 네이티브 앱으로 약 532KB, 네트워크 권한·백그라운드 서비스 없이 돌아가며 TV 언어 29개를 지원한다. 설정 화면에서 독 순서, 숨길 앱, 한 줄 앱 개수(4~7개) 등을 바꿀 수 있다.

왜 지금 뜨는지

출발점이 평범한 가족 TV였다. 2026년 10월 17일, 작성자가 부모님 TV를 코딩 에이전트로 와이파이 정리한 전후 사진을 올렸고 이 트윗이 740만 조회까지 퍼졌다. 그 뒤 나흘 만에 200명 넘는 기여자가 170개 넘는 TV 모델의 디블로트 목록을 모았고, TCL 75종·소니 40종·샤오미 32종 같은 모델별 테스트 목록이 examples/ 폴더에 쌓였다. 하루 별 증가 +2,616개(집계창 2026-10-26 UTC)로, 어제 다룬 REA 다음으로 빠르게 오르고 있다.

설치 가이드

1. TV에서 USB 디버깅 켜기

TV 설정 → 기기 환경설정 → 정보 → 빌드 항목을 7번 누르면 개발자 옵션이 생긴다. 개발자 옵션에서 USB 디버깅을 켜고, 네트워크 ADB 디버깅 토글이 보이면 그것도 켠다. TV는 켠 상태로 둔다.

2. 코딩 에이전트와 함께 쓰기 (가장 쉬운 방법)

git clone https://github.com/Gathin23/cleanyourtv

클론한 폴더를 Claude Code, Codex, Gemini CLI, Antigravity CLI 같은 코딩 에이전트에 열고, 저장소의 PROMPT.md를 붙여넣은 뒤 TV 모델을 적는다. TV에서 "USB 디버깅 허용?"이 뜨면 승인하고, 체크리스트에 답한다. 어떤 앱을 쓰는지, 독 크기와 순서, 음성 비서·Chromecast·업데이트를 유지할지 등이다. 에이전트가 백업→디블로트→런처 빌드·설치 과정을 거치며, 각 단계를 TV 스크린샷으로 확인한다. 저장소 기준으로 약 15분 걸린다.

3. 직접 손으로 하기 (에이전트 없이)

도구는 Python 3만 있으면 된다.

python3 -m venv tools/venv && tools/venv/bin/pip install -r tools/requirements.txt

export TV_HOST=192.168.1.50                                   # TV의 IP 주소
tools/venv/bin/python -I tools/tv.py --probe                 # 모델·안드로이드 버전·펌웨어 확인
tools/venv/bin/python -I tools/tv.py 'pm list packages'      # TV에서 셸 명령 한 줄 실행
tools/disable.sh examples/xiaomi-mi-tv-4a/debloat.txt        # 디블로트 목록 적용
TV_HOST=192.168.1.50 launcher/build-and-install.sh           # 런처 빌드 후 기본 홈으로
tools/theme.sh themes/aurora                                 # 테마 적용

TV 모델에 맞는 목록은 examples/ 폴더에서 찾는다. 자기 모델이 없으면 에이전트에게 TV에서 직접 찾아달라고 하거나, 목록을 새로 만들어 기여할 수 있다.

4. 복원하기

tools/restore.sh examples/xiaomi-mi-tv-4a/debloat.txt        # 적용한 목록을 되돌리고 기본 런처 복원

복원 스크립트는 변경 전에 기록한 상태를 기준으로 되돌린다. 런처만 그만 쓰고 싶으면 런처 설정에서 안드로이드 홈 선택기를 열어 원래 런처를 고르면 된다. 단, 설치 스크립트가 원래 런처를 비활성화했다면 복원 스크립트를 먼저 돌려야 한다.

주의점

  • 공식 출처만 써라: 공식 저장소는 github.com/Gathin23/cleanyourtv, 공식 사이트는 cleanyour.tv다. 비슷한 이름의 cleanyourtv.com 같은 도메인은 이 프로젝트와 무관하다고 README에 명시돼 있다.
  • 안드로이드 TV·구글 TV만 된다: 삼성 타이젠, LG webOS, Roku, 비지오, 하이센스 VIDAA는 ADB가 없어 지원하지 않는다. Fire TV는 디블로트만 되고 타사 런처를 홈으로 넘겨주지 않으며, 2015년형 Fire TV Box(Fire OS 5)는 pm 경로 자체가 막혀 있다. 중국 내수 TCL 일부 모델도 런처 설치를 거부한다.
  • TV는 최소 안드로이드 8.0(API 26)이 필요하다. 런처 빌드에는 JDK 17과 안드로이드 SDK 플랫폼 34가 필요하다.
  • 끝난 뒤에는 TV의 USB 디버깅을 꺼라. 네트워크 ADB 포트가 열린 채로 두면 같은 네트워크의 누구든 TV에 명령을 보낼 수 있다. 저장소의 tools/adb-closed.py로 포트가 닫혔는지 확인할 수 있다.
  • 펌웨어 업데이트가 디블로트를 되돌릴 수 있다. tools/check.py로 적용 목록과 현재 TV 상태를 비교하고 --fix로 다시 맞출 수 있다.
  • 음성 비서나 ACR(화면 인식) 관련 패키지를 끌 때는 대가가 있다. 리모컨 마이크 버튼, 앱 내 음성 검색 같은 기능이 함께 꺼진다. tools/privacy.py 감사 결과에서 각 패키지의 근거와 손실을 확인하고 끄는 게 안전하다.
  • 남의 TV에 허락 없이 적용하지 말 것. 이 도구는 자기 TV 정리용이다.

출처

  • GitHub Trending 일별 집계(GhTrends.dev, 2026-10-28판): Gathin23/cleanyourtv +2,616 (집계창 2026-10-26 UTC)
  • CleanYourTV 공식 저장소: github.com/Gathin23/cleanyourtv (README: 동작 원리, Quick start, Doing it by hand, Supported TVs, Restoring)
  • 공식 사이트: cleanyour.tv (README에서 공식 링크로 명시)

공식 저장소: github.com/Gathin23/cleanyourtv

← 목록으로 돌아가기

$ git trending --daily  ·  매일 1개, 별이 급등한 프로젝트만 골라 한글로 정리합니다. 수치는 확인된 출처 기준이며, 확인 안 된 건 미확인으로 표기합니다.