Apr 20, 2020

A Week with Arch Linux

In the hot time of global issue on Covid19 outbreak, staying longer at sweet home. Clean up the garage and found considering old PC, OAX ROW XU1 Mobo, Powered by AMD Phenom (tm) II X2 550 CPU, Hook up PCIe VGA AMD 6617 with HDMI Interface, powered by HD 7000 Audio. 4 slot DDR3 Physical RAM, seated 4 x 4GB. Realtek 8168 NIC will be the gate to connect Internet, provided by Interkoneksi Media. With some free HDD, made many choice to try some linux distros. I have never installing Arch Linux before, so this is good time to give a try. Searching ( Not Googling) since I use StartPage search engine. Found very intuitive guide to install Arch Linux. I have Debian 10.3 running on a disk, so I just need pick another disk up and start poking Arch Linux.

Installation
Challange level to install Arch Linux is "Medium", with great intuitive guide by their community, installation considering as easy. For sure, do not comparing to install Debian or Ubuntu which and really point and click, next and next and your box up.
Intalling Arch Linux, required basic understanding related to Linux Desktop in general. Some configuration have to be tweak manually. Overall, Arch Linux is great distro with amazing repositories globally. Pacman package manager running very fast, it is better than popular "apt (get)". I myself, not really familiar with this pacman. Software packet colections also very good. I can find almost everything.
Rolling Release
I do like rolling release, in this case I have been searching a linux distro for little development of ERPNext. On default repositories I got
Python 3.8 well, python is not really problem since we can create certain environment
Mariadb 10.4 I wish to use Mariadb 10.2 I don't know how to downgrade.
Nodejs 13.x well, I wish to have nodejs 12.x
This default Arch Linux applications provided is Too New for me. It's not about good or bad, merely about flavour and requirements. I believed, Arch Linux dev have very good measure related to stable versions, at least I believed they do very good stabilizing.
Since this is first touch with Arch Linux, I don't know how to downgrade the package, how to tweak them to meet with my need. Anyhow, tested by installing ERPNext in virtual environment, the beast running well smooth.

I have to familiarize myswlf with Arch Linux and for sure going to keep her live in the disk.
End Of Post

Sep 10, 2019

OnePlus 3T Battery Epic

Broken Screen and LCD Damage OnePlus 3T A3010, we can get the replacement easily at IDR 1.400.000,- price. Since the phone will be disassembled, I suggested also to replace the Battery to make the phone working at Maximum Performance. We got the new battery at IDR 170.000,- with total money cost IDR 1.570.000,- I think is worth to revive the phone. Disassembling smart phone is very easy today, we can learn from Internet with step by step guidance, Not nood special skills.
Start disassembling the phone, take out broken screen and lcd unit, replace with new one, take out battery and replace with new one. Testing and wow, the phone displaying message BATTERY NOT MATCH. Again I triple check all information written on the battery replacement and everything almost IDENTIC, unless the Year Manufacturing, old one is 2017, it was year the phone released and the replacement indicate 2018 as manufacturing year. Assumed, the replacement battery is newer and will powered the phone better. How can SHENZHEN ONEPLUS SCIENCE AND TECHNOLOGY CO LTD, produced UnCompatible battery for their own product. I will not return the battery to the online shop where I bought, coz the shop have done everything properly, selling a thing exactly identical with specification on the store description and photo. With all regret, putting back old battery and re-assembling the phone, powered on and everything went well, but I know the phone will not at maximum performance. Battery is most critical part for smart phone.

Nov 1, 2018

ERPNext on Gentoo Linux

Before deciding what "Operating System" we have to set on server(s), the decision is always arbitrary. For my personal flavor, I have a certain choice, LINUX Base operating system. Then there are another consideration, what Linux Distro is "best" for server(s). This decision is crucial, imagine ... we decided to put an operating system on server, after 3-5 years we change our mind to replace the OS, it will consumed huge time, energy and passion. Today is 2018, I have to set a server for "simple" need. Just one server to host an ERP application and cloud base storage system. Server is old, build in 2010 anchored by X5500 Intel server board, powered by ONE XEON 5260 Hexa Core CPU and 4x4 GB ECC Memory. 1x1 TB and 1x500GB HDD.I hooked Gentoo system to set on the unit, with the reason, I trust to gentoo and bit familiar with the system.
. Discussion.
I have scary feeling reading this article WHY GENTOO SHOULDN'T BE ON YOUR SERVER, I supposed, the article is written by a tech savy person and This interesting article, I don't understand why people use Gentoo in production servers. Is it good practice? I can see so many downsides. . Just read long discussions and you will see very interesting debate.
I am not Tech Savy Person, far from being an expert for linux, I do like play and bit adventure. I am NOT a server administrator as well. Now I need to support small company required an ERP system. The company has 3 (three) outlet and geographically separated into Three Residents. The server will play very important role and have to capable to operate 24 hours Non Stop.

