Türk Malı Pencere Yöneticisi (Fikir değil gerçek!!!)

Başlatan parduscix, 14 Ocak 2019 - 15:39:36

« önceki - sonraki »

0 Üyeler ve 1 Ziyaretçi konuyu incelemekte.

parduscix

Yeni bir tane pencere yöneticisi yazdım. (TinyWM tabanlı)
Bağımlılıklar: glibc ve xlib
Kaynak kod: http://gitlab.com/parduscix/miniwm
Nasıl kurulur:
1-Kodu indirin ve bir dizine açın
2-Kodların olduğu yerde terminali açın ve şunları yazın (Root yetkisi alarak):
    make
    make install
3-oturumu kapatın ve TurkWM oturumunu seçerek başlatın. (veya "turk-oturum init" ile)

Kullanımı:
super tuşu ana tuşumuz * her şey onda bitiyor.
super+f1 = terminal aç
super+f2 = uygulama bulucu
super+f3 = dosya yöneticisi
super+f4 = açık pencereyi kapat
super+f5 = pencereyi tam ekran yap (pencere yöneticisi tam ekran isteklerini dikkate almıyor bunu o yüzden koydum)
super+f6 = açık pencereyi öldür (bütün alt süreçleri yok eder. Sadece takılan bir şey varsa orada kullanın.)
super+sağ tık+sürükle = yeniden boyutlandır.
super+sol tık+sürükle = taşı
super+sol tık=etkin pencereyi değiştir.
super+f12=oturumu kapat.

Not:   Kasıyollar biraz karışık oldu onları sonra düzenlerim.
Not2: kısayollardan açılan şeyler çevresel değişkenler ile tanımlanıyor. onları değiştirmek için kaynak koddaki session betiğini düzenleyin. (derledikten sonra /usr/bin/ içine gidiyor oradada düzenleyebilirsiniz.)

Teknik destek ve daha fazla bilgi için: https://t.me/gnulinuxtr

[eklenti yönetici tarafından silindi]

illedelinux

#1
parduscix emeğine sağlık.
Pencere yöneticisi deyince benim sempati alanıma girer, önemli olan bir yerde durdurulmaması, sürekli güncellenmesi. Hani bir hevesle yapıp da orada bırakmamak önemli.
AUR deposuna da eklesen daha iyi olur, Deneyelim bakalım, sonucu paylaşırım.


Mesaj tekrarı yüzünden mesajınız birleştirildi. Bu mesajın gönderim tarihi : 14 Ocak 2019 - 20:04:13

Böyle bir hata verdi.

root@tez miniwm-master # make install
cp -prf turk-oturum /usr/bin/turk-oturum
mv turkwm /usr/bin/turkwm
update-alternatives --install /usr/bin/x-session-manager \
    x-session-manager /usr/bin/turk-oturum 50
make: update-alternatives: Command not found
make: *** [Makefile:12: install] Error 127
GNU/Linux kullanmıyorum, onu yaşıyorum...

parduscix

#2
make file dosyasının içinde ilgili satırı silin o satır varsayılan masaüstü ortamı olarak ayarlamaya yarıyor sadece

Şimdi o satırı kaldırdım pekte gerekli değildi zaten. gitten tekrar çekip derleyin.


Mesaj tekrarı yüzünden mesajınız birleştirildi. Bu mesajın gönderim tarihi : 15 Ocak 2019 - 00:12:42

Bug bildirimlerinizi telegramdan bana (https://t.me/sulincix) bildirebilirsiniz.

illedelinux

Düzelmiş, oturuma girdim ama verdiğin klavye kısayolları veya başka kısayol çalışmıyor. Arch tabanında denedim, onunla ilgisi olabilir mi?
GNU/Linux kullanmıyorum, onu yaşıyorum...

parduscix

turm-oturum dosyasındaki çevresel değişkenleri kendinize göre değiştirmeyisiniz. Yoksa olmayan şeyi açamaz.
şu anda xfce4-appfinder xfce4-terminal thunar uygulamalarına ayarlı. bunları kullanmıyorsanız sistemde olmadığı için açılmaz. ya kurun yada dosyadakileri değiştirin. Daha sistemdekini algılamayı eklemedim.

illedelinux

parduscix, o programlar bende zaten yüklü, kısayollar çalışmıyor, sistem açılışında arkaplan çalıştı, arkaplan sayesinde dosya yöneticisini bir şekilde açtım. Buralarda herhangi bir sorun yok, kısayollar çalışırsa yaptığın yazılım umut veriyor. Bir de fare tıklarına menü ekleyebilirsen süper olur, kolay gelsin :)
GNU/Linux kullanmıyorum, onu yaşıyorum...

parduscix

kodu düzenledim tekrar dener misiniz.

Birde menü olayına sonra bakacağım şimdilik çökmesin yeter

illedelinux

