- Katılım
- 25 Eyl 2020
- Mesajlar
- 216
- Tepkime puanı
- 162
- Puanları
- 48
- Konum
- istanbul
- Web sitesi
- www.arcface.net
Merhabalar,
Metin 2 adlı oyun için yazdığım bir game ve db source build scripti build işlemlerinizi 7 adımda gerçekleştirmenizi sağlıyor.
Kısaca bir özet geçeyim bu normalde oyunu cd /usr/game dedikten sonra sh baslat.sh olarak başlattığınız da nasıl sizin yerinize başlatma işlemini yapıyor ise buda onun gibi size normal de elle tek tek gmake clean,gmake dep,gmake -j20 çektikten sonra oluşan dosyayı strip -s den geçirip küçülttükten sonra bunun adını değiştirip files'in olduğu klasöre aktarıp izin verme işini size sadece 7 adım da vereceğiniz basit bir kaç komut ile gerçekleştiriyor yani dosya taşıma derdi yok sizin yerinize yedekte alıyor dosya izinlerini veriyor tüm işlemler bitince eski derlenen dosyayı yeni oluşan source'deki dosyayı da kullandıktan sonra siliyor kısaca size 5-10 dakikalık bir zaman kazandırıyor sürekli source üzerinde çalışıyorsanız işinizi nasıl rahatlatacağını anlıyorsunuzdur.
Adına kısaca SBCP(Source Build Control Panel) dedim yani kaynağı derlerken kontrol edebileceğiniz bir panel diyebiliriz. Konu içeriğini anlatırken sistem hakkında SBCP diye bahsedeceğim.
SBCP Nedir?
SBCP normal şartlarda bash(terminal) üzerinde source build(Kaynak dosyaları derleme) yaparken işinizi kolaylaştıran bir plugin(eklenti) tam plugin denmese de kısaca kullanıcının girdiği değerlere göre source build işlemini gerçekleştiren, yedek alma işlemini yapan, game, db veya ikisini birden aktarıp dosya izinlerini veren bir plugin. Yazalı 2-3 gün oluyor open source(açık kaynaklı) olduğu için geliştirmek isteyenler alıp üzerinde çeşitli fanteziler yapabilir konu altına da yaptığı güncellemeyi ekler ise konuya dahil ederim.
SBCP İşlevleri Özellikleri Neler?
Özellikleri herhangi bir ek program veya component(bileşen) gerek duymadan kullanıcıdan gelen girdilere göre kendini derleyip belirtilen hususlar doğrultusunda build(yapı,inşa etme,derleme) işlemini gerçekleştirir.
4 adet işlevi bulunmakta bunlar; build etme, yedek alma, sıkıştırma ve dosyaları aktarma
Öncelikle SBCP dosyasını kullanmak için kullanacağınız sunucu build etmeye uygun olmalıdır. Aksi takdir de çalışmayacaktır sunucu da makefile ve işlevleri kurulu olarak kabul edip devam ediyorum. Sunucu da usr/src dizine bu dosyayı aktarmalısınız path(yol) olarak orayı kâle aldım farklı bir yol üzerinde yapacak iseniz path girdilerini düzeltmelisiniz. Bu kısımdan sonrasını görseller ile destekleyerek anlatacağım.
öncelikle usr/src dizinine build.sh dosyasını aktarın.
GAME BUİLD
1 ) Terminal'i açın.
2 ) 3 Farklı seçenek gelecek 1 sadece GAME build eder, 2 sadece DB build eder ve 3 GAME ve DB build eder.
İlk olarak GAME build etmeyi göstereceğim. 1 Seçiyoruz.
3 ) Yedekleme işlemi bu işlem eğer yedekle olarak seçerseniz eski game dosyanızı yedekleyip .tar.gz olarak source adı ve tarihi isim olarak atayıp oluşturacaktır.
Eğer yedekleme yapma seçeneğini seçerseniz yedekleme aşamasını boş geçecektir. Ben örnekte o alanı da görmeniz için yedekle seçeneğini seçeceğim.
4 ) Build edilecek dosyayı seçme SBCP size src klasörün de bulunan tüm klasörleri listeleyecektir.
Bu alanda build etmek istediğiniz source klasörünü seçeceksiniz. Adını büyük küçük harflere dikkat ederek eksiksiz girmelisiniz.
Ben Vectors_Source klasörünü seçeceğim bu örneği bu source üzerinden göstereceğim.
5 ) game src yolunu girmeniz gerekiyor bunu otomatik yapmayı düşündüm ama bir çok arkadaş bunu değiştiriyor
örneğin; source/game/src,server/game/src veya direkt game/src bu yüzden bunu seçilebilir olarak sundum.
Gelen ekranda seçtiğiniz source adı ile beraber örnekte gösterecektir.
Build işlemi başlayacaktır. Bitene kadar bekleyin...
6 ) Build işlemi tamamlandıktan sonra oluşan game dosyasını seçmeniz gerekiyor. Bunu da otomatik yapmayı düşündüm ama herkes kafasına göre derlenmiş game dosyasına isim atıyor bu yüzden bunu da seçtirmek zorundayım yoksa hata verecektir.
Size oluşan dosyaları görebilmeniz için liste olarak veriyorum arasından oluşan dosyanın adını girmenizi istiyorum.
Vectors_Source'de oluşan game dosyasının adı game_r_55170_32 olduğu için adını giriyorum.
7 ) Bir kaç saniye seçtiğiniz dosyayı sıkıştırmak ve yeniden adlandırmak için bekletecektir.
Daha sonra nereye taşınmasını istediğinizi belirtmeniz gerekiyor. Size dizin listesini veriyorum burada yapmanız gereken şey game dosyanızın hangi dizinde olduğunu belirtmeniz benim kullandığım oyunun game dosyası share/bin dizinin de bu yüzden share/bin olarak giriyorum.
SON ) İşlem bu kadar eğer yedekleme seçti iseniz eski game dosyanız yedeklenecektir.
Daha sonra eski game dosyası silinip yerine yeni game dosyası taşınıp daha sonra da dosya izinleri verilecektir.
Son olarakta build işlemi tamamlandı diye uyarı alacaksınız ve işlem tamamlanmış olacaktır.
DB BUİLD
1 ) terminal'i açın.
2 ) 3 Farklı seçenek gelecek 1 sadece GAME build eder, 2 sadece DB build eder ve 3 GAME ve DB build eder.
İkinci olarak DB build etmeyi göstereceğim. 2 Seçiyoruz.
3 ) Yedekleme işlemi bu işlem eğer yedekle olarak seçerseniz eski db dosyanızı yedekleyip .tar.gz olarak source adı ve tarihi isim olarak atayıp oluşturacaktır.
Eğer yedekleme yapma seçeneğini seçerseniz yedekleme aşamasını boş geçecektir. Ben örnekte o alanı da görmeniz için yedekle seçeneğini seçeceğim.
4 ) Build edilecek dosyayı seçme SBCP size src klasörün de bulunan tüm klasörleri listeleyecektir.
Bu alanda build etmek istediğiniz source klasörünü seçeceksiniz. Adını büyük küçük harflere dikkat ederek eksiksiz girmelisiniz.
Ben Vectors_Source klasörünü seçeceğim bu örneği bu source üzerinden göstereceğim.
5 ) db src yolunu girmeniz gerekiyor bunu otomatik yapmayı düşündüm ama bir çok arkadaş bunu değiştiriyor
örneğin; source/db/src,server/db/src veya direkt db/src bu yüzden bunu seçilebilir olarak sundum.
Gelen ekranda seçtiğiniz source adı ile beraber örnekte gösterecektir.
Build işlemi başlayacaktır. Bitene kadar bekleyin...
6 ) Build işlemi tamamlandıktan sonra oluşan db dosyasını seçmeniz gerekiyor. Bunu da otomatik yapmayı düşündüm ama herkes kafasına göre derlenmiş db dosyasına isim atıyor bu yüzden bunu da seçtirmek zorundayım yoksa hata verecektir.
Size oluşan dosyaları görebilmeniz için liste olarak veriyorum arasından oluşan dosyanın adını girmenizi istiyorum.
Vectors_Source'de oluşan db dosyasının adı db_r55170 olduğu için adını giriyorum.
7 ) Bir kaç saniye seçtiğiniz dosyayı sıkıştırmak ve yeniden adlandırmak için bekletecektir.
Daha sonra nereye taşınmasını istediğinizi belirtmeniz gerekiyor. Size dizin listesini veriyorum burada yapmanız gereken şey db dosyanızın hangi dizinde olduğunu belirtmeniz benim kullandığım oyunun db dosyası share/bin dizinin de bu yüzden share/bin olarak giriyorum.
SON ) İşlem bu kadar eğer yedekleme seçti iseniz eski db dosyanız yedeklenecektir.
Daha sonra eski db dosyası silinip yerine yeni db dosyası taşınıp daha sonra da dosya izinleri verilecektir.
Son olarakta build işlemi tamamlandı diye uyarı alacaksınız ve işlem tamamlanmış olacaktır.
GAME VE DB BUILD
Burda uzun uzun anlatılacak bir şey yok 3 seçiyorsunuz ve yukarıda yaptığımız 2 işlemi art arda yapıyorsunuz.
1,2 veya 3 seçtiniz işlemi tamamladınız ve yedeklemeyi seçtiniz diyelim.
Yedeklenen dosyaları game ve db dosyasının bulunduğu dizine aktarılır oradan bulabilirsiniz.
Yedekler source dosyanızın adı ve build ettiğiniz tarihi baz alarak isim atar ve tar.gz olarak sıkıştırır.
Son olarak herhangi bir işlem yapmanız gerekmiyor oyunu yeniden başlatarak build edilen dosyaları kullanabilirsiniz.
Metin 2 adlı oyun için yazdığım bir game ve db source build scripti build işlemlerinizi 7 adımda gerçekleştirmenizi sağlıyor.
Kısaca bir özet geçeyim bu normalde oyunu cd /usr/game dedikten sonra sh baslat.sh olarak başlattığınız da nasıl sizin yerinize başlatma işlemini yapıyor ise buda onun gibi size normal de elle tek tek gmake clean,gmake dep,gmake -j20 çektikten sonra oluşan dosyayı strip -s den geçirip küçülttükten sonra bunun adını değiştirip files'in olduğu klasöre aktarıp izin verme işini size sadece 7 adım da vereceğiniz basit bir kaç komut ile gerçekleştiriyor yani dosya taşıma derdi yok sizin yerinize yedekte alıyor dosya izinlerini veriyor tüm işlemler bitince eski derlenen dosyayı yeni oluşan source'deki dosyayı da kullandıktan sonra siliyor kısaca size 5-10 dakikalık bir zaman kazandırıyor sürekli source üzerinde çalışıyorsanız işinizi nasıl rahatlatacağını anlıyorsunuzdur.
Adına kısaca SBCP(Source Build Control Panel) dedim yani kaynağı derlerken kontrol edebileceğiniz bir panel diyebiliriz. Konu içeriğini anlatırken sistem hakkında SBCP diye bahsedeceğim.
SBCP Nedir?
SBCP İşlevleri Özellikleri Neler?
Özellikleri herhangi bir ek program veya component(bileşen) gerek duymadan kullanıcıdan gelen girdilere göre kendini derleyip belirtilen hususlar doğrultusunda build(yapı,inşa etme,derleme) işlemini gerçekleştirir.
4 adet işlevi bulunmakta bunlar; build etme, yedek alma, sıkıştırma ve dosyaları aktarma
SBCP Kullanımı
Öncelikle SBCP dosyasını kullanmak için kullanacağınız sunucu build etmeye uygun olmalıdır. Aksi takdir de çalışmayacaktır sunucu da makefile ve işlevleri kurulu olarak kabul edip devam ediyorum. Sunucu da usr/src dizine bu dosyayı aktarmalısınız path(yol) olarak orayı kâle aldım farklı bir yol üzerinde yapacak iseniz path girdilerini düzeltmelisiniz. Bu kısımdan sonrasını görseller ile destekleyerek anlatacağım.
öncelikle usr/src dizinine build.sh dosyasını aktarın.
GAME BUİLD
1 ) Terminal'i açın.
Bash:
cd /usr/src
sh build.sh
2 ) 3 Farklı seçenek gelecek 1 sadece GAME build eder, 2 sadece DB build eder ve 3 GAME ve DB build eder.
İlk olarak GAME build etmeyi göstereceğim. 1 Seçiyoruz.
3 ) Yedekleme işlemi bu işlem eğer yedekle olarak seçerseniz eski game dosyanızı yedekleyip .tar.gz olarak source adı ve tarihi isim olarak atayıp oluşturacaktır.
Eğer yedekleme yapma seçeneğini seçerseniz yedekleme aşamasını boş geçecektir. Ben örnekte o alanı da görmeniz için yedekle seçeneğini seçeceğim.
4 ) Build edilecek dosyayı seçme SBCP size src klasörün de bulunan tüm klasörleri listeleyecektir.
Bu alanda build etmek istediğiniz source klasörünü seçeceksiniz. Adını büyük küçük harflere dikkat ederek eksiksiz girmelisiniz.
Ben Vectors_Source klasörünü seçeceğim bu örneği bu source üzerinden göstereceğim.
5 ) game src yolunu girmeniz gerekiyor bunu otomatik yapmayı düşündüm ama bir çok arkadaş bunu değiştiriyor
örneğin; source/game/src,server/game/src veya direkt game/src bu yüzden bunu seçilebilir olarak sundum.
Gelen ekranda seçtiğiniz source adı ile beraber örnekte gösterecektir.
Build işlemi başlayacaktır. Bitene kadar bekleyin...
6 ) Build işlemi tamamlandıktan sonra oluşan game dosyasını seçmeniz gerekiyor. Bunu da otomatik yapmayı düşündüm ama herkes kafasına göre derlenmiş game dosyasına isim atıyor bu yüzden bunu da seçtirmek zorundayım yoksa hata verecektir.
Size oluşan dosyaları görebilmeniz için liste olarak veriyorum arasından oluşan dosyanın adını girmenizi istiyorum.
Vectors_Source'de oluşan game dosyasının adı game_r_55170_32 olduğu için adını giriyorum.
7 ) Bir kaç saniye seçtiğiniz dosyayı sıkıştırmak ve yeniden adlandırmak için bekletecektir.
Daha sonra nereye taşınmasını istediğinizi belirtmeniz gerekiyor. Size dizin listesini veriyorum burada yapmanız gereken şey game dosyanızın hangi dizinde olduğunu belirtmeniz benim kullandığım oyunun game dosyası share/bin dizinin de bu yüzden share/bin olarak giriyorum.
SON ) İşlem bu kadar eğer yedekleme seçti iseniz eski game dosyanız yedeklenecektir.
Daha sonra eski game dosyası silinip yerine yeni game dosyası taşınıp daha sonra da dosya izinleri verilecektir.
Son olarakta build işlemi tamamlandı diye uyarı alacaksınız ve işlem tamamlanmış olacaktır.
DB BUİLD
1 ) terminal'i açın.
Bash:
cd /usr/src
sh build.sh
2 ) 3 Farklı seçenek gelecek 1 sadece GAME build eder, 2 sadece DB build eder ve 3 GAME ve DB build eder.
İkinci olarak DB build etmeyi göstereceğim. 2 Seçiyoruz.
3 ) Yedekleme işlemi bu işlem eğer yedekle olarak seçerseniz eski db dosyanızı yedekleyip .tar.gz olarak source adı ve tarihi isim olarak atayıp oluşturacaktır.
Eğer yedekleme yapma seçeneğini seçerseniz yedekleme aşamasını boş geçecektir. Ben örnekte o alanı da görmeniz için yedekle seçeneğini seçeceğim.
4 ) Build edilecek dosyayı seçme SBCP size src klasörün de bulunan tüm klasörleri listeleyecektir.
Bu alanda build etmek istediğiniz source klasörünü seçeceksiniz. Adını büyük küçük harflere dikkat ederek eksiksiz girmelisiniz.
Ben Vectors_Source klasörünü seçeceğim bu örneği bu source üzerinden göstereceğim.
5 ) db src yolunu girmeniz gerekiyor bunu otomatik yapmayı düşündüm ama bir çok arkadaş bunu değiştiriyor
örneğin; source/db/src,server/db/src veya direkt db/src bu yüzden bunu seçilebilir olarak sundum.
Gelen ekranda seçtiğiniz source adı ile beraber örnekte gösterecektir.
Build işlemi başlayacaktır. Bitene kadar bekleyin...
6 ) Build işlemi tamamlandıktan sonra oluşan db dosyasını seçmeniz gerekiyor. Bunu da otomatik yapmayı düşündüm ama herkes kafasına göre derlenmiş db dosyasına isim atıyor bu yüzden bunu da seçtirmek zorundayım yoksa hata verecektir.
Size oluşan dosyaları görebilmeniz için liste olarak veriyorum arasından oluşan dosyanın adını girmenizi istiyorum.
Vectors_Source'de oluşan db dosyasının adı db_r55170 olduğu için adını giriyorum.
7 ) Bir kaç saniye seçtiğiniz dosyayı sıkıştırmak ve yeniden adlandırmak için bekletecektir.
Daha sonra nereye taşınmasını istediğinizi belirtmeniz gerekiyor. Size dizin listesini veriyorum burada yapmanız gereken şey db dosyanızın hangi dizinde olduğunu belirtmeniz benim kullandığım oyunun db dosyası share/bin dizinin de bu yüzden share/bin olarak giriyorum.
SON ) İşlem bu kadar eğer yedekleme seçti iseniz eski db dosyanız yedeklenecektir.
Daha sonra eski db dosyası silinip yerine yeni db dosyası taşınıp daha sonra da dosya izinleri verilecektir.
Son olarakta build işlemi tamamlandı diye uyarı alacaksınız ve işlem tamamlanmış olacaktır.
GAME VE DB BUILD
Burda uzun uzun anlatılacak bir şey yok 3 seçiyorsunuz ve yukarıda yaptığımız 2 işlemi art arda yapıyorsunuz.
1,2 veya 3 seçtiniz işlemi tamamladınız ve yedeklemeyi seçtiniz diyelim.
Yedeklenen dosyaları game ve db dosyasının bulunduğu dizine aktarılır oradan bulabilirsiniz.
Yedekler source dosyanızın adı ve build ettiğiniz tarihi baz alarak isim atar ve tar.gz olarak sıkıştırır.
Son olarak herhangi bir işlem yapmanız gerekmiyor oyunu yeniden başlatarak build edilen dosyaları kullanabilirsiniz.
Kod:
#!/bin/sh
# SBCP [Source Build Control Panel]
# ARCFACE
# 03.01.2020
# www.arcface.net | onlinepvpservers.com
clear
echo
echo -e "\033[32m METIN 2 \033[0m"
echo
echo -e "\033[31m SBCP(SOURCE BUİLD CONTROL PANEL)! \033[0m"
echo -e "\033[31m KAYNAK DERLEME KONTROL PANELİ! \033[0m"
echo
echo -e "\033[32m Neler BUİLD edilecek seçin; \033[0m"
echo -e "\033[36m
1 - GAME \n
2 - DB \n
3 - GAME + DB \033[0m"
echo
echo -e "\033[32m Seçmek için rakamı girip ENTER yapmanız yeterli. \033[0m"
echo
read build_file_cont
while ! [ "${build_file_cont}" = "${build_file_cont#*[^0-9]}" ] || [ $build_file_cont -lt 1 ] || [ $build_file_cont -gt 3 ]; do
clear
echo
echo "Hatalı tuşlama yaptın tekrar seçim yapın;"
echo
echo -e "\033[32m Neler BUİLD edilecek seçin; \033[0m"
echo -e "\033[36m
1 - GAME \n
2 - DB \n
3 - GAME + DB \033[0m"
echo -e "\033[32m Seçmek için rakamı girip ENTER yapmanız yeterli. \033[0m"
echo
read build_file_cont
done
clear
echo
echo -e "\033[32m Eski dosyaların yedeklenmesini istiyor musunuz? Seçin; \033[0m"
echo
echo -e "\033[36m
1 - Yedekleme Yap \n
2 - Yedekleme Yapma \033[0m"
echo
echo -e "\033[32m Seçmek için rakamı girip ENTER yapmanız yeterli. \033[0m"
echo
read backup_cont
while ! [ "${backup_cont}" = "${backup_cont#*[^0-9]}" ] || [ $backup_cont -lt 1 ] || [ $backup_cont -gt 2 ]; do
clear
echo
echo "Hatalı tuşlama yaptın tekrar seçim yapın;"
echo
echo -e "\033[36m
1 - Yedekleme Yap \n
2 - Yedekleme Yapma \033[0m"
echo
echo -e "\033[32m Seçmek için rakamı girip ENTER yapmanız yeterli. \033[0m"
echo
read backup_cont
done
clear
echo -e "\033[32m Kaynak klasörünü seçin; \033[0m"
echo
ls
echo
echo -e "\033[36m Kaynak klasörünün adını eksiksiz şekilde girmelisiniz \n
büyük küçük harflere dikkat ederek hangi kaynak dosyasını seçecek iseniz \n
onu eksiksiz yazın. \033[0m"
echo
echo -e "\033[32m Dosya adını yazdıktan sonra ENTER yapmanız yeterli. \033[0m"
echo
read build_source_dir
while [ ! -d "$build_source_dir" ]; do
clear
echo
echo -e "\033[31m Klasör Bulunamadı. \033[0m Lütfen tekrar seçim yapın;"
echo
ls
echo
echo -e "\033[32m Klasör adını tekrar girin; \033[0m"
read build_source_dir
done
case $build_file_cont in
1*)
clear
echo
echo -e "\033[36m Farklı yollara sahip sourceler olduğundan dolayı \n
game src alanınızın yolunu girmeniz gerekiyor; \n
\033[31m
Örneğin; \n
$build_source_dir/source/game/src \n
$build_source_dir/game/src
\033[0m
\033[0m"
echo
echo -e "\033[32m $build_source_dir Dizin içeriğiniz altta listelenmektedir. \033[0m"
ls $build_source_dir
echo
echo -e "\033[32m Dizin yolunu örneklerde verildiği gibi girin. \033[0m"
echo
read build_source_dir_game
while [ ! -f "$build_source_dir/$build_source_dir_game/input.cpp" ]; do
clear
echo
echo -e "\033[31m Dizin yolunu doğru girmedin \033[0m Lütfen tekrar yolu yazın;"
echo
echo -e "\033[36m Farklı yollara sahip sourceler olduğundan dolayı game src alanınızın yolunu girmeniz gerekiyor; \n
\033[31m Örneğin; \n $build_source_dir/source/game/src \n $build_source_dir/game/src \033[0m"
echo
ls $build_source_dir
echo
echo -e "\033[32m Klasör yolunu tekrar girin; \033[0m"
read build_source_dir_game
done
clear
echo -e "\033[32m Build işlemi başlatılıyor... \033[0m"
sleep 2
echo -e "\033[32m Kaynak temiz duruma getiriliyor... \033[0m"
sleep 2
cd /usr/src/$build_source_dir/$build_source_dir_game
gmake clean
echo -e "\033[32m Kaynak derleniyor... \033[0m"
sleep 2
gmake dep
gmake -j20
clear
echo -e "\033[33m GAME Source build işlemi tamamlandı. \033[0m"
echo
echo -e "\033[36m Oluşan game dosyasını sıkıştırmak için yeni oluşan dosyanın adını girin. \033[0m"
echo
ls /usr/src/$build_source_dir/$build_source_dir_game/../
echo
echo -e "\033[32m Üstte listelenenler içinden seçmeniz gerekiyor; \033[0m"
cd /usr/src/$build_source_dir/$build_source_dir_game/../
read build_source_dir_game_file
while [ ! -f "$build_source_dir_game_file" ]; do
clear
echo
echo -e "\033[31m Hatalı dosya adı girdin \033[0m Lütfen tekrar yazın;"
echo
ls /usr/src/$build_source_dir/$build_source_dir_game/../
echo
echo -e "\033[32m Üstte listelenenler içinden seçmeniz gerekiyor; \033[0m"
cd /usr/src/$build_source_dir/$build_source_dir_game/../
read build_source_dir_game_file
done
clear
cd /usr/src/$build_source_dir/$build_source_dir_game/../
strip -s $build_source_dir_game_file
echo -e "\033[33m Dosya sıkıştırıldı. \033[0m"
echo -e "\033[32m Seçilen dosya yeniden adlandırılıyor... \033[0m"
sleep 2
cd /usr/src/$build_source_dir/$build_source_dir_game/../
mv $build_source_dir_game_file game
echo -e "\033[33m Dosya adı değiştirildi. \033[0m"
sleep 2
clear
echo
echo -e "\033[36m Build edilen dosyayı taşımak için game yolunu girin; \033[0m"
echo -e "\033[36m Örneğin; \n
share \n
share/bin \n share/game veya share/bin/game yapmayın sadece game dosyasının bulunduğu dizini girmeniz yeterlidir.
\033[0m"
echo
ls /usr/game/
echo
echo -e "\033[32m Üstte listelenenler içinden devam ederek dizin yolunu girin; \033[0m"
cd /usr/game/
read files_game_dir
while [ ! -f "$files_game_dir/game" ]; do
clear
echo
echo -e "\033[31m Girdiğiniz yolda game bulunamadı.\033[0m \033[36m Tekrar deneyin; \033[0m"
echo
echo -e "\033[36m Örneğin; \n
share \n
share/bin \n share/game veya share/bin/game yapmayın sadece game dosyasının bulunduğu dizini girmeniz yeterlidir.
\033[0m"
echo
ls /usr/game/
echo
echo -e "\033[32m Üstte listelenenler içinden devam ederek dizin yolunu girin; \033[0m"
cd /usr/game/
read files_game_dir
done
if [ $backup_cont = 1 ]
then
clear
echo -e "\033[32m Eski game dosyası yedekleniyor... \033[0m"
sleep 2
cd /usr/game/$files_game_dir && tar cvzf $build_source_dir"_game_"`date +"%Y_%m_%d_%H_%M_%S"`.tar.gz game
echo -e "\033[33m Yedek oluşturuldu. /usr/game/$files_game_dir üzerinden yedeğe ulaşabilirsiniz. \033[0m"
sleep 2
fi
clear
echo -e "\033[32m Eski game siliniyor... \033[0m"
sleep 2
rm /usr/game/$files_game_dir/game
echo -e "\033[32m Eski game silindi. Yeni dosya aktarılıyor... \033[0m"
sleep 2
cp /usr/src/$build_source_dir/$build_source_dir_game/../game /usr/game/$files_game_dir
echo -e "\033[33m Dosya aktarıldı. Dosya izinleri veriliyor... \033[0m"
rm /usr/src/$build_source_dir/$build_source_dir_game/../game
sleep 2
chmod 0777 /usr/game/$files_game_dir/game
clear
echo -e "\033[33m Dosya aktarıldı. Dosya izinleri Verildi. \033[0m"
;;
2*)
clear
echo
echo -e "\033[36m Farklı yollara sahip sourceler olduğundan dolayı \n
db src alanınızın yolunu girmeniz gerekiyor; \n
\033[31m
Örneğin; \n
$build_source_dir/source/db/src \n
$build_source_dir/db/src
\033[0m
\033[0m"
echo
echo -e "\033[32m $build_source_dir Dizin içeriğiniz altta listelenmektedir. \033[0m"
ls $build_source_dir
echo
echo -e "\033[32m Dizin yolunu örneklerde verildiği gibi girin. \033[0m"
echo
read build_source_dir_db
while [ ! -f "$build_source_dir/$build_source_dir_db/Main.cpp" ]; do
clear
echo
echo -e "\033[31m Dizin yolunu doğru girmedin \033[0m Lütfen tekrar yolu yazın;"
echo
echo -e "\033[36m Farklı yollara sahip sourceler olduğundan dolayı DB src alanınızın yolunu girmeniz gerekiyor; \n
\033[31m Örneğin; \n $build_source_dir/source/db/src \n $build_source_dir/db/src \033[0m"
echo
ls $build_source_dir
echo
echo -e "\033[32m Klasör yolunu tekrar girin; \033[0m"
read build_source_dir_db
done
clear
echo -e "\033[32m Build işlemi başlatılıyor... \033[0m"
sleep 2
echo -e "\033[32m Kaynak temiz duruma getiriliyor... \033[0m"
sleep 2
cd /usr/src/$build_source_dir/$build_source_dir_db
gmake clean
echo -e "\033[32m Kaynak derleniyor... \033[0m"
sleep 2
gmake dep
gmake -j20
clear
echo -e "\033[33m DB Source build işlemi tamamlandı. \033[0m"
echo
echo -e "\033[36m Oluşan DB dosyasını sıkıştırmak için yeni oluşan dosyanın adını girin. \033[0m"
echo
ls /usr/src/$build_source_dir/$build_source_dir_db/../
echo
echo -e "\033[32m Üstte listelenenler içinden seçmeniz gerekiyor; \033[0m"
cd /usr/src/$build_source_dir/$build_source_dir_db/../
read build_source_dir_game_file
while [ ! -f "$build_source_dir_game_file" ]; do
clear
echo
echo -e "\033[31m Hatalı dosya adı girdin \033[0m Lütfen tekrar yazın;"
echo
ls /usr/src/$build_source_dir/$build_source_dir_db/../
echo
echo -e "\033[32m Üstte listelenenler içinden seçmeniz gerekiyor; \033[0m"
cd /usr/src/$build_source_dir/$build_source_dir_db/../
read build_source_dir_game_file
done
clear
echo -e "\033[32m Seçilen dosya yeniden adlandırılıyor... \033[0m"
sleep 2
cd /usr/src/$build_source_dir/$build_source_dir_db/../
mv $build_source_dir_game_file db
echo
echo -e "\033[33m Dosya adı değiştirildi. \033[0m"
sleep 2
clear
echo
echo -e "\033[36m Build edilen dosyayı taşımak için DB yolunu girin; \033[0m"
echo -e "\033[36m Örneğin; \n
share \n
share/bin \n share/db veya share/bin/db yapmayın sadece DB dosyasının bulunduğu dizini girmeniz yeterlidir.
\033[0m"
echo
ls /usr/game/
echo
echo -e "\033[32m Üstte listelenenler içinden devam ederek dizin yolunu girin; \033[0m"
cd /usr/game/
read files_db_dir
while [ ! -f "$files_db_dir/db" ]; do
clear
echo
echo -e "\033[31m Girdiğiniz yolda DB bulunamadı.\033[0m \033[36m Tekrar deneyin; \033[0m"
echo
echo -e "\033[36m Örneğin; \n
share \n
share/bin \n share/db veya share/bin/db yapmayın sadece DB dosyasının bulunduğu dizini girmeniz yeterlidir.
\033[0m"
echo
ls /usr/game/
echo
echo -e "\033[32m Üstte listelenenler içinden devam ederek dizin yolunu girin; \033[0m"
cd /usr/game/
read files_db_dir
done
if [ $backup_cont = 1 ]
then
clear
echo -e "\033[32m Eski DB dosyası yedekleniyor... \033[0m"
sleep 2
cd /usr/game/$files_db_dir && tar cvzf $build_source_dir"_db_"`date +"%Y_%m_%d_%H_%M_%S"`.tar.gz game
clear
echo -e "\033[33m Yedek oluşturuldu. /usr/game/$files_db_dir üzerinden yedeğe ulaşabilirsiniz. \033[0m"
sleep 2
fi
echo -e "\033[32m Eski DB siliniyor... \033[0m"
sleep 2
echo
rm /usr/game/$files_db_dir/db
echo -e "\033[32m Eski DB silindi. Yeni dosya aktarılıyor... \033[0m"
sleep 2
echo
cp /usr/src/$build_source_dir/$build_source_dir_db/../db /usr/game/$files_db_dir
echo -e "\033[33m DB aktarıldı. Dosya izinleri veriliyor... \033[0m"
rm /usr/src/$build_source_dir/$build_source_dir_db/../db
sleep 2
clear
chmod 0777 /usr/game/$files_db_dir/db
echo -e "\033[33m DB aktarıldı. Dosya izinleri Verildi. \033[0m"
;;
3*)
clear
echo
echo -e "\033[36m Farklı yollara sahip sourceler olduğundan dolayı \n
game src alanınızın yolunu girmeniz gerekiyor; \n
\033[31m
Örneğin; \n
$build_source_dir/source/game/src \n
$build_source_dir/game/src
\033[0m
\033[0m"
echo
echo -e "\033[32m $build_source_dir Dizin içeriğiniz altta listelenmektedir. \033[0m"
ls $build_source_dir
echo
echo -e "\033[32m Dizin yolunu örneklerde verildiği gibi girin. \033[0m"
echo
read build_source_dir_game
while [ ! -f "$build_source_dir/$build_source_dir_game/input.cpp" ]; do
clear
echo
echo -e "\033[31m Dizin yolunu doğru girmedin \033[0m Lütfen tekrar yolu yazın;"
echo
echo -e "\033[36m Farklı yollara sahip sourceler olduğundan dolayı game src alanınızın yolunu girmeniz gerekiyor; \n
\033[31m Örneğin; \n $build_source_dir/source/game/src \n $build_source_dir/game/src \033[0m"
echo
ls $build_source_dir
echo
echo -e "\033[32m Klasör yolunu tekrar girin; \033[0m"
read build_source_dir_game
done
clear
echo -e "\033[32m Build işlemi başlatılıyor... \033[0m"
sleep 2
echo -e "\033[32m Kaynak temiz duruma getiriliyor... \033[0m"
sleep 2
cd /usr/src/$build_source_dir/$build_source_dir_game
gmake clean
echo -e "\033[32m Kaynak derleniyor... \033[0m"
sleep 2
gmake dep
gmake -j20
clear
echo -e "\033[33m GAME Source build işlemi tamamlandı. \033[0m"
echo
echo -e "\033[36m Oluşan game dosyasını sıkıştırmak için yeni oluşan dosyanın adını girin. \033[0m"
echo
ls /usr/src/$build_source_dir/$build_source_dir_game/../
echo
echo -e "\033[32m Üstte listelenenler içinden seçmeniz gerekiyor; \033[0m"
cd /usr/src/$build_source_dir/$build_source_dir_game/../
read build_source_dir_game_file
while [ ! -f "$build_source_dir_game_file" ]; do
clear
echo
echo -e "\033[31m Hatalı dosya adı girdin \033[0m Lütfen tekrar yazın;"
echo
ls /usr/src/$build_source_dir/$build_source_dir_game/../
echo
echo -e "\033[32m Üstte listelenenler içinden seçmeniz gerekiyor; \033[0m"
cd /usr/src/$build_source_dir/$build_source_dir_game/../
read build_source_dir_game_file
done
clear
cd /usr/src/$build_source_dir/$build_source_dir_game/../
strip -s $build_source_dir_game_file
echo -e "\033[33m Dosya sıkıştırıldı. \033[0m"
echo -e "\033[32m Seçilen dosya yeniden adlandırılıyor... \033[0m"
sleep 2
cd /usr/src/$build_source_dir/$build_source_dir_game/../
mv $build_source_dir_game_file game
echo -e "\033[33m Dosya adı değiştirildi. \033[0m"
sleep 2
clear
echo
echo -e "\033[36m Build edilen dosyayı taşımak için game yolunu girin; \033[0m"
echo -e "\033[36m Örneğin; \n
share \n
share/bin \n share/game veya share/bin/game yapmayın sadece game dosyasının bulunduğu dizini girmeniz yeterlidir.
\033[0m"
echo
ls /usr/game/
echo
echo -e "\033[32m Üstte listelenenler içinden devam ederek dizin yolunu girin; \033[0m"
cd /usr/game/
read files_game_dir
while [ ! -f "$files_game_dir/game" ]; do
clear
echo
echo -e "\033[31m Girdiğiniz yolda game bulunamadı.\033[0m \033[36m Tekrar deneyin; \033[0m"
echo
echo -e "\033[36m Örneğin; \n
share \n
share/bin \n share/game veya share/bin/game yapmayın sadece game dosyasının bulunduğu dizini girmeniz yeterlidir.
\033[0m"
echo
ls /usr/game/
echo
echo -e "\033[32m Üstte listelenenler içinden devam ederek dizin yolunu girin; \033[0m"
cd /usr/game/
read files_game_dir
done
if [ $backup_cont = 1 ]
then
clear
echo -e "\033[32m Eski game dosyası yedekleniyor... \033[0m"
sleep 2
cd /usr/game/$files_game_dir && tar cvzf $build_source_dir"_game_"`date +"%Y_%m_%d_%H_%M_%S"`.tar.gz game
echo -e "\033[33m Yedek oluşturuldu. /usr/game/$files_game_dir üzerinden yedeğe ulaşabilirsiniz. \033[0m"
sleep 2
fi
clear
echo -e "\033[32m Eski game siliniyor... \033[0m"
sleep 2
rm /usr/game/$files_game_dir/game
echo -e "\033[32m Eski game silindi. Yeni dosya aktarılıyor... \033[0m"
sleep 2
cp /usr/src/$build_source_dir/$build_source_dir_game/../game /usr/game/$files_game_dir
echo -e "\033[33m Dosya aktarıldı. Dosya izinleri veriliyor... \033[0m"
rm /usr/src/$build_source_dir/$build_source_dir_game/../game
sleep 2
chmod 0777 /usr/game/$files_game_dir/game
clear
echo -e "\033[33m GAME aktarıldı. Dosya izinleri Verildi. \033[0m"
echo
echo -e "\033[33m DB Build edilmek için hazırlanıyor... \033[0m"
sleep 3
clear
cd /usr/src
echo
echo -e "\033[36m Farklı yollara sahip sourceler olduğundan dolayı \n
db src alanınızın yolunu girmeniz gerekiyor; \n
\033[31m
Örneğin; \n
$build_source_dir/source/db/src \n
$build_source_dir/db/src
\033[0m
\033[0m"
echo
echo -e "\033[32m $build_source_dir Dizin içeriğiniz altta listelenmektedir. \033[0m"
ls $build_source_dir
echo
echo -e "\033[32m Dizin yolunu örneklerde verildiği gibi girin. \033[0m"
echo
read build_source_dir_db
while [ ! -f "$build_source_dir/$build_source_dir_db/Main.cpp" ]; do
clear
echo
echo -e "\033[31m Dizin yolunu doğru girmedin \033[0m Lütfen tekrar yolu yazın;"
echo
echo -e "\033[36m Farklı yollara sahip sourceler olduğundan dolayı DB src alanınızın yolunu girmeniz gerekiyor; \n
\033[31m Örneğin; \n $build_source_dir/source/db/src \n $build_source_dir/db/src \033[0m"
echo
ls $build_source_dir
echo
echo -e "\033[32m Klasör yolunu tekrar girin; \033[0m"
read build_source_dir_db
done
clear
echo -e "\033[32m Build işlemi başlatılıyor... \033[0m"
sleep 2
echo -e "\033[32m Kaynak temiz duruma getiriliyor... \033[0m"
sleep 2
cd /usr/src/$build_source_dir/$build_source_dir_db
gmake clean
echo -e "\033[32m Kaynak derleniyor... \033[0m"
sleep 2
gmake dep
gmake -j20
clear
echo -e "\033[33m DB Source build işlemi tamamlandı. \033[0m"
echo
echo -e "\033[36m Oluşan DB dosyasını sıkıştırmak için yeni oluşan dosyanın adını girin. \033[0m"
echo
ls /usr/src/$build_source_dir/$build_source_dir_db/../
echo
echo -e "\033[32m Üstte listelenenler içinden seçmeniz gerekiyor; \033[0m"
cd /usr/src/$build_source_dir/$build_source_dir_db/../
read build_source_dir_game_file
while [ ! -f "$build_source_dir_game_file" ]; do
clear
echo
echo -e "\033[31m Hatalı dosya adı girdin \033[0m Lütfen tekrar yazın;"
echo
ls /usr/src/$build_source_dir/$build_source_dir_db/../
echo
echo -e "\033[32m Üstte listelenenler içinden seçmeniz gerekiyor; \033[0m"
cd /usr/src/$build_source_dir/$build_source_dir_db/../
read build_source_dir_game_file
done
clear
echo -e "\033[32m Seçilen dosya yeniden adlandırılıyor... \033[0m"
sleep 2
cd /usr/src/$build_source_dir/$build_source_dir_db/../
mv $build_source_dir_game_file db
echo
echo -e "\033[33m Dosya adı değiştirildi. \033[0m"
sleep 2
clear
echo
echo -e "\033[36m Build edilen dosyayı taşımak için DB yolunu girin; \033[0m"
echo -e "\033[36m Örneğin; \n
share \n
share/bin \n share/db veya share/bin/db yapmayın sadece DB dosyasının bulunduğu dizini girmeniz yeterlidir.
\033[0m"
echo
ls /usr/game/
echo
echo -e "\033[32m Üstte listelenenler içinden devam ederek dizin yolunu girin; \033[0m"
cd /usr/game/
read files_db_dir
while [ ! -f "$files_db_dir/db" ]; do
clear
echo
echo -e "\033[31m Girdiğiniz yolda DB bulunamadı.\033[0m \033[36m Tekrar deneyin; \033[0m"
echo
echo -e "\033[36m Örneğin; \n
share \n
share/bin \n share/db veya share/bin/db yapmayın sadece DB dosyasının bulunduğu dizini girmeniz yeterlidir.
\033[0m"
echo
ls /usr/game/
echo
echo -e "\033[32m Üstte listelenenler içinden devam ederek dizin yolunu girin; \033[0m"
cd /usr/game/
read files_db_dir
done
if [ $backup_cont = 1 ]
then
clear
echo -e "\033[32m Eski DB dosyası yedekleniyor... \033[0m"
sleep 2
cd /usr/game/$files_db_dir && tar cvzf $build_source_dir"_db_"`date +"%Y_%m_%d_%H_%M_%S"`.tar.gz game
clear
echo -e "\033[33m Yedek oluşturuldu. /usr/game/$files_db_dir üzerinden yedeğe ulaşabilirsiniz. \033[0m"
sleep 2
fi
echo -e "\033[32m Eski DB siliniyor... \033[0m"
sleep 2
echo
rm /usr/game/$files_db_dir/db
echo -e "\033[32m Eski DB silindi. Yeni dosya aktarılıyor... \033[0m"
sleep 2
echo
cp /usr/src/$build_source_dir/$build_source_dir_db/../db /usr/game/$files_db_dir
echo -e "\033[33m DB aktarıldı. Dosya izinleri veriliyor... \033[0m"
rm /usr/src/$build_source_dir/$build_source_dir_db/../db
sleep 2
clear
chmod 0777 /usr/game/$files_db_dir/db
echo -e "\033[33m DB aktarıldı. Dosya izinleri Verildi. \033[0m"
;;
esac
echo
echo -e "\033[33m Build işlemi tamamlandı. \033[0m"