At the time I published this post, the server have been running for 286 days without any serious problem.This month We decided to build a back up server, in case the main server face problems, we have something in hand to keep the business running. The server unit is used IBM X3200 Powered by single Hexa Core Intel(R) Xeon(R) CPU X3440 @ 2.53GHz with 4x2 GB ECC RAM

Server Maintenance
Switch off the server once a week, on Sunday 19.00 and Switched-On on Monday 06.00. Database and file back up once a week on Monday evening. That's all.

The Server Set Up
    Hook up Gentoo system. Follow the incredible Gentoo Handbook
    Basic gentoo system is set now

    Note :
    Do not forget to ensure you are on Python 2.7 version
    # eselect python list
    Available Python interpreters, in order of preference:
    [1] python2.7
    [2] python3.6
    # eselect python set 1

    Grab Required component for ERP Next, this is also arbitrary depending on your OS installation. Commonly people install "Basic System", thus the pre-requisite component are :
      # emerge -vp net-libs/nodejs (will also install npm)
      # emerge -vp dev-db/mariadb
      # emerge -vp dev-python/pip
      # emerge -vp media-gfx/wkhtmltopdf
      # emerge -vp www-server/nginx

      # emerge -vp app-admin/supervisor
      # npm install -g yarn

      Best Way to Install Redis-server on gentoo is by following Redis HomePage
    Tweak MariaDB
    # nano -w /etc/mysql/my.ncf
    Paste below to openen window
    [mysqld]
    innodb-file-format=barracuda
    innodb-file-per-table=1
    innodb-large-prefix=1
    character-set-client-handshake = FALSE
    character-set-server = utf8mb4
    collation-server = utf8mb4_unicode_ci

    [mysql]
    default-character-set = utf8mb4

    Create root password for MariaDB
    $ mysqladmin -u root password YOUR_OWN_PASSWORD_HERE
    Add service to default level
    # rc-update add mysql default
    # rc-update add supervisord default
    # rc-update add nginx default

    Optional but suggested : Reboot server

Install ERPNext
$ cd
$ git clone https://github.com/frappe/bench bench
Many tutorial/instruction to clone into a folder named bench-repo. It is actually just a name for easier to distinguish. You can use any name you wants
Wait until the clone process finish (time consuming is depending on your internet speed) and no error
$ pip install --user -e bench-repo # no root required installing as user
Wait until the install process finish
$ echo "export PATH=$HOME/.local/bin:$PATH" >> ~/.bashrc # add ~/.local/bin to path if not already there.
$ source ~/.bashrc
$ bench init semayi-bench # we can use any name we want
$ cd semayi-bench
$ bench get-app erpnext https://github.com/frappe/erpnext
Finished install Frappe with Erpnext apps

Install/Create a Erpnext Site
    Easy way - remember your mysql root user password !!
    $ cd semayi-bench
    $ bench new-site site_name_com --install-app erpnext
    just wait for a while... you will be Asked to key in Mysql root password and CREATE NEW site Administrator password
    No error message appear .... you are done
    Hard Way
    Create a mysql database for a site
    $ mysql -u root -p
    $ Enter Password :
    $ MariaDB [(none)]> CREATE DATABASES database_name_here;
    $ MariaDB [(none)]> GRANT ALL PRIVILEGES ON database_name_you_created.* TO 'root'@'localhost' IDENTIFIED BY 'your_root_mysql_password' WITH GRANT OPTION; $ MariaDB [(none)]> \q;
    go to created bench at appropriate path
    $ cd ~/semayi-bench
    $ bench new-site sitename --db-name name_of_database_you_created --mariadb-root-username root --mariadb-root-password your_mysql_root_password --install-app erpnext --verbose --force
    Wait until the process finished. No Error you are done. Got Error go to forum

