22 новембар 2014

Kloniranje RaspberryPi SD kartice

Kloniranje RaspberryPi SD kartice - 16 GB na 8 GB:



26 октобар 2014

Lazarus FPC Cross Compile Linux -> Windows

Ovaj primer se nadovezuje na prethodni post: Lazarus FPC Trunk Linux

Crosscompile Linux -> Windows 64-bit


Priprema fpc kompajlera za cross compile:
$ cd ~/fpc
$ make all OS_TARGET=win64 CPU_TARGET=x86_64
$ sudo make crossinstall OS_TARGET=win64 CPU_TARGET=x86_64 INSTALL_PREFIX=/usr
$ sudo ln -sf /usr/lib/fpc/2.7.1/ppcrossx64 /usr/bin/ppcrossx64

Priprema lazarus-a za cross compile:
$ cd ~/lazarus
$ make clean all bigide OS_TARGET=win64 CPU_TARGET=x86_64
$ cd lazarus/lcl
$ make clean all

Crosscompile Linux -> Windows 32-bit


Priprema fpc kompajlera za cross compile:
$ cd ~/fpc
$ make all OS_TARGET=win32 CPU_TARGET=i386
$ sudo make crossinstall OS_TARGET=win32 CPU_TARGET=i386 INSTALL_PREFIX=/usr
$ sudo ln -sf /usr/lib/fpc/2.7.1/ppcross386 /usr/bin/ppcross386

Priprema lazarus-a za cross compile:
$ cd ~/lazarus
$ make clean all bigide OS_TARGET=win32 CPU_TARGET=i386
$ cd lazarus/lcl
$ make clean all

Primer

Iskoristiću lazarus/examples/popupnotifier projekat kao primer. Kompajliranjem bez promene parametara dobija se linux izvršni fajl i aplikacija kao na slici:

Promenom parametara Compiler Options/Config and Target u Project Options-u na sledeći način:

Target OS (-T) = Win32
Target CPU family (-P) = i386
i ponovnim build-ovanjem projekta, dobija se izvršni fajl za windows platformu:
Kada se .exe fajl kopira i pokrene na win mašini, rezultat bi trebao biti ovakav:



Lazarus FPC Trunk Linux



Početna konfiguracija:
Debian Jessie 64-bit (kernel 3.16) sa Xfce DE.

Potrebni preduslovi:
$ sudo apt-get install build-essential gdb subversion libgtk2.0-dev

Preuzeti sa sourceforge.net najnoviji instaler: fpc-2.6.4.x86_64-linux.tar, otpakovati ga i instalirati:
$ tar -xvf fpc-2.6.4.x86_64-linux.tar
$ sudo fpc-2.6.4.x86_64-linux/install.sh

Preuzeti trunk verzije freepascal-a i lazarus-a:
$ svn checkout http://svn.freepascal.org/svn/fpc/trunk/ fpc
$ svn checkout http://svn.freepascal.org/svn/lazarus/trunk/ lazarus

Kompajlirati i instalirati trunk freepascal:
$ cd fpc
$ make clean all PP=/usr/lib/fpc/2.6.4/ppcx64
$ sudo make install INSTALL_PREFIX=/usr PP=/usr/lib/fpc/2.6.4/ppcx64
$ sudo ln -sf /usr/lib/fpc/2.7.1/ppcx64 /usr/bin/ppcx64

Kompajlirati lazarus:
$ cd ~/lazarus
$ make clean all bigide

Pokrenuti IDE:
$ ./startlazarus


27 мај 2014

Instalacija Wordpress-a na Debian-u (Apache, MySQL, PHP)

Može se početi npr. odavde: https://wiki.debian.org/LaMp i https://wiki.debian.org/WordPress


Instalacija
1. Ja ću krenuti od VirtualBox-a i instalacije čistog Debiana 7.5 (kernel 3.2) - instalacija samo osnovnog sistema (bez Desktop Environmenta). Napomena radi lakšeg snalaženja u narednim koracima - korisnika sam nazvao "user", a IP adresa virtuelnog servera je 192.168.56.101. Koraci 2. i 3. nisu obavezni jer sve akcije mogu da se obave i direktno preko root naloga.
2. # apt-get install sudo
3. # adduser user sudo

MySQL Server
4. $ sudo apt-get install mysql-server

Apache, PHP
5. $ sudo apt-get install apache2 php5 php5-mysql libapache2-mod-php5

phpMyAdmin
6. $ sudo apt-get install phpmyadmin

Provera da li je po defaultu sve u redu
7. $ sudo nano /var/www/info.php
<?php
  phpinfo();
?>
8. Na host mašini uneti IP adresu virtuelnog servera, npr:
192.168.56.101/info.php
Ukoliko je sve u redu prikazaće se sledeća strana:

Kreiranje novog korisnika i prazne baze - MySQL (preko phpMyAdmina)
9. Adresa: 192.168.56.101/phpmyadmin
Privileges - Add a new User: kreirati korisnika "user", dodeliti mu lozinku i za sada postaviti sva globalna prava (Check All Global privileges).
10. Kreirati novu bazu wptest (collation utf8_general_ci).

Instalacija ftp servera
11. $ sudo apt-get install vsftpd
12. $ sudo nano /etc/vsftpd.conf
anonymous_enable=NO
local_enable=YES
write_enable=YES
13. $ sudo /etc/init.d/vsftpd restart

Kreiranje direktorijuma i preuzimanje Wordpress-a
14. $ sudo adduser user www-data
15. $ mkdir ~/wpsajt
16. $ cd ~/wpsajt
17. $ wget http://wordpress.org/latest.tar.gz
18. $ tar -xf latest.tar.gz
19. $ cd wordpress
20. editovati wp-config-sample.php fajl i snimiti ga pod imenom wp-config.php:
21. $ sudo chown user.www-data ~/wpsajt/ -R


Priprema i konfigurisanje Apache web servera
22. $ sudo nano /etc/apache2/sites-available/wpsajt
Alias /wpsajt /home/user/wpsajt
<Directory /home/user/wpsajt>
        Options FollowSymLinks
        AllowOverride Limit Options FileInfo
        DirectoryIndex index.php
        Order allow,deny
        Allow from all
</Directory>
23. $ sudo a2ensite wpsajt
24. $ sudo service apache2 reload

Prvo pokretanje Wordpress-a
25. http://192.168.56.101/wpsajt/wordpress
Ovde praktično počinje priča vezana za Wordpress koja će možda biti deo nekog drugog tutoriala.

Dodatak - Pregled sajta - početna strana
26. Da bi otvorili početnu stranu sajta, potrebno je kreirati fajl index.php u direktorijumu ~/wpsajt/:
$ nano ~/wpsajt/index.php
<?php
  define('WP_USE_THEMES', true);
  require('./wordpress/wp-blog-header.php');
?>
27. Sada je moguće otvaranje početne strane: 192.168.56.101/wpsajt

Napomena: Uputstvo za konfiguraciju nikako nije napisano za web server koji treba da radi online (priključen na internet), već samo za lokalnu primenu, a čak i tako sve je moglo biti urađeno znatno drugačije... Ovo je samo primer kako u koracima doći do funkcionalnog, danas najpopularnijeg, CMS-a. Po ovom principu trebalo bi biti lako instalirati i druge CMS-ove, npr. Joomla-u ili Drupal. Može da koristi za npr. učenje i/ili upoređivanje njihovih funkcionalnosti, a pruža definitivno drugačiji ugođaj od npr. instalacije XAMPP-a. :)

03 април 2014

Instalacija Delphi-a 2006 na Windows 7

Instalacija Delphi-a 2006 na Windows 7 (32-bit ili 64-bit) operativni sistem je moguća, ali uz jednu malu intervenciju.
Naime, Delphi 2006 kao preduslov, između ostalog, zahteva Microsoft .NET Framework 1.1Microsoft .NET Framework 1.1 Service Pack 1, koji se ne mogu direktno instalirati, već se instalacija radi na sledeći način:

1. Kreirati direktorijum: c:\DotNet
2. Preuzeti instalaciju  Microsoft .NET Framework 1.1 Redistributable Package (dotnetfx.exe) i sačuvati u kreirani direktorijum
3. Preuzeti instalaciju Microsoft .NET Framework 1.1 Service Pack 1 (NDP1.1sp1-KB867460-X86.exe) i sačuvati u kreirani direktorijum
4. Preimenovati: NDP1.1sp1-KB867460-X86.exe u dotnetfxsp1.exe
5. Pokrenuti command prompt kao administrator i postaviti tekući direktorijum na c:\DotNet
6. Izvršiti komandu: dotnetfx.exe /c:"msiexec.exe /a netfx.msi TARGETDIR=C:\DotNet" i prihvatiti instalaciju
7. Izvršiti komandu: dotnetfxsp1.exe /Xp:C:\DotNet\netfxsp.msp
8. Izvršiti komandu: msiexec.exe /a c:\DotNet\netfx.msi /p c:\DotNet\netfxsp.msp
9. Pokrenuti pripremljenu slipstrimovanu instalaciju frameworka: netfx.msi

Ovim je zadovoljen prvi preduslov za instalaciju Delphi-a 2006 (BDS 2006, Turbo Delphi 2006), a ostalo će bez problema biti instalirano direktno kroz Delphi instaler.
Direktorijum c:\DotNet možete slobodno obrisati.

28 фебруар 2014

30 јануар 2014

