Linux Snap ve Döngü Aygıtları

Merhabalar, uzun süredir bir yazı yayımlamadım. Bunun nedeni kendimi, bir yazı yazmak için konu belirlemek, bu konu üzerinde araştırma yapmak, neyi nasıl yazacağımı planlamak ve yazıyı oluşturmak gibi benim için uğraştırıcı bir süreci tamamlamak zorunda hissetmemden kaynaklanıyor. Bu yazıda bu süreci atlayıp detay araştırma yapmadan kısa bir araştırma sonucu elde ettiğim bilgileri aklıma ilk geldiği gibi yazacağım. Belki bundan sonra bu şekilde devam ederim.

Bu yazımın konusu yeni keşfettiğim bir sistem. Linux kullanıcıları her dağıtımın kendisine ait bir uygulama deposunun olduğunu ve uygulamaların bir çoğunun bu depo aracılığı ile kurulup güncellendiğini bilir. Çoğu zaman kullandığınız programın yeni versiyonunun kullandığınız dağıtımın deposuna girmesi yeni sürümün yayımlanmasında belli bir süre sonra gerçekleşir. Kimi dağıtım daha hızlı bir şekilde yeni versiyonu hazırlarken kimisi biraz daha yavaş olur. Her dağıtımın kurulum paketinin hazırlanması da farklılıklar gösterir. Bu durum linux dünyasında gereksiz bir yük oluşturmaktadır. Uygulamanın sahibinin uygulamayı yayımlaması yetmez birde farklı dağıtımlar için paketleri hazırlaması gerekir. Eğer bunu uygulama geliştiricisi yapmazsa bu görev dağıtım geliştiricilerine kalır. Yeni keşfettiğim sistem bu sorunun önüne geçmek için büyük fırsat. Bu sistemin adı Snapcraft.

Snapcraft

Snapcraft, tıpkı composer,npm ve bower gibi bir paket yöneticisi. Linux sistemler için geliştirilmiş uygulamaların kurulumu güncellenmesi ve sistemden kaldırılması işlemlerini kolaylıkla yapmamızı sağlıyor ve popüler Linux dağıtımları tarafından destekleniyor. Snap Destekleyen Dağıtımlar

Bir uygulama kurmak için aşağıdaki gibi bir komutu çalıştırmanız yeterli (önr. libreoffice kurulumu):

[bash]sudo snap install libreoffice[/bash]

herhangi bir uygulamayı güncellemek için :

[bash]sudo snap refresh libreoffice[/bash]

tüm uygulamaları güncellemek için herhangi bir uygulama ismi vermeden refresh parametresini çalıştırmanız yeterli. Bir uygulamanın snap paketi olup olmadığını kontrol etmek için find parametresini kullanabilirsiniz.

[bash]sudo snap find <uygulama adı>[/bash]

daha fazla komut için şu sayfayı inceleyebilirsiniz: https://www.ubuntu.com/desktop/snappy

Döngü Aygıtları

Snap ile bir uygulama kurduğunuzda dosya yöneticinize yeni aygıtlar eklendiğini göreceksiniz. Bu aygıtlar döngü aygıtları olarak isimlendirilmekte (/dev/loop). Snap ile bir uygulama kurulumu yaptığınızda bu uygulama bilgisayarınıza yeni bir aygıtmış gibi kurulmaktadır. Gördüğünüz bu döngü aygıtları kurduğunuz programlara ait dosyaların bulunduğu birer flash bellek gibi bilgisayarınıza bağlanmış halidir.

Görüntü kirliliğinin önüne geçmek için bu aygıtları dosya yöneticinizde gizleyebilirsiniz.

Döngü aygıtı gizle

Döngü aygıtları hakkında daha fazla bilgi için : https://www.wikiwand.com/en/Loop_device

Devam

Scratch 2 Projelerini .exe Olarak Kaydetmek

Scratch özellikle 8 ile 16 yaş arasındaki çocuklar olmak üzere her yaştan insanlara programla temellerini öğretmek ve yeteneklerini geliştirmek için MIT üniversitesinde geliştirilen bir programlama dilidir. Scratch ile kendi etkileşimli hikayenizi oluşturabilir, oyunlar ve animasyonlar hazırlayabilirsiniz. Scratch ile yaratıcı düşünme, mantıksal düşünme ve işbirliği gibi 21. yüz yılın temel niteliklerini kazanabilirsiniz. Scratch kullanan bir öğrencinin neler kazandığını Kodlamayı Öğren, Öğrenmeyi Kodla başlıklı yazıyı okuyarak öğrenebilirsiniz.