Test and check
    $ cd ~/semayi-bench
    $ bench start
    Open your browser and go to your server IP address at port 8000 i.e 192.168.102.111:8000 You have to see Erpnext site alive

Setting up Production
$ cd semayi-bench/
$ bench setup nginx, supervisor command working well on ubuntu
or probably debian base distro. But Not Working on Gentoo, due to different structure and method.
In ubuntu nginx and redis server configuration in frappe bench has symlink to nginx and supervisor configuration
For Gentoo have to set manually, but it is easier with many options
For someone has many website managed by nginx, it is good idea to create a folder conf.d and add include path at nginx.conf then create symlink from nginx configuration in erpnext bench system
This nginx configuration also applicable for redis managed by supervisord. Just add include:/path/of/redis.conf/ in the /etc/supervisor.conf

End of Game

Oct 7, 2017

ERPNext For Production

ERPNext, sangat menjanjikan sebagai salah satu aplikasi ERP yang mendapatkan banyak perhatian. Berikut panduan menginstall ERPNext diatas system operasi Ubuntu 16.04 amd64. Instalasi ERPNext tergantung pada situasi mesin saat ini, apabila PC sudah diinstall ubuntu 16.04 dengan repository standar, situasinya sedikit berbeda dibanding dengan "Fresh Install" pada ubuntu 16.04 yang masih "kosong". Sedikit perbedaan hanya pada versi dependensi. Secara umum fungsi dan kapabilitas tidak berbeda sama sekali. Pemilihan versi dependensi mungkin lebih banyak dipengaruhi faktor selera, karena pada dasarnya tokh aplikasi berfungsi normal dan dapat dipergunakan dengan baik. Demikian pula pemilihan distro linux dan versi distro. Ubuntu 16.04 merupakan versi LTS, dan secara resmi mendapat dukungan Canonical s/d tahun 2021. Pengguna ubuntu sangat luas sehingga lebih mudah dan cepat dalam menemukan bantuan.

Instalasi Ubuntu 16.04
Meskipun PC akan diinstall Ubuntu desktop, untuk instalasi pertama kali ada baiknya diinstall base system saja, atau dikenal dengan command-line mode, hal ini penting untuk menghindari diinstallnya paket aplikasi lain dengan versi yang tidak diharapkan. Untuk ERPNext, secara umum paket yang dibutuhkan :
  • Python 2.7
  • MariaDB ( disarankan versi 10.1 atau 10.2 stable )
  • Redis server ( disarankan versi 4.0.x stable )
  • WKHTMLtoPDF dengan QT Patch
  • supervisor
  • Nginx webserver ( disarankan versi 1.13 stable )

Setelah selesai menginstall ubuntu 16.04 basic system, sebaiknya memperbaiki repository, dimana tidak memilih repository standar.
$ sudo apt-get update
$ sudo apt-get upgrade
$ sudo apt-get install build-essential python-minimal curl git-core software-properties-common dirmngr libssl-dev
Install repository MariaDB 10.1 sesuai dengan SITUS MARIADB FOUNDATION
Install repository Redis-server untuk ubuntu 16.04
Install WKHTMLtoPDF dengan QT Pathced
Install Repository NGINX stable via PPA
lakukan update dan upgrade
$ sudo apt-get update && sudo apt-get upgrade
$ sudo apt-get install mariadb-server mariadb-client libmariadbclient-dev nginx redis-server supervisor python-pip nodejs
Setelah semua terinstall, server siap diinstal ERPNext, khusus untuk Mariadb server membutuhkan sedikit tambahan konfigurasi pada file /etc/mysql/my.cnf pastekan file berikut [mysqld]
innodb-file-format=barracuda
innodb-file-per-table=1
innodb-large-prefix=1
character-set-client-handshake = FALSE
character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci

