2012년 10월 31일 수요일

ubuntu svn server install ( over apache )


I installed svn server under ubuntu LTS 10.04 64 bits

SVN Server Setup

1. install essentail packages
#  sudo apt-get install subversion libapache2-svn apache2

2. create repository
 # svnadmin create /home3/swmgr/tmpsvn/sample

3. configure conf file
open  /home3/swmgr/tmpsvn/sample/conf/svnserve.conf
then uncommnet belows
 auth-access = write ==> set permission
 password-db = passwd ==> indicate passward file

open /home3/swmgr/tmpsvn/sample/conf/passwd
then add user and passward

[users]
user = passwd
dokyun = hellscream

4. start svn server
 svnserve -d -r /home3/swmgr/tmpsvn/sample

5. check
# svn checkout svn://192.168.0.4 ./svn
 or
# svn checkout svn://localhost ./svn

if  ,,, /db/txn-current-lock': Permission denied  error happens when svn access
check the directory permission.
$ chmod -R 775 /home3/swmgr/tmpsvn/sample


SVN over Apache


1. set directory owner
 # sudo chown -R www-data /home3/swmgr/tmpsvn/sample/

2. configure
 open /etc/apache2/mods-enabled/dav_svn.conf
 then add

<Location /svn>
  DAV svn
  SVNPath /home3/swmgr/tmpsvn/sample
  AuthType Basic
  AuthName "Subversion Repository"
  AuthUserFile /etc/apache2/dav_svn.passwd
  Require valid-user
</Location>

3. add user
# sudo htpasswd2 -cm /etc/apache2/dav_svn.passwd dokyun
 or
# sudo htpasswd -cm /etc/apache2/dav_svn.passwd dokyun

4. restart apache
 sudo /etc/init.d/apache2 restart
5. check





2012년 9월 18일 화요일

sulogin: no password entry for root


default console device is not set properly in inittab
Set tty device in inittab , for example

if console was set as

::respawn:/sbin/getty 115200 ttyO0

in inittab and you started with ttyO2,  then

sulogin: no password entry for root

message shows

set

::respawn:/sbin/getty 115200 ttyO2

you can log in properly

2012년 8월 26일 일요일

Building Android system


Move to android root directory.

Set up buildenv as below

dokyun@android$
dokyun@android$ source ./build/envsetup.sh
including device/samsung/maguro/vendorsetup.sh
including device/samsung/tuna/vendorsetup.sh
including device/ti/panda/vendorsetup.sh
including sdk/bash_completion/adb.bash
dokyun@android$

Set up build target as below
$ lunch [Build-name]-[build type]

build name is target device name such as panda or maguro
build type is build configuration such as debugging option or limitation.

currently I do not have special target , select emulator for build-name , eng for build-type

dokyun@android$ lunch full-eng
============================================
PLATFORM_VERSION_CODENAME=REL
PLATFORM_VERSION=4.0.1
TARGET_PRODUCT=full
TARGET_BUILD_VARIANT=eng
TARGET_BUILD_TYPE=release
TARGET_BUILD_APPS=
TARGET_ARCH=arm
TARGET_ARCH_VARIANT=armv7-a
HOST_ARCH=x86
HOST_OS=linux
HOST_BUILD_TYPE=release
BUILD_ID=ITL41D
============================================
dokyun@android$

then build

dokyun@android$ make -j4

It can takes more than 1 hour at first build , it depends on your build system

You can also select manually the target board as like below

dokyun@android$ lunch
You're building on Linux
Lunch menu... pick a combo:
     1. full-eng
     2. full_x86-eng
     3. vbox_x86-eng
     4. full_maguro-userdebug
     5. full_tuna-userdebug
     6. full_panda-eng
Which would you like? [full-eng] 6
============================================
PLATFORM_VERSION_CODENAME=REL
PLATFORM_VERSION=4.0.1
TARGET_PRODUCT=full_panda
TARGET_BUILD_VARIANT=eng
TARGET_BUILD_TYPE=release
TARGET_BUILD_APPS=
TARGET_ARCH=arm
TARGET_ARCH_VARIANT=armv7-a-neon
HOST_ARCH=x86
HOST_OS=linux
HOST_BUILD_TYPE=release
BUILD_ID=ITL41D
============================================
dokyun@android$ make -j4



2012년 8월 19일 일요일

Adroid Source Code Download


  • Installing repo


Repo is a tool that makes it easier to work with Git in the context of Android.

$ mkdir ~/bin
$ PATH=~/bin:$PATH

$ curl https://dl-ssl.google.com/dl/googlesource/git-repo/repo > ~/bin/repo
$ chmod a+x ~/bin/repo

As you can see , it just get repository related script form https://dl-ssl.google.com/dl/googlesource/git-repo/repo and make excutable

  • Initializing a Repo client

First make working directory, in my case

$ mkdir ~/android
$ cd ~/android

