2. Özgür Yazılım ve Linux Günleri 2017
Neden LibreOffice?
Özgür, ücretsiz, güçlüdür
İnsanlığın yararına çalışır
Eğlenceli insanlar
Eğitici/öğretici bir deneyim
GSoC: 2016’da 11 öğrenci
İş imkanı
3. Özgür Yazılım ve Linux Günleri 2017
Şirketler/Kurumlar
Canonical
CIB
Collabora
Igalia
Red Hat
SUSE
The Document Foundation
TÜBİTAK ULAKBİM
Bazı Türk şirketleri
4. Özgür Yazılım ve Linux Günleri 2017
Bilmeniz Gerekenler
Programlama
Kod okuma
Sabır
5. Özgür Yazılım ve Linux Günleri 2017
Programlama
C++ → Ana dil
Python → Testing
Javascript → LO Online
Java, BASIC...
6. Özgür Yazılım ve Linux Günleri 2017
Kod Okuma
Timeline of major StarOffice derivatives
2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 20161996 1997 1998 19991994 19951985 2017 2018
StarOffice
1.0
StarOffice
2.0
StarOffice
3.0
StarOffice
3.1
StarOffice
4.0
StarOffice
5.0
StarOffice
5.1
StarOffice
5.2
StarOffice
6.0
OpenOffice.org
638c
OOo
1.1
ooo-build
NeoOffice
3.1
NeoOffice
3.2
NeoOffice
3.3
NeoOffice
2013
NeoOffice
2014
NeoOffice
2015
LO
3.5
LO
3.4
LO
3.3
LO
3.3b
LO
3.6
LO
4.0
LO
4.1
LO
4.2
LO
4.3
LO
4.4
LO
5.1
LO
5.2
LO
5.0
LibreOffice
5.3
StarOffice
8.0
StarOffice
7.0
OOo
1.0
StarOffice
9.0
OOo
2.0
OOo
2.1
OOo
2.2
OOo
2.3
Oracle
OpenOffice
3.3
Apache
OpenOffice
3.4
AOO
4.0
AOO
4.1
OOo
2.4
OOo
3.0
OOo
3.1
OOo
3.2
OOo
3.3b
WorkPlace
2.6
IBM Symphony
1.0
IBM Symphony
3.0
Go-oo
2.3
Go-oo
2.4
Go-oo
3.0
Go-oo
3.1
Go-OpenOffice
3.2
NeoOffice
2.1
NeoOffice
1.2
NeoOffice
2.2
NeoOffice
3.0
8. Özgür Yazılım ve Linux Günleri 2017
Sabır
Onlarca dil
Yüzlerce sınıf
Karışık bağlantılar
Not alma
Günlük tutma
Küçük adımlar
Yardım istemek
9. Özgür Yazılım ve Linux Günleri 2017
Ne Nerede?
C++ kodları → .cxx, .hxx
Arayüz tasarımları (XML) → .ui
Sabit dizgeler (string) → .src, .hrc
10. Özgür Yazılım ve Linux Günleri 2017
Araçlar - Çevrimdışı
IDE/Editor: Vim, emacs, KDevelop, eclipse…
Git, grep → Kod yönetimi aradığını bulma
Glade → Arayüz tasarımı
11. Özgür Yazılım ve Linux Günleri 2017
Araçlar - Çevrimiçi
Gerrit
Bugzilla
TDF Wiki
OpenGrok
Cppcheck
http://devcentral.libreoffice.org/
12. Özgür Yazılım ve Linux Günleri 2017
Başlayalım
Kaynak kodları alıp inşa edelim
Çözecek bir sorun seçelim
İlgili kodu bulalım
Daha derine inelim
Değişiklikleri sınayalım
Yamayı gönderelim
13. Özgür Yazılım ve Linux Günleri 2017
Kaynak Kodları Alma ve İnşa Etme
git clone git://anongit.freedesktop.org/libreoffice/core
sudo apt-get build-dep libreoffice
./autogen.sh
make
./instdir/program/soffice
https://www.libreoffice.org/about-us/source-code/
14. Özgür Yazılım ve Linux Günleri 2017
Sorun Seçme
Kendi hatanız
EasyHack
Başlangıç düzeyi
Code pointers
Mentor
https://wiki.documentfoundation.org/Development/EasyHacks/by_Required_Skill
15. Özgür Yazılım ve Linux Günleri 2017
İlgili kodu bulalım
OpenGrok
git grep
git grep “couldn’t connect the server”
http://docs.libreoffice.org/
E-posta listesi
http://lists.freedesktop.org/mailman/listinfo/libreoffice
IRC
#libreoffice-dev @ freenode
16. Özgür Yazılım ve Linux Günleri 2017
Daha derine...
Hata ayıklamayı etkinleştir
./autogen.sh –enable-debug
make
make dev-install
GDB ile çalıştır
cd [lo-root]/install/program
. ./ooenv
gdb ./soffice.bin
(gdb) run
http://www.yolinux.com/TUTORIALS/GDB-Commands.html
17. Özgür Yazılım ve Linux Günleri 2017
Değişiklikleri sınama
Yalnızca ilgili modülü inşa et
make [module-name]
Testleri yürüt
make check
Çalıştırıp kontrol et
18. Özgür Yazılım ve Linux Günleri 2017
Yamayı göndermek
Gerrit’e üye ol ve ayarları yap
https://wiki.documentfoundation.org/Development/gerrit
Değişikliği git’e işle
git commit
Gerrit’e gönder
./logerrit submit master
19. Özgür Yazılım ve Linux Günleri 2017
Daha fazlası
http://www.libreoffice.org/community/developers/
20. Özgür Yazılım ve Linux Günleri 2017
LibreOffice, dünya çapındaki gönüllülerden oluşan topluluk
tarafından geliştirilmekte, iyileştirilmekte ve dağıtılmaktadır.
Siz de LibreOffice projesine katılabilirsiniz:
Geliştirici
Test kullanıcısı
Çevirmen
Yerelleştirici
Kullanıcı desteği sağlayan gönüllüler
Tasarımcılar
Tanıtımcılar
…
www.libreoffice.org.tr
Topluluk
21. Özgür Yazılım ve Linux Günleri 2017
All text and image content in this document is licensed under the Creative Commons Attribution-Share Alike 3.0 License
(unless otherwise specified). "LibreOffice" and "The Document Foundation" are registered trademarks. Their respective logos
and icons are subject to international copyright laws. The use of these therefore is subject to the trademark policy.
Teşekkürler
muhammetk@gmail.com
https://muhammetkara.com
http://libreoffice.org
https://wiki.documentfoundation.org/Development
http://www.gnome.org/~michael/blog/
http://www.lanedo.com/libreoffice-development-howto/
Kaynaklar