Intalasi ERPNext dan Opsi
  1. User login ubuntu 16.04 juga dapat digunakan tanpa harus menambah user. Meskipun bisa saja anda menyimpan folder ERPNext di path manapun, ada baiknya menyimpan folder ERPNext di /home/user .
  2. Apabila system yang akan diinstall hanya untuk kebutuhan lokal, misal 1 pc laptop/desktop untuk sebuah toko, ada baiknya menambahkan 1 (satu) non system user khusus untuk ERPNext diluar user untuk Login sehari-hari. Ide ini ada baiknya juga dilakukan pada server dengan banyak aplikasi selain ERPNext, dengan menambahkan 1 user untuk ERPNext akan memudahkan dalam mengadministrasi, trouble shouting, maintenance ERPNext. Dalam banyak Tutorial disarankan menggunakan user dengan username frappe : $ sudo adduser frappe
    $ sudo usermod -aG sudo frappe
  3. Log in dengan user frappe $ sudo su frappe
    $ cd
    $ git clone https://github.com/frappe/bench bench
    Tunggu hingga selesai dan muncul folder bench
    $ sudo -H pip install -e bench
    >
  4. Sampai disini, maka bench sudah terinstall dengan baik
  5. Install bench untuk production ( masih login dengan user frappe ): $ bench init xxx-bench
    pilih nama yang mudah diingat, sependek mungkin untuk mudah mengingatnya
    $ cd xxx-bench
    $ bench get-app erpnext https://github.com/frappe/erpnext
  6. Sampai disini bench, frappe platform dan ERPNext system sudah terinstall dengan baik, lanjutkan dengan mengaktifkan nginx web server, mariadb database dan supervisor
  7. Tetap login dengan user frappe : $ sudo systemctl enable nginx
    $ sudo systemctl enable mariadb $ sudo systemctl enable supervisor
  8. login ke mysql shell : $ mysql -u root -p
    ubuntu biasanya meminta user memberikan root password ketika pertama kali menginstall Mariadb
    MariaDB [(none)]> CREATE DATABASE erpnext;
    MariaDB [(none)]> GRANT ALL PRIVILEGES ON erpnext.* TO 'root'@'localhost' IDENTIFIED BY 'password' WITH GRANT OPTION;
    MariaDB [(none)]> \q;
  9. buat site dan install ERPNext : $ bench new-site namasite.local --db-name erpnext --mariadb-root-username root --mariadb-root-password password --install-app erpnext --verbose --force
    Apabila tidak terjadi sesuatu ERPNext akan diinstal pada situs
    $ bench setup procfile
    $ bench setup nginx
    $ bench setup supervisor
    command $ sudo bench setup production frappe <-- nama login username pada dasarnya hanya mengubah port webserver nginx untuk ERPNext dari default ( port 80 ) ke Port 8000
  10. Semua bench command, bench setup nginx dan bench setup supervisor pada dasarnya membuat symlink dari .../xxx-bench/config/nginx.conf ke /etc/nginx/conf.d/xxx-bench-nginx.conf dan .../xxx-bench/config/supervisor.conf ke /etc/supervisor/conf.d/xxx-bench.conf ini penting dipahami untuk melakukan check dan trouble shouting ketika ada masalah dengan ERPNext system
Redis Server
Ada baiknya membaca Artikel Tentang Redis Server PerformanceTips, satu-satunya keraguan adalah melakukan tindakan NON AKTIF secara permanen pada system linux kernel Transparent Huge Page ( THP ), karena teknologi THP ini membantu sangat banyak dalam menjaga performance OS secara keseluruhan.

Oct 3, 2017

ERPnext

ERPNext, menjadi satu dari sekian banyak aplikasi ERP untuk organisasi kecil sampai sedang, dengan mempertimbangkan masalah efisiensi biaya. Support ERPNext saat ini sepenuhnya tergantung pada Komunitas, diskusi di forum ERPNext sangat membantu dalam Trouble Shouting. Banyak sekali pengguna dari berbagai kalangan dan tingkat keahlian saling berbagi, saling membantu. Itulah kenikmatan memanfaatkan Software Open Source.
ERPNext sangat sesuai dimanfaatkan untuk membantu mengoperasikan, Coffeeshop, Toko Kelontong, Toko Besi, Warung Makan, Puskesmas, Klinik, Rumah Sakit, Organisasi Nirlaba, Sekolah, Perguruan Tinggi dan Berbagai jenis Industri lain. Sifat portabilitas dan fleksibilitas ERPNext sebagai aplikasi berbasis web, sangat bermanfaat dan berdaya guna karena bagus dioperasikan secara OFFLINE maupun ONLINE.  
Kebutuhan Hardware.
Motherboard sekelas Pentium 4, RAM 1 GB dengan media penyimpanan 160 GB yang saat ini sudah seperti sampah, masih bisa dimanfaatkan untuk ERPNext guna membantu mengelola Toko Besi, Warung Makan, Coffeeshop kecil dan menengah secara lokal atau offline. Mengelola inventory, akunting, stok dan Proses penjualan dengan modul POS. Berikut printernya, diperkirakan investasi yang dibutuhkan sekitar Rp 3.000.000,- satu nilai yang sangat Terjangkau.

