tauri updater

soso·2024년 6월 14일

gpt로 개발하기

목록 보기
5/5

개요

tauri 데스크톱 앱 개발 중.
데스크톱 앱의 기본 기능 중 하나는 updater.
updater 구현을 위해 SSL 인증한 후의 tauri updater api 적용 과정

updater

1. 내가 이해한 과정

  • 퍼블릭 키, 프라이빗 키가 필요
  • 정적 JSON, 동적 JSON 등 업데이트 내용 JSON 파일 필요
  • 키 파일 생성
  • JSON 파일 생성 후 서버에 업로드. (github, AWS S3 등 가능)
    웹 서버로도 가능. 나는 웹서버 (여기서는 springboot에 업로드 할 예정)
    • 디렉토리 : src/main/resources/static/updates.json
    • url : (localhost:8099/updater.json)
      • localhost는 내가 정한 도메인으로 가능.
        지금 https 때문에 alarm.krfa.or.kr로 해놓았으니 그 도메인을 사용할 예정.
        https://alarm.krfa.or.kr:8433/update.json
  • tauri.conf.json 에 updater api 추가
  • 빌드한 .msi 파일을 .zip 압축 후 JSON 파일에 기재한 경로 (downloads/v1.0.0)에 넣음
  • 코드를 업데이트 하면 (프로젝트 업데이트가 되면) 다시 빌드하여 .msi -> .zip 한 파일을 수동으로 디렉토리(downloads/v1.0.0)에 업데이트. (덮어씌우거나 교체)
  • 이 때 json파일의 "version": "v1.0.0",
    "notes": "Test version", 등 도 수정하여 업데이트
  • tauri 에서 자동으로 인식하여 update 요청 ..

2. 정적 JSON 파일

{
    "version": "v1.0.0",
    "notes": "Test version",
    "pub_date": "2020-06-22T19:25:57Z",
    "platforms": {
        "darwin-aarch64": { //: macOS에서 ARM64 아키텍처를 지원하는 시스템을 위한 설치 파일 tauri build --target dmg 
        // 맥은 명령어 둘 다 동일
            "signature": "",
            "url": "https://alarm.krfa.or.kr/downloads/v1.0.0/app-aarch64.app.tar.gz"
        },
        "darwin-x86_64": { //macOS에서 x86_64 아키텍처를 지원하는 시스템을 위한 설치 파일입니다. tauri build --target dmg

            "signature": "",
            "url": "https://alarm.krfa.or.kr/downloads/v1.0.0/app-x86_64.app.tar.gz"
        },
        "linux-x86_64": { //Linux x86_64 아키텍처를 지원하는 시스템을 위한 설치 파일입니다. tauri build --target appimage

            "signature": "",
            "url": "https://alarm.krfa.or.kr/downloads/v1.0.0/app.AppImage.tar.gz"
        },
        "windows-x86_64": {
            "signature": "",
            "url": "https://alarm.krfa.or.kr/downloads/v1.0.0/app.x64.msi.zip"
        }, //tauri build --target msi

        "windows-i686": {
            "signature": "",
            "url": "https://alarm.krfa.or.kr/downloads/v1.0.0/app.x86.msi.zip"
        } // 32비트 버전의 Windows 운영체제  tauri build --target msi --arch x86

    }
}

3. 빌드 할 때 오류 날 수 있는 부분 (놓칠 수 있는 부분)

  • private key는 환경변수로 지정해야한다
    - windows (powershell)
    $env:TAURI_PRIVATE_KEY ="~/.tauri/myapp.key"
    - Linux
    export TAURI_PRIVATE_KEY=" ~/.tauri/myapp.key"

  • 환경변수 잘 설정되었는 지 확인
    echo $env:TAURI_PRIVATE_KEY

0개의 댓글