Jawaban:
Saya harus memasang dan menyalin .app
ke /Applications
folder. Untuk Etcher.app:
Pertama seperti yang dikatakan @trojanfoe:
sudo hdiutil attach /Users/janatac/Etcher-1.2.1.dmg
Kemudian
sudo cp -R /Volumes/Etcher\ 1.2.1/Etcher.app /Applications
Anda kemudian memiliki aplikasi Anda di /Applications
folder
Jangan lupa untuk melepas volume:
sudo hdiutil unmount /Volumes/Etcher\ 1.2.1/
Dapatkan itu berfungsi setelah membaca instruksi dari posting blog .
Jika Anda ingin membuat skrip instalasi, diperlukan beberapa langkah lagi sejak nama .dmg
file, nama Volume yang dibuat, nama aplikasi, dan nama perangkat yang perlu dilepas semuanya dapat berbeda. Plus mereka dapat memiliki ruang di dalamnya.
Juga .dmg
dapat memiliki .app
file atau .pkg
file di dalamnya dan ini memerlukan perilaku yang berbeda.
Inilah fungsi bash untuk menginstal dmg dari URL jarak jauh:
# usage: installdmg https://example.com/path/to/pkg.dmg
function installdmg {
set -x
tempd=$(mktemp -d)
curl $1 > $tempd/pkg.dmg
listing=$(sudo hdiutil attach $tempd/pkg.dmg | grep Volumes)
volume=$(echo "$listing" | cut -f 3)
if [ -e "$volume"/*.app ]; then
sudo cp -rf "$volume"/*.app /Applications
elif [ -e "$volume"/*.pkg ]; then
package=$(ls -1 "$volume" | grep .pkg | head -1)
sudo installer -pkg "$volume"/"$package" -target /
fi
sudo hdiutil detach "$(echo "$listing" | cut -f 1)"
rm -rf $tempd
set +x
}
Catatan jika Anda .dmg
memiliki .app
file yang berjalan untuk menginstal program, maka Anda perlu melakukan sesuatu yang berbeda lagi.
hdiutil: detach failed - No such file or directory
Anda bisa mencoba perintahnya open disk://host.tld/image.dmg
.
open
tidak melakukan apa-apa, hanya keluar, tanpa pesan kesalahan.
open path/to/file.dmg
. Saya tidak berpikir disk://host.tld/
bekerja sekalipun.)
Docker.dmg
dan saya tidak punya<image>.pkg
sehingga tidak berhasil