Kebutuhan Software.
Saat ini ERPNext banyak diinstall pada system operasi Ubuntu Linux 16.04 amd64, ini bisa saja berupa Desktop untuk mode Lokal/Offline. Penulis sendiri karena alasan tertentu memilih Gentoo Linux sebagai distro sehari-hari. 2 unit server diinstall Gentoo Server dan 1 unit menggunakan ubuntu server 16.04.

Dell Poweredge T410
Server Dell Poweredge T410 dengan harga bekas saat ini pada kisaran Rp 6.500.000,- dengan RAM 2X2 GB dan 4x8 GB nilai buku server menjadi sekitar Rp 8.500.000,- saat ini diinstall ubuntu server 16.04 dengan media penyimpan SATA Hard-disk 2 TB dan 160 GB. akan diakses 20 client dengan koneksi intranet dan internet. Aplikasi terpasang, ERPNext multitenant, NextCloud sebagai media penyimpan awan, diharapkan mampu mendukung operasi tiga outlet dalam jangka waktu 7 tahun.

Instalasi
Referensi

  1. Frappe Bench Github
  2. Manual Install Ubuntu 16.xx dan Debian 8-9
  3. Manual Install Frappe/Bench
  4. Manual Install ERPNext
Catatan Penting.
  • Instal Basic Ubuntu Server, Tanpa Database, Tanpa Webserver, karena penulis tidak memanfaatkan aplikasi yang ada pada repository standar ubuntu 16.04 dengan berbagai pertimbangan.
  • Redis-server : standar ubuntu 16.04 repository menyajikan Redis-Server versi 3.6 Penulis memilih versi stabil terbaru Redis-Server 4.0.1 
  • Mariadb-server : standar ubuntu 16.04 repository menyajikan versi 10.0 penulis memilih versi 10.1 
  • Nginx server : standar ubuntu 16.04 repository menyajikan versi 1.10 penulis memilih versi 1.13
  • Nodejs : standar ubuntu 16.04 repository menyajikan versi 6, penulis memilih versi 7
  • Semaksimal mungkin menginstal dengan Package Manager, kecuali tidak dimungkinkan. Karena instalasi dengan Package Manager akan lebih mudah dihandle dalam trouble shouting.
Mode Instalasi
ERPNext menyediakan instalasi otomatis untuk ubuntu 16.04. Instalasi otomatis tidak disarankan untuk Production Server. Banyak hal tidak bisa benar-benar dikontrol dan diketahui pada mode instalasi otomatis. Apabila proses instalasi gagal di tengah jalan, agak repot menangani kelanjutannya. 

selamat mencoba

Jul 7, 2016

could not execute command 'lessc' odoo 9.0

Well ... odoo installed properly and running well on local server. However after creating a data base and successfully logging in, the odoo appearance got weird error message informed could not execute command 'lessc' spending couple hours for googling and various suggestion did not work properly
Understanding the error
'lessc' is the clue whats the error, odoo depending very much one node-less ubuntu and red-hat have package named node-less but gentoo dont't have it. When installing nodejs we have nmp package merged bu USE flag. Use this to install less package
# npm install -g less
# ls /usr/bin
...............
lessc -> ../lib64/node_modules/less/bin/lessc
..............
Restart odoo-server and check with your web ... the error msg will be gone
That's it

Jul 6, 2016

Odoo 9.0 on Gentoo 13.0 OpenRC

OKAY .... systemD is very popular init system, which will be the star of almost all linux distro in the future. I have been long time user of OpenRC and familiar with this. At least for my personal computer a T430 Lenovo Laptop and H3050-Lenovo Desktop. I stay in OpenRC running Gentoo Linux. Odoo (Open ERP) gaining high popularity lately and millions users NEED this kind of suite . I believed odoo will be must have application for most office and business at any size. Searching in the internet ... pages of tutorial how to install odoo community version which is Free of Charge, the source reside on git repository
The following tutorial I used for reference in installing odoo on my local computer for learning and developing purpose. The only different is The Linux Distro. Most tutorial for installing odoo 9 on ubuntu (14.04) and some pages for CenTOS. Need working hard to find the tutorial for Gentoo.
  1. Openies Odoo 9 Installation Tutorial
  2. Odoo 9 install turorial by Linode
  3. Official Odoo 9.0 Documentation
