Web Analytics

nothing-but-nix

⭐ 126 stars Turkish by wimpysworld

🌐 Dil

Sadece Nix

GitHub Actions runner'ınızı önceden yüklü gereksiz yazılımları acımasızca kaldırarak bir Nix ❄️ gücüne dönüştürün.

GitHub Actions runner'ları Nix için çok az disk alanı ile gelir - sadece ~20GB civarı. Sadece Nix gereksiz yazılımları acımasızca temizler, Nix deposu için size 65GB ila 130GB alan kazandırır! 💪

Kullanım 🔧

Bu işlemi iş akışınızda Nix'i yüklemeden önce ekleyin:

jobs:
  build:
    runs-on: ubuntu-latest
    permissions:
      contents: read
      id-token: write
    steps:
      
  • uses: actions/checkout@v4
  • uses: wimpysworld/nothing-but-nix@main
  • name: Install Nix
uses: DeterminateSystems/nix-installer-action@main
  • name: Run Nix
run: | nix --version # Your Nix-powered steps here...

Gereksinimler ️✔️

Sorun: Nix'in Gelişmesi İçin Yer Açmak 🌱

Standart GitHub Actions runner'ları, bir Nix iş akışında asla kullanmayacağınız "gereksiz yazılımlarla" doludur:

Bu şişkinlik, Nix store'unuz için yalnızca ~20GB bırakır - ciddi Nix derlemeleri için zar zor yeterli! 😞

Çözüm: Sadece Nix ️❄️

Sadece Nix, GitHub Actions runner'larına karşı yakıp yıkma yaklaşımı benimser ve disk alanını acımasızca geri kazanmak için iki aşamalı bir saldırı uygular:

Dosya sistemi temizliği, Fast Unix Commands (FUC) projesinden rmz tarafından sağlanır - alan geri kazanımını yıldırım hızında yapan yüksek performanslı bir rm alternatifidir! ⚡ Sonuç? 65GB ila 130GB Nix'e hazır alanı olan bir GitHub Actions runner'ı! 😁

Dinamik Hacim Büyümesi

Diğer çözümlerden farklı olarak, Sadece Nix /nix hacminizi dinamik olarak büyütür:

/nix hacmi iş akışı çalışırken otomatik olarak büyür 🎩🪄

Silahını Seç: Hatchet Protocol 🪓

hatchet-protocol girdisiyle yok etme seviyesini kontrol edin 💥:

- uses: wimpysworld/nothing-but-nix@main
  with:
    hatchet-protocol: 'cleave'  # Options: holster, carve, cleave (default), rampage

#### Protokol Karşılaştırması ⚖️

| Protokol | /nix | Açıklama | Apt temizle | Docker temizle | Snap temizle | Temizlenen dosya sistemleri | |----------|--------|--------------------------------------------------|-------------|----------------|--------------|-------------------------------| | Holster | ~65GB | Baltayı kılıfında tut, alanı /mnt'den kullan | Hayır | Hayır | Hayır | Yok | | Carve | ~85GB | Boş alanı / ve /mnt'den birleştir ve oluştur| Hayır | Hayır | Hayır | Yok | | Cleave | ~115GB | Büyük paketlere güçlü, kararlı kesikler at | Minimal | Evet | Evet | /opt ve /usr/local | | Rampage | ~130GB | Tüm şişkinliği acımasızca, vahşice yok et | Agresif | Evet | Evet | Muahahaha! 🔥🌎 |

Aklı başında seçim yap:

Katliama Tanık Olun 🩸

Varsayılan olarak, temizleme işlemi iş akışınız devam ederken arka planda sessizce yürütülür. Ama katliamı gerçek zamanlı izlemek isterseniz:

- uses: wimpysworld/nothing-but-nix@main
  with:
    ️hatchet-protocol: 'cleave'
    witness-carnage: true  # Default: false

Güvenli Bölgeleri Özelleştirin 🛡️

Nix deposunun alan kaplamasından ne kadar yer ayıracağınızı özel güvenli bölge boyutlarıyla kontrol edin:

- uses: wimpysworld/nothing-but-nix@main
  with:
    ️hatchet-protocol: 'cleave'
    root-safe-haven: '3072'   # Reserve 3GB on the / filesystem
    mnt-safe-haven: '2048'    # Reserve 2GB on the /mnt filesystem

Bu güvenli alanlar, alan geri kazanımı sırasında acımasızca ne kadar alanın (MB cinsinden) korunacağını tanımlar:

Dosya sistemlerinizde daha fazla nefes alma alanına ihtiyacınız varsa bu değerleri artırın veya hiç merhamet göstermemek için azaltın! 😈

/nix Dizininin Kullanıcıya Sahipliğini Verin (Nix İzin Fermanı) 🧑‍⚖️

Bazı Nix yükleyicileri veya yapılandırmaları, /nix dizininin mevcut kullanıcı tarafından yazılabilir olmasını bekler. Varsayılan olarak, /nix root'a aittir. Kullanıcı sahipliğine ihtiyacınız varsa (örneğin, tüm işlemler için /nix içinde sudo kullanmayan bazı Nix yükleyici betikleri için), nix-permission-edicti etkinleştirebilirsiniz:

- uses: wimpysworld/nothing-but-nix@main
  with:
    nix-permission-edict: true  # Default: false

nix-permission-edict değeri true olarak ayarlandığında, işlem /nix bağlandıktan sonra sudo chown -R "$(id --user)":"$(id --group)" /nix komutunu çalıştıracaktır.

Şimdi bu muhteşem Nix deposu alanıyla harika bir şeyler inşa et! ❄️ --- Tranlated By Open Ai Tx | Last indexed: 2025-07-24 ---