Scratch hakkında daha fazla bilgi almak ve kullanmak için Scratch web sayfasını ziyaret edebilirsiniz.

İnternet bağlantısı olmadan da Scratch 2 uygulamasını kullanabilmek için Scratch 2 Ofline Editor uygulamasını kullanabilirsiniz.

Bu yazıda Scratch 2 ile oluşturduğunuz projenizi nasıl herhangi bir bilgisayarda bağımsız olarak çalışabilecek şekilde kayıt edip (.exe veya .snapp) İnternet ve Scratch 2 uygulaması olmadan kullanabileceğinizi göstereceğim.

Normal şartlarda Scratch 2 ile hazırladığınız bir projeyi başka insanlarla paylaşmanın iki yöntemi vardır. Birincisi hazırladığınız projeyi Scratch 2 web sayfasında paylaşmak. İkincisi ise hazırladığınız projeyi .sb2 formatında kayıt ederek bu dosyayı diğerleriyle paylaşmak. Birinci yöntemi İnternet bağlantısı olmayan bir kişi kullanamayacaktır. İkinci yöntemi kullandığımızda ise projemizi gönderdiğimiz diğer kişinin Scratch 2 programına sahip olması gerekmektedir.

Scratch kullanmayan ve/veya interneti olmayan bir arkadaşınıza projenizi göstermek istediğinizde Scratch 2 projenizi windows için exe diğer sistemler için de .snapp uzantılı bağımsız çalışabilen dosyalar olarak kaydedebilirsiniz. Bu işlem için Scratch ın biraz daha gelişmiş versiyonu olan Snap programlama dilinin bize sunduğu hizmetleri kullanacağız.

Snap Nedir?

Snap tıpkı Scratch gibi sürükle bırak yöntemiyle çalışan blok temelli bir programlama dilidir. Scratch dan faklı olarak Snap kendi bloklarınızı oluşturabilme imkanı sunmaktadır. Kendi bloklarımızı oluşturma özelliği Scratch 2 ile de yapılabiliyor fakat Snap bu konuda daha gelişmiş imkanlar sunmakta.

Scratch projemizi doğrudan, bağımsız çalıştırılabilir program haline dönüştüren bir yöntem yok. Bu yüzden Scratch 2 projemizi ilk önce snap projesine dönüştürmemiz gerekiyor. Bunun için github üzerinden yayımlanan Scratch to Snap sitesini kullanacağız.

Birinci Adım Scratch 2 to Snap

Scratch 2 to Snap

Siteyi açtığımızda ilk olarak sol tarafta bulunan dosya seç butonuna tıklayarak .sb2 uzantılı olan Scratch 2 projemizi seçiyoruz. Proje yüklendikten sonra oluşturulan Snap projesini isterseniz direk bilgisayarınıza indirebilir (Click here to download your project) yada yada snap ile düzenlemek için Snap üzerinde projenizi açabilrisiniz (Click here to open your project). Scratch projenizi Snap a aktardığınızda Scratch da çalıştığı gibi çalışmayabilir. Bu yüzden ilk önce Snap projesini açıp doğru çalışıp çalışmadığını kontrol etmeniz iyi olacaktır. Snap ile projenizi düzenledikten sonra sol üst tarafta bulunan boş kağıt simgesine tıklayıp projeyi dışa aktar menüsüne tıklayarak proje xml dosyasını indirebilirsiniz.

İkinci adım Bağımsız Çalıştırılabilir Programı Oluşturma

Projemizi xml uzantılı Snap projesi haline getirdiğimize göre artık son adım olan doğrudan çalıştırabilir program haline getirme aşamasına geçebiliriz. Bu işlem için snapp.citilab.eu adresini açıp xml dosyamızı siteye yüklemeliyiz.Snap to exe

.xml uzantılı dosyamızı yükledikten sonra App window size bölümünden projemizin ekran boyutunu seçiyoruz. Target OS bölümünden uygulamamızı çalıştıracağımız işletim sistemini seçiyoruz. Son olarak App style bölümünde projemizin kod bloklarının gösterilip gösterilmeyeceğini seçiyoruz. Bütün ayarları yaptıktan sonra Build my app! butonuna tıkladığınızda projeniz hazırlanacak ve zip dosyası otomatik olarak indirilmeye başlayacaktır.

Hazırlanan zip dosyası içersisinde bulunan windows için .exe, linux için ise .desktop uzantılı dosyalara tıklayarak uygulamanızı çalıştırabilirsiniz.

Devam