Art of Choice
As mentioned on the odoo documentation, there are many options to install Odoo 9
  1. Using Installer Scripts by ANDRE SCHENKELS which is NOOB PROOF
  2. For someone who will learn to familiarize with odoo 9, using Andre's scripts will be best choice. Andre's brilliantly automate odoo 9.0 installation with a single scripts works flawlessly on ubuntu 14.04 which is also using OpenRC. The page clearly mentioned for ubuntu 14.04 and similar deb base distro under OpenRC. User can modified if wanna to install other version i.e odoo v8.
  3. Installing by ubuntu (debian base distro) and rpm base distro via their respective repository
  4. This option will also NOOB PROOF and safe time. But I personally did not check if the repository provide other odoo version other than 9.0.
  5. Manual Install
  6. Bit effort, with some confusion and need to read some tutorial, the page by Openied and Linode are recommended. Installing on similar distro just follow as is
Odoo 9.0 on Gentoo system
Requirement
  1. Gentoo system (mine is multilib) since I need this machine to get rid with CyanogenMod 13.0 rom
  2. Apache web server (dunno this is mandatory or NOT, I have it since I need to set virtual host also)
  3. Goodwill, time, energy, internet connection
Creating a system user with $name odoo home directory /opt you can choose any path I choose /opt due to in my system /opt have own partition
My system
genT430 [/store] ###
[root] 05:08 PM Wed Jul 06 ># df -H
Filesystem Size Used Avail Use% Mounted on
/dev/sda3 30G 6.7G 22G 24% /
devtmpfs 11M 0 11M 0% /dev
tmpfs 1.7G 857k 1.7G 1% /run
shm 8.4G 546M 7.8G 7% /dev/shm
cgroup_root 11M 0 11M 0% /sys/fs/cgroup
/dev/sda2 30G 2.8G 26G 10% /opt
/dev/sda1 62M 3.9M 59M 7% /boot/efi
/dev/sda4 99G 21G 73G 23% /droid
/dev/sda6 59G 7.2G 49G 13% /home
/dev/sda5 98G 33G 60G 36% /store
tmp 8.4G 873k 8.4G 1% /tmp
vartmp 8.4G 29k 8.4G 1% /var/tmp
none 8.4G 13k 8.4G 1% /run/user/1000
# useradd -r -m -U -b /opt/ -s /bin/bash odoo
merge postgresql on stable system portage provided postgresql-9.5 which is well accepted by Odoo 9.0
emerge --ask dev-db/postgresql look into default USE flad enabled : Odoo required ldap ssl enabled, if no ... edit your USE flag. Postgresql will running, set and work out of the box, nothing special configurations needed.
postgresql having default admin user postgres we need to log in as postgresql admin to create a user database with access to create and drop databse on odoo system.
command # su - postgres
ensure that you have log in as postgresql user named postgres, see below the user changed from root to postgres
genT430 [/store] ###
[root] 05:45 PM Wed Jul 06 ># su - postgres
genT430 [~] ###
[postgres] 05:45 PM Wed Jul 06 >#
as postgres admin user execute command
# createuser --createdb --username postgres --no-createrole --no-superuser --pwprompt odoo
Enter password for new role: ********
Enter it again: ********
# exit
NOTE : remember this password, it will be very useful for further configuration
Get required libraries (if you don't have it already)
emerge -DNuvp dev-python/pip libevent libxml2 libxslt nodejs sasl wkhtmltopdf git look : if all USE flag have been satisfied just merge accordingly
Once all libraries satisfied, execute this command
#cd /tmp && wget https://raw.githubusercontent.com/odoo/odoo/9.0/requirements.txt && pip install -r requirements.txt downloading some libraries required by odoo 9 as mentioned on file requirements.txt
... just wait and ensure no any error
Log in as odoo user and grab odoo 9.0 system on git hub
#su - odoo -s /bin/bash
in my case the root user changed to odoo user in the odoo home directory, see below
genT430 [/store] ###
[root] 06:08 PM Wed Jul 06 ># su - odoo -s /bin/bash
genT430 [~] ###
[odoo] 06:08 PM Wed Jul 06 >#
as odoo user grab the system by cloning from github
#git clone https://www.github.com/odoo/odoo --depth 1 --branch 9.0 --single-branch .
don't miss the DOT after word --single-branch[space]DOT if you were do copy and paste
It will take a while depending on your speed of internet connection ... just relax, get coffee
Configuring Odoo System
Note by default, path of odoo server configuration is in /opt/odoo/debian/openerp-server.conf
We need to copy the file and changed ownership and permission for only odoo user
# mkdir /etc/odoo
# cp /opt/odoo/debian/openerp-server.conf /etc/odoo/odoo-server.conf
# chown odoo: /etc/odoo/odoo-server.conf
# chmod 640 /etc/odoo/odoo-server.conf
We set the configurations is writable by odoo user and readable by odoo and root users
Modify file /etc/odoo/odoo-server.conf
Pay attention at addons_path=... by default addons_path = /usr/lib/python2.7/dist-packages/openerp/addons
modified to
addons_path=/opt/odoo/addons
Thus if we will add any modules to main system, just put the module in addons directory to make main system clean and free from polltant for easy update
Installing init scripts
This script for easy start and stop odoo-server and set to automatic starting where neccessary, since the scripts is for debian, need minor modifications for Gentoo. Note : I modified script from Openies India thus credit for them DOWNLOAD INIT SCRIPT FOR GENTOO HERE safe anywhere in your /home/user/directory
Extract the file and put in the directory /etc/init.d/ thus you wil have file /etc/init.d/odoo-server
execute command to change the permission and ownership
# chmod 755 /etc/init.d/odoo-server
# chown root: /etc/init.d/odoo-server
Just share this is only different from debian script, due to distro dependant
#. /lib/lsb/init-functions (debian/ubuntu)
. /etc/profile (gentoo)
. /etc/init.d/functions.sh (gentoo)
........
........
function _stop() {
start-stop-daemon --stop --quiet --pidfile $PIDFILE --oknodo
rm -f $PIDFILE
}
openies script..>
function _stop() {
start-stop-daemon --stop --quiet --pidfile $PIDFILE --oknodo --retry3
rm -f $PIDFILE
}
N=/etc/init.d/$NAME (openies)
N=/etc/init.d/$DESC (Gentoo)
Make log file for odoo
# mkdir /var/log/odoo
# cd /var/log/odoo
# cat > odoo-server.log
# ctrl+c
Modified file odoo-server.log file
# chmod 755 /var/log/odoo/odoo-server.log
# chown odoo:root -R /var/log/odoo/odoo-server.log
Testing
execute command >
# /etc/init.d/postgresql-9.5 start ..... (to start postgresql server)
# /etc/init.d/odoo-server start .... (to start odoo-server)
To ensure odoo system run as expected... check by command >
# tail -f /var/log/odoo/odoo-server.log
If look everything good .... just open your browser and navigate to
http://127.0.0.1:8069/
or
http://localhost:8069/
Your browser will prompted with :

If No.... then there is something wrong with the installation
Small Trouble shouting
Server Not Running at all according to browser
Pay attention to file /etc/odoo/odoo-server.conf
[options]
; This is the password that allows database operations:
; admin_passwd = admin <---
db_host = False
db_port = False
db_user = odoo
db_password = False
addons_path = /opt/odoo/addons
xmlrpc_port = 8069
odoo by default using port 8069 puting xmlrpc_port = 8069 just to ensure odoo using this port
Firefox Browser
Firefox (AFAIK) have feature to always add prefix www or suffix DOTcom sometime this will prevent you to access localhost..... Disabled this feature from about:config or DOWNLOAD VIVALDI BROWSER
odoo server installation
Sometimes we are in doubt and have no clue, whats wrong with all failure of odoo running, the odoo itself, configurations or init-scripts. The best way to test is : change to odoo user ( su - odoo -s /bin/bash) navigate to odoo directory /opt/odoo and execute command >
[odoo]/opt/odoo # ./odoo.py Odoo server should running on http://0.0.0.0:8069/ ... you can access from browser
Automate Odoo server start
# rc-update add postgresql-9.5 default
... adding postgresql to runlevel default...
# rc-update add odoo-server default
... adding odoo server to runlevel default...
# rc-update add apache2 default
... adding apache to runlevel default
...........
Have nice odooing ..

Real Multilib Userland on Linux

Read multilib requirement on Android rom building and other stuff. About two years absent from getting rid with android rom. I have time to...