Podešavanje default osvetljenja ekrana na Debianu Xfce

Potrebno je instalirati Power Manager (xfce4-power-manager, xfce4-power-manager-plugins) i pomoću Brightness plugin-a (dodati ga na panel, kao na slici) kontrolisati osvetljenje ekrana. Na laptop računarima podešavnje osvetljenja je moguće i kombinacijom tastera na tastaturi (npr. Fn + F4 ili F5). Ono što može da zasmeta je što se prilikom svakog ponovnog uključivanja sistema, vrednost osvetljenja resetuje na maksimum. Ovu vrednost nije moguće konfigurisati u Xfce Power Manageru, ali postoji workaround. Prvo nekoliko osnovnih smernica:
  • /sys/class/backlight/acpi_video1/brightness - trenutna vrednost osvetljenja
  • /sys/class/backlight/acpi_video1/max_brightness - maksimalna vrednost osvetljenja za odgovarajući displej (na Dell 17R 7720 SE ova vrednost je 100)
  • promenom vrednosti /sys/class/backlight/acpi_video1/brightness menja se trenutno osvetljenje:
# echo 60 > /sys/class/backlight/acpi_video1/brightness

Kako rešiti da se prilikom uključivanja/restarta sistema automatski postavi željena vrednost osvetljenja:
#nano /etc/rc.local

echo 60 > /sys/class/backlight/acpi_video1/brightness
exit 0

Naravno vrednost ne mora biti 60, već proizvoljan broj od 0 do max_brightness.

25 јануар 2014

Firebird i latinično/ćirilično sortiranje

Firebird 2.5

  • Database character set je UTF8
  • Field character set je UTF8, a collation UNICODE ili UNICODE_CI (ukoliko za collation ostane podrazumevani UTF8, sortiranje neće valjati)
  • Ukoliko je potrebno sortirati podatke SELECT upitom bez promene strukture baze, može ovako: ORDER BY naziv_polja COLLATE UNICODE

13 јануар 2014

Debian NVIDIA Optimus

NVIDIA Optimus tehnologija je osmišljena tako da optimizuje rad grafičkih kartica na laptop računarima koji pored integrisane poseduju i diskretnu nvidia grafiku. Cilj je da se po potrebi uključuje diskretna grafička kartica (ukoliko se koriste grafički zahtevne aplikacije), a u ostalim slučajevima se koristi integrisano rešenje, sve u cilju postizanja maksimalnih performansi/uštede baterije.

Na adresi https://wiki.debian.org/Bumblebee je objašnjeno kako se ova tehnologija konfiguriše na Debian OS-u, ali, u mom slučaju ovo nije proradilo iz prve (kao i obično ;) ) već uz nekoliko izmena...

Specifikacija hardvera i sistema:
Računar: Dell Inspiron 17R 7720SE
Integrisana grafika: Intel HD4000 (Core i7 IvyBridge)
Diskretna grafika: nvidia GeForce 650m
OS: Debian Jessie Xfce
Kernel: 3.12 64-bit
Aktuelna verzija nvidia drajvera: 319.76-1 (iz non-free jessie repoa)

Posle instalacije potrebnih drajvera - https://wiki.debian.org/Bumblebee:
# dpkg --add-architecture i386
# apt-get update
# apt-get install bumblebee-nvidia primus primus-libs:i386
# adduser $USER bumblebee

 morao sam dodati sledeće izmene:

U konfiguracionom fajlu /etc/bumblebee/bumblebee.conf

dodati:
Driver=nvidia
a:
KernelDriver=nvidia
menja se u:
KernelDriver=nvidia-current

Konfiguracion fajl /etc/bumblebee/xorg.conf.nvidia
postaviti:
BusID "PCI:1:0:0"
#   To get the BusID prop, run `lspci | egrep 'VGA|3D'` and input the data
#   as you see in the commented example.
i:
Option "UseDisplayDevice" "none"

Poslednji korak je editovanje karametara kernela - /etc/defaults/grub:
GRUB_CMDLINE_LINUX_DEFAULT="quiet rcutree.rcu_idle_gp_delay=1"

i posle toga, naravno:
# update-grub

Nakon restarta sistema, sve je proradilo. Primer za probu:
$ optirun -b primus -vv glxgears -info
$ glxheads
$ optirun glxheads

Isprobao sam i na supertuxkart igri, gde sam uključio prikaz fremerate-a, postavio sve na maximum i pokrenuo igru prvo sa integrisanom HD4000 grafikom:
$ supertuxkart

a posle toga i sa GeForce 650m:
$ optirun supertuxkart

Dodatno korisno - provera da li je bbswitch uključen:
$ cat /proc/acpi/bbswitch

Restart bumblebee daemona:
# /etc/init.d/bumblebeed restart