Kısayollar yine çalışmadı.
Bu arada bir şey dikkatimi çekti, bazı programları açtığımda sanki "bu nedir" der gibi 2-3 saniye kadar tereddütte kalıyorlar, galiba kafaları karışıyor :)
Neyse kardeşim, bu kadar başarman bile övünç kaynağıdır, eminim sen bunu daha geliştirirsin, test için bana her zaman başvurabilirsin, bu konuda hiç çekinme :)
GNU/Linux kullanmıyorum, onu yaşıyorum...

parduscix

#8
archlinuxta xinitrc kaynaklı sorun buldum onu düzeltmeye çalışıyorum. bendiki archlinuxtada algılamamıştı


Mesaj tekrarı yüzünden mesajınız birleştirildi. Bu mesajın gönderim tarihi : 15 Ocak 2019 - 22:47:15

şimdi kodu güncelledim bir daha
bendeki archlinuxta çözüldü sorun
tty ekranında turk-oturum init yazarak açın olmuş mu


Mesaj tekrarı yüzünden mesajınız birleştirildi. Bu mesajın gönderim tarihi : 16 Ocak 2019 - 09:46:09

Archlinuxta denedim çalışıyor. Sizde sıkıntı var mı hala

[eklenti yönetici tarafından silindi]

parduscix

#9
Biraz önce birkaç değişiklik daha yaptım. Şimdi çökmemesi lazım.
AYrıca yazı yazmak için pencerenin üzerinde tutma zorululuğu kalktı.


firefoxtaki sağ tıklama sorunuda çözüldü.


Mesaj tekrarı yüzünden mesajınız birleştirildi. Bu mesajın gönderim tarihi : 17 Ocak 2019 - 12:48:49

yalnız şöyle bir konu var ki oda henüz yazı odağı için bazen elle super+sol tık gerekiyor. (Telegram desktop genelde buga sokuyor ondan manual şu anda.)

[eklenti yönetici tarafından silindi]

plazma

/* TinyWM is written by Nick Welch <nick@incise.org> in 2005 & 2011.
*
* This software is in the public domain
* and is provided AS IS, with NO WARRANTY. */

yazıyor turkwm.c dosyasında, tam olarak ne yaptınız daha detaylı bilgi verirseniz, tinywm alıp dil desteği mi?

freeman

@plazma;
Kodda gördüğüm kadarıyla pek Türkçeleştirmek gibi bir durum yok.  Değişkenlerine varana kadar https://github.com/mackstann/tinywm  buradaki kodla aynı. Arkadaşın verdiğinde fazladan kod satırları var. Kendi kanaatimce onları da başka bir yerden COPY-PASTE etmiştir. Özgün bir şey olduğunu düşünmüyorum. Bilginize.
Good morning and welcome to the Black Mesa Transit System. This automated train is provided for the security and convenience of the Black Mesa Research Facility personnel.

parduscix

#12
tinywm taban aldığımı belirtmiştim. Lisansı gereği tinywm alıp düzenlemeye hakkım var.
Tamamen baştan yazmış olsamda pek farklı * bir şey ortaya çıkmazdı zaten.

Başka yerden kopyala yapıştır yaptığımı ispatlayabiliyorsan ispatla o zaman.
Amacın körü körüne çamur atmak gibi görünüyor. Emeğe saygı biraz.


Mesaj tekrarı yüzünden mesajınız birleştirildi. Bu mesajın gönderim tarihi : 19 Ocak 2019 - 14:31:10

İlk baştaki satırları bilerek değiştirmedim. Eğer değiştirmiş olsaydım çalmış olacaktım.
Oraya en kısa zamanda daha düzgün bir açıklama yazacağım.

Tinywm kaynak kodunda olmayan birsürü özellik ekledim. tuşları değiştirdim. Pekte alakası kalmadı gibi asıl koddan.
Değişken isimlerine gelecek olursak aynı isimleri kullanmayı tercih ettim. Değiştirmesi zor değil


Mesaj tekrarı yüzünden mesajınız birleştirildi. Bu mesajın gönderim tarihi : 19 Ocak 2019 - 14:41:41

https://github.com/adamnew123456/SmallWM
Mesela buda tinywm taban alarak geliştirilmiş bir pencere yöneticisi. Bunda daha çok şey var. Fakat frame sorunları var ve tam istediğim şekilde çalışmıyor. Bende tinywm taban alarak geliştireyim bir şeyler diyerek yola çıktım. Daha başlayalı fazla olmadı kodların yakın olması normal.

Bir şeyi eleştirmeden önce araştırmanızı tavsiye ederim. Şu an tübitağın yaptığı pardus tamamen debian klonu ona bakarsanız...

freeman

Ya bırak emekmiş.
http://www.cs.bham.ac.uk/research/projects/poplog/src/master/S.vaxultrix/x/Xpw/ClientMessage.c
https://code.jessemcclure.org/alopex/artifact/bb6bc3c7618d9921

Yukarda attığım sayfalarda çoğu satırın birebir aynısı var.  İlginçtir, değişken isimleri aynı bazılarında yine. Uğraşsam tüm satırlarının birebir kopya olduğunu gösteririm de en azından benim için yeterli sağdan soldan aldığına inanmam için. Çok zamanım yok zaten.

