Saya mengelola paket di launchpad yang dirilis kira-kira setiap bulan. Namun, versi baru kami tidak lagi kompatibel dengan versi sebelumnya, karena beberapa perubahan mendasar. Jadi versi 2.8 seharusnya tidak ditingkatkan ke 2.9. Saya secara khusus ingin mencegah pengguna melakukan upgrade ke 2.9 karena kesalahan. Alih-alih jika mereka ingin memutakhirkan, mereka harus dipaksa untuk menghapus apt-get, dan kemudian memasang apt-get untuk mendapatkan instalasi baru.
Apakah ada cara untuk menentukan ini dalam deskripsi paket? Atau apakah saya lebih baik membuat repositori terpisah atau mengubah nama paket?
package-management
apt
packaging
deb
Jeroen
sumber
sumber
Jawaban:
Anda harus mengubah nama paket. Bukan hanya karena tidak ada cara yang baik dari ujung Anda untuk mencegah peningkatan, tetapi yang lebih penting karena pengguna mungkin ingin kedua versi diinstal selama masa transisi. Misalnya menginstal versi baru, jalankan pada data uji untuk sementara waktu, lalu lakukan migrasi data yang sulit ketika mereka menstabilkan konfigurasi baru.
Contoh historis: Apache (Saya tidak ingat apakah Ubuntu memiliki Apache 1 dan Apache 2 yang terpisah di beberapa titik, tetapi Debian pasti melakukannya).
sumber
Ini adalah sesuatu yang mungkin paling cocok untuk kemasan # ubuntu-devel atau # ubuntu. Pada tingkat tinggi, jika revisi berikutnya adalah terobosan besar maka itu harus benar-benar menjadi awal dari rilis baru seperti 3.0 tetapi itu tidak akan mencegah upgrade. Anda bisa memilih rute PPA terpisah tetapi itu bukan untuk semua orang dan Anda mungkin mulai kehilangan pengguna. Hal yang benar untuk dilakukan adalah memperbaiki aplikasi sehingga benar-benar kompatibel. Tidak masalah bahwa Anda merilis setiap bulan, pengguna harus dapat mengharapkan bahwa pembaruan tidak akan merusak instalasi mereka.
sumber