then initialize repository.

$ repo init -u https://android.googlesource.com/platform/manifest

It shows below error at first time

-----------------------------------------------------------------------
*** Please tell me who you are.
Run
  git config --global user.email "you@example.com"
  git config --global user.name "Your Name"

to set your account's default identity.
Omit --global to set the identity only in this repository.

fatal: empty ident  <dokyun@redbomb-server.(none)> not allowed-----------------------------------------------------------------------

as you can see on the error message, type your email and name

$ git config --global user.email "dokyun.beon@gmail.com"
$ git config --global user.name "dokyun beon"

then excute again
$ repo init -u https://android.googlesource.com/platform/manifest
$ repo init -u https://android.googlesource.com/platform/manifest -b android-4.0.1_r1
$ repo sync

as you can see, down load is done
-----------------------------------------------------------------------
dokyun@android$ ls
Makefile  bionic    build  dalvik       device  external    hardware  ndk       prebuilt  system
abi       bootable  cts    development  docs    frameworks  libcore   packages  sdk
dokyun@android$
-----------------------------------------------------------------------

refer to official home more detail.

http://source.android.com/source/downloading.html

2012년 8월 4일 토요일

exporting kernel headers- headers_install


  • command for exporting kernel headers in user space
make headers_install ARCH=arm INSTALL_HDR_PATH=/usr/include

  • how to include headers for headers_install
Add headers in Kbuild under {kernel_source_dir}/include/
header-y += {header_file_name.h}

For more detail, refer to headers_install.txt





2012년 7월 23일 월요일

Required packages for android

Flex : http://flex.org/

flex is a software development kit for the development (SDK) deployment of cross-platform rich Internet applications based on the Adobe Flash platform

Bison : http://www.gnu.org/software/bison/

Bison is a general-purpose parser generator that converts an annotated context-free grammar into a deterministic LR or generalized LR (GLR) parser employing LALR(1) parser tables

gnupg : http://www.gnupg.org/

GnuPG is the GNU project's complete and free implementation of the OpenPGP standard as defined by RFC4880 . GnuPG allows to encrypt and sign your data and communication, features a versatile key management system as well as access modules for all kinds of public key directories

gperf : http://www.gnu.org/software/gperf/

GNU gperf is a perfect hash function generator

curl : http://curl.haxx.se/

cURL is a computer software project providing a library and command-line tool for transferring data using various protocols. The cURL project produces two products, libcurl and cURL. It was first released in 1997
TBD

2012년 7월 21일 토요일

Set up basic development enviroment on ubuntu

  • install ssh

$ apt-get install openssh-server

  • install samba server

$ apt-get install samba

 add user
$ smbpasswd -a [user]

edit /etc/samba/smb.conf for adding smb configuration for new user
for example
 [dokyun]
   comment = dokyun private
   browseable = yes
   path = /home2/dokyun
   guest ok = no
   writable = yes
   create mask = 0755

for multi-user add below
  valid users = dokyun redbomb ...

  restart samba server
$smbd restart

  • install build tool

$ apt-get install build-essential

  • vim install

$ apt-get install vim

It fixs the strange operation of special key input on vi

  • install vnc server

It provides gui enviroment for network client

$ apt-get install vnc4server

  create vnc server on 5901 port
$ vnc4server -geometry 1024x768 :1

If you want to see exactly same gui with gnome follow this

1.stop vncserver
2. open ~.vnc/xstartup
3. uncommnet below 2 lines
 unset SESSION_MANAGER
 exec /etc/X11/xinit/xinitrc
4. change 
 exec /etc/X11/xinit/xinitrc
 to
 exec sh /etc/X11/xinit/xinitrc
5. save and exit
6. restart vnc server

  •  install TFTP server

$ apt-get install xinetd
$ apt-get install tftp
$ apt-get install tftpd

Ubutu dose not create /etc/xinetd.d/tftp automatically , in Fedora case it created automatically.
Create and edit /etc/xinetd.d/tftp
Add below

service tftp
{
    socket_type     = dgram
    protocol        = udp
    wait            = yes
    user            = root
    server          = /usr/sbin/in.tftpd
    server_args     = -s /tftpboot
    disable         = no
    per_source      = 11
    cps             = 100 2
    flags           = IPv4
}

restart xinetd
$ /etc/init.d/xinetd restart

  • install NFS server


$ apt-get install nfs-kernel-server

add export directory , add below in /etc/export
/targetnfs *(rw,no_root_squash,no_all_squash,async)

restart nfs server
$ /etc/init.d/nfs-kernel-server restart

  • install ftp server

$ apt-get install vsftpd

edit /etc/vsftpd.conf, uncomment below

local_enable=YES ==> for local user log in
write_enable=YES ==> allow up-load
anonymous_enable=NO ==> do not allow anonymous log in

restart ftp server
$ /etc/init.d/vsftpd restart