Dediğim gibi kodlar zaten var olan farklı kaynaklardan alınmış.
Good morning and welcome to the Black Mesa Transit System. This automated train is provided for the security and convenience of the Black Mesa Research Facility personnel.

parduscix

#14
Şu son iki attığın kodla bendekinin alakası yok. Hem xlib bildiğine emin misin?
Uğraş ispatla o zaman ispatlamazsan idda edemezsin


Mesaj tekrarı yüzünden mesajınız birleştirildi. Bu mesajın gönderim tarihi : 19 Ocak 2019 - 16:26:15

Sen daha iyisini (özgün olarak) yazda görelim.


Mesaj tekrarı yüzünden mesajınız birleştirildi. Bu mesajın gönderim tarihi : 19 Ocak 2019 - 16:32:37

pencere yöneticisi yazman için kullandığın fonksiyonlar hazır xlib kütüphaneleri. Bütün masaüstü ortamları aynı forksiyonları kullanıyor. Sen bunu bilmeyip oradan buradan almışson dersen ancak gülerim buna. Kullanmak zorunda değilsin en azından bilmeden etmeden yorum yapma


Mesaj tekrarı yüzünden mesajınız birleştirildi. Bu mesajın gönderim tarihi : 19 Ocak 2019 - 16:40:50

https://www.x.org/docs/X11/xlib.pdf

Şurada xlib kütüphanesinin kodümanı var. Dikkat edersen fonksiyonlar xlib içinden. bütün masaüstü ortamları aynılarını kullanıyor. Wayland bile xlib fonksiyonları üzerinden çalışıyor. Diğer türlü masaüstü ortamından bahsedemezdiniz.

illedelinux

@parduscix, arkadaşların sana anlatmak istediğini anlamadan tepki göstermişsin. Arkadaşlar şunu söylüyor, "Tamam, alıntı olduğunu zaten belirtmişsin, iyi de sen buna ne yaptın, ortada yaptığın gözle görülen bir değişiklik yok" diyorlar.
Gayet makul bir soru değil mi?
Üstelik o soruyu ben de soracaktım ama şevkini kırmak yerine belki tutar diye yardım etmeyi tercih ettim.
Lakin defalarca indir kur, düzenle derken bir günümü vermiş olmama rağmen hiç değişmemiş olması biraz soğukluk yarattı bende.

Yani sen bu eleştiri ve sorulardan memnun olman gerekirken sözlü tepki gösteriyorsun. Oysa eleştiri ve sorular bir yazılımcının gelişmesi için arayıp da bulamadığı önemli değerlerdir.
Neyse ben görüşümü yazdım, gerisi senin tercihin.
GNU/Linux kullanmıyorum, onu yaşıyorum...

parduscix

#16
Sorunun kaynağını bulmaya çalışıyorum. Ve hala bazı arkadaşlarda sorun yapıyor. C ile yazılan kodlarda debug biraz daha zor python gibi dillere kıyasla. Ondan dolayı defalarca deneme yapmaya ramen yol alamamamız bence olağan. Bende sorun yapmıyor kod şu anki hali ile. Dağıtımların xinitrc dosyaları birbirinden farklı galiba sorun onun yüzünden.

Dün çok garip biçimde tty tamamen takıldı. oturumu kapatmama ramen tuhaf anlaşılmayan yazılar çıktı. Ayrıca ekran boyutlarını ve birden çok ekran ile kullanma konularında sıkıntı var ondan dolayı bende sorun yapmayıp sizde yapıyor olabilir.

Tinywm güzel hoş ama çok yetersiz geldiği için alıp geliştirmeye başladım. Smallwm gayet gelişmiş ama frame sorunları vardı pull request atmayı düşündüm ama sorun bayağı derinlerde olduğunu görünce vazgeçtim.

Şu an bende openbox kullanıyorum kendi makinamda aradada test için bunu kullanıyorum. Bence ne olursa olsun incitici yorum yapılmaması gerekiyor.

freeman

Ben neden Xlib API larını kullandın demiyorum. Kodun %90 'ı zaten tinywm. %10 luk kısmının ise farklı kaynaklardan alındığına gayet eminim . Bana diyorsun da bu da çok özgün bir şey değil zaten.

Neyse sana kolay gelsin. İncinecek bir durum yok.
Good morning and welcome to the Black Mesa Transit System. This automated train is provided for the security and convenience of the Black Mesa Research Facility personnel.

parduscix

iki günde %10luk ekleme yapmak bile bence büyük başarı. Ayrıca başka yerden almadım. Ki başka yerden almış olsam bile birleştirerek birşey yapmakta bir çalışma ve emek ister.

Xlib fonksiyonlarınır syntax yapıları belli zaten nereden alırsan al aynı şeyi yazman lazım. Değişken isimlerine gelirsek Baktığım tüm kaynak kodlar hemen hemen aynı isimleri kullanmış bende gelenek bozulmasın diye değiştirmedim.

Yaptığım en köklü değişiklik pencere kapatma ekleme ve mod4mask yerine mod1mask kullanmak oldu.