Uygulama kurma betiği

Merhaba , öncelikli amacım belli bir paketi çeşitli GNU/Linux dağıtımlarına kuran bir betik yazmak. Sonrasında ise MacOS, BSDler, ve Windows gibi sistemlere kurulum sağlamak.

Yapay zekaya da sordum öğrendiğim kadarıyla bu mümkün.

Ek olarak işletim sistemi kurmaya da dönüştürebilirim.

Bu bakımdan ne gibi konulara bakmak gereklidir.

Teşekkürler.

Nasil bir paketten bahsediyoruz?

GNU/Linux dagitimlarinin paket yoneticileri farkli, haliyle farkli paketler uretmek gerekiyor.

Windows icin:

Installer uretecleri var. Daha once NSIS kullandim. Linux’tan ve otomatik build sistemlerinden Windows kurucusu alinabiliyor.
Su anda calistigim bir firmada WiX kullaniyoruz. Visual Studio’dan C# projemiz icin installer uretiyoruz. (Microsoft’un kendi tool’lari da var.)

UNIX/Linux ve Windows binary ikili dosyalarını sorguluyorum.

GNU/Linux sistemde çapraz derleme yapılabilir ve hem işletim sistemi için hem de donanım mimarileri için bir araç yazabileceğimi düşünüyorum.

Tamamen arge düşünce konusu …

*nix’lerde capraz derlemeyi zorlu kilan sey basta libc, ld olmak uzere kullanilan kutuphaneler ve versiyonlari. Hedeflenmek istenen her distro’nun bir imajini yaratip orada derlemek en sagliklisi ve kolayi. Veya yazilimi ozgur yayinlayip paket yoneticilerinin sisteme eklemesini saglamak.

1 Beğeni

Anladım Teşekkürler, proje yaptığımda yani gerçeklediğimde özgür yayınlayacağım. Biraz daha düşüneyim.

İyi çalışmalar.

Bir projemde windows için setup dosyası hazırladım. Bunun için Inno Setup kullandım. Uygulama açılışında wizard butonu ile çok rahat setup.exe gibi bir kurulum dosyası hazırlanabiliyor.
Şöyle bir sıkıntım oldu. Projem program files klasörüne kurulduğunda masaüstündeki ikonu üzerinde bir kalkan resmi görünüyor, her çalıştırıldığında kullanıcı hesabı denetimi onayı istiyor. Fakat ben zaten sistem başlatıldığında kendiliğinden başlayıp arkaplanda çalışmasını istiyorum. Kullanıcı hesabı denetim onayı nedeniyle bu zaten olmuyor. Projemi QtCreator’da çalıştırdığımda sistem tepsisinde tray icon’u görünüyor ve sağlıklı çalışıyor. Ama hazırladığım setup ile kurduğumda bahsettiğim sıkıntılar oluşuyor.
Projem, google firebaserealtime database’e veri yazıyor ve dinleme yapıyor. Ayrıca kurulu olduğu kendi kök dizini içerisinde dosya oluşturup yazıyor normalde. Fakat oluşturduğum setup dosyası ile kurulum yaptığımda yazma izninin olmadığını söylüyor.
Ben de C:ProgramData klasörünün içerisine kurulum yaptırdım. Burada kısayol ikonu üzerinde kalkan çıkmıyor, denetim istemiyor. Fakat yazma izni yine yok diyor. Proje klasörüne sağ tıklayıp özelliklere basıp, güvenlik sekmesine geliyorum. Orda User’in sadece okuma izni olduğunu görüyorum. Yazma iznini verdiğimde sorun çözülüyor.
Tüm bunların kolayca setup dosyası üzerinden çözülebilecek bir alternatifi yok mu? Tavsiyeniz varsa araştırabilirim. ChatGPT’den falan da faydalandım fakat pek istediğim gibi olmadı açıkçası.

Bahsettigim alternatifleri denemek isteyebilirsiniz.

Ben, karsima cikan benzer sorunlara NSIS forumlarinda (google’dan) care bulmustum.

1 Beğeni