24. 특징 – 개방형 (8)
• Jira
– http://bugs.tizen.org
24
25. 특징 - 기타
• WebGL
• 크로스 아키텍처 – arm, i586, …
• 라이선스
• 보안 - SMACK
• 등등
25
26. 오픈소스 (1)
• 타이젠이 사용하는 수 많은 오픈소스
– X Windows, Cairo, EFL for UI & Graphics
– GStreamer, PulseAudio, OpenAL for Multimedia
– Connman, Bluez, libsoup, wpa_supplicant for Connectivity
– Webkit2 for Web
– SMACK & OpenSSL for Security
– Dbus, glibc for Base
– Sqlite for Database & PIM
– Linux for OS Kernel
– Eclipse for Tizen SDK
– QEMU, U-Boot for Target Emulator
– GCC, LLVM, cmake, gbs for build
– 기타 등등
26
33. System Infra
• Git : 소스 코드 관리
• Gerrit : 웹 기반 코드 리뷰
• OBS (Open Build Service)
- 빌드 시스템 배포판 생성 플랫폼
- 변경사항을 제출하고
빌드할 수 있는 협업 플랫폼
- Tizen: 리눅스 배포판
33
37. Becoming a Developer(2/4)
• Configuring SSH for Gerrit Access
$ ssh-keygen
Enter file in which to save the key (/home/<User>/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
--> ~/.ssh/id_rsa.pub(public key) 파일도 생성됨
$ cat > ~/.ssh/config <<EOT
Host tizen review.tizen.org
Hostname review.tizen.org
IdentityFile ~/.ssh/id_rsa
User <The Above Account>
Port 29418
EOT
38. Becoming a Developer(3/4)
•Login to https://review.tizen/org/gerrit
Using the account in the previous page
•Your name on the upper right corner → Settings
→ SSH Public Keys → Add Key…
Copy & Paste all content of ~/.ssh/id_rsa.pub
38
39.
40.
41.
42. Becoming a Developer(4/4)
[ 여기까지 확인하는 방법 ]
$ ssh tizen
The authenticity of host '[review.tizen.org]:29418 ([198.145.20.13]:29418)' can't be
established.
RSA key fingerprint is ca:5a:1d:6f:06:d4:ee:10:18:9f:b8:ef:ee:65:d5:fd.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '[review.tizen.org]:29418,[198.145.20.13]:29418' (RSA) to
the list of known hosts.
**** Welcome to Gerrit Code Review ****
Hi Your Name, you have successfully connected over SSH.
Unfortunately, interactive shells are disabled.
To clone a hosted Git repository, use:
git clone ssh://yourid@review.tizen.org:29418/REPOSIORY_NAME.git
Connection to review.tizen.org closed.
42
44. Installing Tools
$ sudo vim /etc/apt/sources.list
Add the following line
deb http://download.tizen.org/tools/latest-
release/Ubuntu_14.04 /
$ sudo apt-get update
$ sudo apt-get install gbs mic lthor
44
46. Downloading Source(2/2)
Downloading all project for a specific profile
$ mkdir ~/bin/
$ PATH=~/bin:$PATH
$ curl http://commondatastorage.googleapis.com/git-repo-
downloads/repo > ~/bin/repo
$ sudo chmod a+x ~/bin/repo
$ mkdir tizen
$ cd tizen
$ repo init -u
ssh://<Username>@review.tizen.org:29418/scm/manifest -b tizen
-m mobile.xml
$ repo sync
46
47. Building Packages(1/2)
Checking out build configuration: vim ~/tizen/.gbs.conf
[general]
tmpdir=/var/tmp/
profile = profile.tizen3.0_mobile
work_dir=.
[repo.tizen3.0_x86]
url=${work_dir}/pre-built/toolchain-x86/
[repo.tizen3.0_arm]
url=${work_dir}/pre-built/toolchain-arm/
[profile.tizen3.0_mobile]
repos=repo.tizen3.0_x86,repo.tizen3.0_arm
buildconf=${work_dir}/scm/meta/build-config/build.conf
47
48. Building Packages(2/2)
l Building All Packages
l$ accel_pkgs="bash,bzip2-libs,c-
ares,cmake,coreutils,diffutils,eglibc,elfutils-libelf,elfutils-
libs,elfutils,fdupes,file,findutils,gawk,gmp,gzip,libacl,libat
tr,libcap,libcurl,libfile,libgcc,liblua,libstdc++,make,mpc,m
pfr,ncurses-libs,nodejs,nspr,nss-softokn-
freebl,nss,openssl,patch,popt,rpm-build,rpm-
libs,rpm,sed,sqlite,tar,xz-libs,zlib,binutils,gcc“
l$ gbs build -A armv7l --threads=4 --clean-once --
exclude=${accel_pkgs},filesystem,aul,libmm-
sound,libtool
48
49. Submitting a Patch
$ cd <your_working_directory>
$ git add <your_change>
$ git commit
lGood commit messages
$ git push origin HEAD:refs/for/tizen
lCode review on gerrit
la patch will be merged on the following conditions:
lThe patch got at least one "+2" score and no "-2"
score in the Code Review category.
lThe patch got at least one "+1" score and no "-1"
score in the Verified category.
49
50. Submitting a Package to the Building Farm
$ gbs submit -c <Commit_ID> -m "<Comments>"
lTag: submit/$Tizen_Version/$(%Y%m%d.%H%M%S)
lIf the code change has already been merged by the
Gerrit, a merge request will be created and release
engineers will be notifed to review.
lIf the patch has not been merged in Gerrit, the backend
services will abort the operations and send email to the
patch owner, to notify that the patch needs to be re-
submitted after it is merged.
50
52. Flashing a Tizen image
$ sudo apt-get install lthor
l1 Boot the phone into download mode.
lMake sure the phone is powered-off.
lPress <volume down> + <power> keys simultaneously.
lThe phone will boot up and the download mode image
will be displayed on the phone.
l2 Connect the phone to the Linux PC with a USB cable.
l3 Flashing image
$ sudo lthor /path/to/tizen/image
52