SORU
18 EYLÜL 2008, PERŞEMBE


Nasıl Mac OS X için güzel bir DMG komut satırı araçlarını kullanarak oluşturabilirim?

Mac uygulaması için güzel bir yükleyici oluşturmak için ihtiyacım var. Bu disk ımage (DMG), önceden tanımlanmış boyutu, düzeni ve arka plan görüntüsü ile olmak istiyorum.

Bu varolan bir yapı sistemi sadece yükleyiciler oluşturmak beri. (paket sistemi daha çok, entegre olmak gibi bir komut, bir program aracılığıyla yapmak istiyorum Yapılar ayrı ayrı yapılır).

Ben zaten DMG oluşturma tamamlandı "hdiutil", henüz bulamadım ne bir simge düzeni yapmak ve bir arka plan belirlemek için nasıl bitmap. kullanarak

CEVAP
3 EKİM 2009, CUMARTESİ


Araştırma çok sonra, bu cevap ile geldim, ve bu vesile ile burada, başvuru için: kendi soruma cevap olarak koyuyorum

  1. "Yardımcı cihazlar için erişimi Etkinleştir"^. Sistem Tercihleri işaretli olduğundan emin >Evrensel Erişim. Bu Otomasyon çalışması için gereklidir. Bu değişiklik (aksi takdirde Mac OS X Server 10.4 işe yaramaz) sonra yeniden başlatmak zorunda kalabilirsiniz.

  2. R/W DMG oluşturun. Sonuç olacak daha büyük olmalı. Bu örnekte, bash "boyut" Kb cinsinden boyut ve "kaynak" bash değişken DMG girilir: . bu klasörün içeriğini içeren değişken

    hdiutil create -srcfolder "${source}" -volname "${title}" -fs HFS  \
          -fsargs "-c c=64,a=16,e=16" -format UDRW -size ${size}k pack.temp.dmg
    
  3. Disk görüntüsü bağlayın ve aygıt adı (ameliyattan sonra birkaç saniye için uyku kullanmak isteyebilirsiniz) deposu:

    device=$(hdiutil attach -readwrite -noverify -noautoopen "pack.temp.dmg" | \
             egrep '^/dev/' | sed 1q | awk '{print $1}')
    
  4. Adlı bir klasör arka plan resim (PNG formatında) saklamak ".arka plan" DMG ve adını deposu "backgroundPictureName" değişken.

  5. Kullanın (adı .görsel stilleri ayarlamak için Otomasyon app bash değişken olmalı "applicationName", kullanılması gerektiği gibi diğer özellikler için değişkenler):

    echo '
       tell application "Finder"
         tell disk "'${title}'"
               open
               set current view of container window to icon view
               set toolbar visible of container window to false
               set statusbar visible of container window to false
               set the bounds of container window to {400, 100, 885, 430}
               set theViewOptions to the icon view options of container window
               set arrangement of theViewOptions to not arranged
               set icon size of theViewOptions to 72
               set background picture of theViewOptions to file ".background:'${backgroundPictureName}'"
               make new alias file at container window to POSIX file "/Applications" with properties {name:"Applications"}
               set position of item "'${applicationName}'" of container window to {100, 100}
               set position of item "Applications" of container window to {375, 100}
               update without registering applications
               delay 5
               close
         end tell
       end tell
    ' | osascript
    
  6. Doğru izinleri ayarlayarak DMG Finialize, sıkıştırmak ve onu serbest:

    chmod -Rf go-w /Volumes/"${title}"
    sync
    sync
    hdiutil detach ${device}
    hdiutil convert "/pack.temp.dmg" -format UDZO -imagekey zlib-level=9 -o "${finalDMGName}"
    rm -f /pack.temp.dmg 
    

Snow Leopard, yukarıdaki otomasyon Snow Leopard bir hata gibi görünüyor simge konumu doğru şekilde ayarlayın. Bir geçici çözüm, yalnızca aç/kapat aramak, yani: simgeler ayarladıktan sonra

..
set position of item "'${applicationName}'" of container window to {100, 100}
set position of item "Applications" of container window to {375, 100}
close
open

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Chilla Frilla™

    Chilla Frill

    7 Aralık 2006
  • Dave Wallace

    Dave Wallace

    27 Kasım 2007
  • Strata1000

    Strata1000

    28 EYLÜL 2009