Pardus Uçbirim Üzerine Google Gemini Entegrasyonu
Google Gemini'nin güçlü altyapısını ve geliştiriciler için sunduğu cömert ücretsiz API kullanım hakkını Pardus'un esnekliğiyle birleştiren kapsamlı bir eğitim.
Pardus ve ETAP kullanıcıları için, en güncel Gemini 2.5 modelini kullanan, kurulum hatası vermeyen, safkan Linux çözümü:
Linux'un kendi gücüyle (Bash, Curl ve JQ) Google'ın en yeni yapay zeka modeli Gemini 2.5'i terminalinize nasıl entegre edeceğinizi anlatacağım.
Bu yöntem hafif, hızlı ve kırılmazdır.
📋 Neden Bu Yöntem?
Bağımlılık Yok: Python sürümünüz ne olursa olsun çalışır.
En Güncel Model: Google'ın en yeni
gemini-2.5-flashmodelini kullanır.Sistem Dostu: Sisteminize ekstra ağır paketler yüklemez.
Pipe Desteği:
cat log.txt | geminişeklinde komut çıktılarını okuyabilir.
Adım 1: Gerekli Araçların Kurulumu
Google sunucularıyla konuşmak (curl) ve gelen cevabı okumak (jq) için iki küçük araca ihtiyacımız var. Pardus terminalini açın ve şunu yazın:
sudo apt update
sudo apt install curl jq -y
🔑 Adım 2: API Anahtarının Alınması
Yapay zekayı kullanmak için bir "giriş kartına" ihtiyacımız var.
adresine gidin.Google AI Studio Google hesabınızla giriş yapın.
"Get API key" butonuna tıklayın ve anahtarınızı kopyalayın.
Adım 3: Akıllı Asistan Betiğinin (Script) Oluşturulması
Şimdi terminalin kalbine yerleşecek o sihirli dosyayı oluşturuyoruz.
Dosyayı oluşturun:
Bash:nano ~/gemini_ai.shAşağıdaki kodları kopyalayın ve dosyanın içine yapıştırın.
⚠️ ÖNEMLİ: BURAYA_API_KEY_YAPISTIRIN kısmını kendi anahtarınızla değiştirin.
#!/bin/bash
# --- YAPILANDIRMA ---
# API Anahtarınızı tırnak içine yapıştırın
API_KEY="BURAYA_API_KEY_YAPISTIRIN"
# Model: En güncel ve hızlı versiyon (Sizin hesabınızla test edilmiştir)
MODEL="gemini-2.5-flash"
# --- GİRDİ KONTROLÜ ---
# Pipe (stdin) kontrolü (Örn: cat dosya | gemini)
PIPE_INPUT=""
if [ -p /dev/stdin ]; then
PIPE_INPUT=$(cat)
fi
# Argüman kontrolü (Örn: gemini "merhaba")
ARGS_INPUT="$*"
# Girdileri Birleştirme
if [ -n "$PIPE_INPUT" ]; then
FULL_PROMPT="--- İNCELENECEK VERİ ---\n$PIPE_INPUT\n--- VERİ SONU ---\n\nİSTEK: $ARGS_INPUT"
else
FULL_PROMPT="$ARGS_INPUT"
fi
# Girdi yoksa uyarı ver
if [ -z "$FULL_PROMPT" ]; then
echo "Kullanım: gemini 'sorunuz' VEYA cat dosya | gemini"
exit 1
fi
# Sistem Rolü (Yapay Zekanın Kimliği)
SYSTEM_ROLE="Sen Pardus Linux sisteminde çalışan uzman bir asistansın. Cevapların Türkçe, net ve çözüm odaklı olsun. Kod istenirse sadece kodu ver."
# --- JSON VERİSİNİ HAZIRLAMA ---
# jq aracı ile güvenli JSON oluşturuyoruz (Tırnak işaretleri vb. bozulmaz)
JSON_DATA=$(jq -n \
--arg role "$SYSTEM_ROLE" \
--arg text "$FULL_PROMPT" \
'{
contents: [{ role: "user", parts: [{ text: $text }] }],
system_instruction: { parts: [{ text: $role }] }
}')
# --- GOOGLE ILE İLETİŞİM (CURL) ---
echo -e "\n\033[1;36m🤖 PARDUS AI ($MODEL) Düşünüyor...\033[0m"
RESPONSE=$(curl -s -X POST \
"https://generativelanguage.googleapis.com/v1beta/models/$MODEL:generateContent?key=$API_KEY" \
-H 'Content-Type: application/json' \
-d "$JSON_DATA")
# --- SONUÇ VE HATA YÖNETİMİ ---
ERROR_CHECK=$(echo "$RESPONSE" | jq -r '.error.message // empty')
if [ -n "$ERROR_CHECK" ]; then
echo -e "\n\033[1;31m❌ HATA OLUŞTU:\033[0m $ERROR_CHECK"
else
# Cevabı temizle ve ekrana yazdır
echo "$RESPONSE" | jq -r '.candidates[0].content.parts[0].text'
echo ""
fi
Kaydedip çıkın (
Ctrl+O->Enter->Ctrl+X).Dosyayı çalıştırılabilir yapın:
Bash:chmod +x ~/gemini_ai.sh
Adım 4: Komutun Kısayol (Alias) Olarak Tanımlanması
Bu scripti her yerden sadece gemini yazarak çağırmak için:
Bash ayar dosyasını açın:
Bash:nano ~/.bashrcEn alta şu satırı ekleyin:
Bash:alias gemini='~/gemini_ai.sh'Ayarları güncelleyin:
Bash:source ~/.bashrc
Kullanım Senaryoları (Sistem Yöneticileri İçin)
Artık Pardus terminalinizde bir yapay zeka var. İşte yapabilecekleriniz:
1. Sistem Loglarını Analiz Etme
Sistemde bir hata var ve loglar çok karışık. Yapay zekaya okutun:
dmesg | tail -n 20 | gemini "Bu loglarda endişe verici bir hata var mı? Özetle."
2. Komut Hatırlama
Unuttuğunuz komutları sorun:
gemini "Tüm alt klasörlerdeki .jpg dosyalarını bulup /tmp klasörüne kopyalayan komut nedir?"
3. Git Commit Mesajı Yazdırma
Yazılımcılar için hayat kurtarıcıdır:
git diff | gemini "Bu değişiklikler için uygun bir commit mesajı yaz."
Pardus ETAP (Akıllı Tahta) İçin Özelleştirme
Öğretmenlerimizin akıllı tahtada ders anlatırken hızlı içerik üretmesi için .bashrc dosyasına şu özel fonksiyonları da ekleyebilirsiniz:
# Soru Üretme Fonksiyonu
function soru() {
~/gemini_ai.sh "$1 konusu hakkında $2 adet çoktan seçmeli soru hazırla. Cevap anahtarı en altta olsun."
}
# Konu Özeti Fonksiyonu
function ozet() {
~/gemini_ai.sh "$1 konusunu ilköğretim seviyesinde 5 maddede özetle."
}
Örnek Kullanım:
Öğretmen tahtada terminali açar ve yazar:
soru "Milli Mücadele Dönemi" 5 -> Anında 5 adet test sorusu gelir.
ozet "Fotosentez" -> Konunun basit bir özeti gelir.
Sonuç
Pardus işletim sisteminize dışarıdan hiçbir ağır program yüklemeden, sadece 50 satırlık bir Bash scripti ile dünyanın en güçlü yapay zekalarından birini entegre ettiniz.
Güvenli, hızlı ve tamamen sizin kontrolünüzde. İyi çalışmalar! 🇹🇷
Hazırladığımız "Saf Bash + Curl" yöntemi, terminalin stdin (standart girdi) ve stdout (standart çıktı) yeteneklerini kullandığı için, bu aracı Pardus'taki diğer tüm araçlarla (grep, cat, ls, git vb.) konuşturabilirsiniz.
İşte Pardus terminalinde Gemini 2.5'i kullanabileceğiniz ileri seviye senaryolar:
1. Güvenlik ve Ağ Yönetimi
Senaryo: Sunucunuzda şüpheli bir IP adresi tespit ettiniz veya karmaşık bir güvenlik duvarı kuralı yazmanız gerekiyor.
IP Analizi:
Bash:gemini "192.168.1.50 IP adresi yerel ağda ne anlama gelir? Bu IP'den gelen trafiği engellemek için `iptables` komutu ne olmalıdır?"SSH Config Güvenliği:
SSH ayar dosyanızı yapay zekaya okutup güvenlik açıklarını buldurun.
Bash:cat /etc/ssh/sshd_config | grep -v "^#" | gemini "Bu SSH yapılandırmasındaki güvenlik risklerini maddeler halinde listele."(Not:
grep -v "^#"komutu yorum satırlarını filtreler, böylece yapay zekaya sadece aktif ayarlar gider.)
2. Yazılım Geliştirme ve Kod Refactoring
Senaryo: Elinizde ne işe yaradığını anlamadığınız karışık bir Python veya Bash kodu var.
Kod Açıklama:
Bash:cat karisik_script.py | gemini "Bu kod tam olarak ne yapıyor? Adım adım açıkla."Kod Dönüştürme (Dilden Dile):
Bir Python fonksiyonunu C++ veya Go diline çevirin.
Bash:cat islem.py | gemini "Bu Python kodunu C++ diline çevir ve gcc ile nasıl derleyeceğimi söyle."Hata Ayıklama (Debugging):
Programın verdiği hatayı direkt sorarak çözüm isteyin.
Bash:gemini "Python'da 'IndentationError: unexpected indent' hatası alıyorum, sebebi ne olabilir ve nasıl düzeltirim?"
3. Veri İşleme ve Format Dönüştürme
Senaryo: Elinizde CSV formatında bir liste var ama size JSON lazım. Veya bir XML dosyasını YAML'a çevirmek istiyorsunuz.
CSV'den JSON'a:
Bash:cat ogrenci_listesi.csv | gemini "Bu veriyi JSON formatına dönüştür." > ogrenci_listesi.json(Sonuç direkt olarak yeni bir dosyaya kaydedilir.)
HTML'den Veri Çekme:
Bir web sayfasının kaynak kodundan belirli bilgileri ayıklayın.
Bash:cat sayfa.html | gemini "Bu HTML kodundaki tüm <img> etiketlerinin 'src' (resim yolu) kısımlarını listele."
4. Metin İşlemleri ve Ofis İşleri
Senaryo: Uzun bir raporu özetlemeniz veya İngilizce bir e-postayı Türkçeye çevirmeniz gerekiyor.
Özetleme:
Bash:cat uzun_rapor.txt | gemini "Bu metni yöneticim için 3 maddelik bir yönetici özeti haline getir."Dil Bilgisi Düzeltme:
Bash:gemini "'Pardus is operating system national of Turkey' cümlesindeki gramer hatalarını düzelt ve daha profesyonel yaz."Regex (Düzenli İfade) Oluşturma:
En zor konulardan biri olan Regex'i yapay zekaya yazdırın.
Bash:gemini "Bir metin içindeki tüm T.C. Kimlik Numaralarını (11 haneli sayı) bulan 'grep' komutunu yaz."
5. Pardus Sistem Bakımı (Otomasyon)
Senaryo: Rutin işleri otomatiğe bağlamak istiyorsunuz (Cron Jobs).
Yedekleme Scripti Yazdırma:
Bash:gemini "Masaüstündeki 'Projeler' klasörünü her gün saat 18:00'de '/var/backups' altına tarihli .tar.gz olarak yedekleyen bir Bash scripti ve Cronjob satırı yaz."Disk Temizliği Önerisi:
Bash:gemini "Linux sistemimde /var/log klasörü çok şişti. Güvenli bir şekilde yer açmak için hangi komutları kullanabilirim?"
6. ETAP (Eğitim) İçin Eğlenceli Senaryolar
Senaryo: Öğretmen dersi renklendirmek istiyor.
ASCII Sanatı:
Bash:gemini "Pardus'un simgesi olan 'Anadolu Parsı' için terminalde görünecek havalı bir ASCII art (metinle resim) çiz."Rastgele Veri Üretme:
Matematik öğretmeni istatistik dersi için veriye ihtiyaç duyar.
Bash:gemini "Bana 1 ile 100 arasında rastgele 20 sayı üret ve bunları virgülle ayrılmış liste olarak ver."
Profesyonel İpucu: Çıktıyı Dosyaya Kaydetme
Gemini'nin ürettiği cevabı kopyalamakla uğraşmayın, Linux'un yönlendirme operatörünü (>) kullanın:
# Kod ürettirip direkt dosyaya kaydetme
gemini "Python ile hesap makinesi kodu yaz" > hesap_makinesi.py
# Sonra hemen çalıştırın
python3 hesap_makinesi.py
Bu senaryolarla Pardus terminaliniz artık sadece bir komut satırı değil, akıllı bir iş istasyonuna dönüşmüş oldu.
Yorumlar