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.1 i  Microsoft .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