Thứ Ba, 11 tháng 10, 2011

Sau 40 phút "ôn nghèo kể khổ" với hội đồng giám khảo và trả lời câu hỏi cũng như nhận xét, đây là kết quả của chúng ta :D

Thông báo số 5 - Kết quả chung khảo (10/10/2011)

Mã dự án
Tên dự án
Tên nhóm – Trường
Giải
MHST11-15
Xây dựng extension portal cho Nimbus.
Đại học Bách Khoa Hà Nội
NHẤT
MHST11-10
Zimbra as a Service
Đại học khoa học tự nhiên, ĐHQG Hà Nội
NHÌ
MHST11-08
Phát triển mở rộng các chức năng của LibreOffice
Đại học FPT
BA
MHST11-14
Tự động hóa bóc và lấy tin cho trang tin điện tử tổng hợp
Đại học Công Nghiệp Hà Nội
KHUYẾN KHÍCH
MHST11-03
Nhận dạng đồ vật (sách) bằng điện thoại Android
Đại học Công Nghệ, ĐHQG Hà Nội
KHUYẾN KHÍCH

Link slide và báo cáo
Báo cáo chi tiết
Slide dạng odp
Slide dạng pdf

Thứ Ba, 26 tháng 7, 2011

A glimpse at our developer community: Oracle tops on dev contribution

http://blog.documentfoundation.org/2011/07/26/a-glimpse-at-our-developer-community/

Ngược lại với phỏng đoán của mọi người,
Oracle vẫn là *công ty* đóng góp nhiều nhất vào LibO.
Như vậy, có lẽ Apache OpenOffice sẽ tự tiêu tự hủy.
Trong danh sách dưới đây, "Unknown" nghĩa là người đóng góp tự do.

Employers with the most developers (total 300)

    (Unknown): 205 (68.3%)
    Oracle: 54 (18.0%)
    SUSE: 20 (6.7%)
    Known contributors: 9 (3.0%)
    Canonical: 4 (1.3%)
    Redhat: 2 (0.7%)
    SIL: 2 (0.7%)
    CodeThink: 1 (0.3%)
    Bobiciel: 1 (0.3%)
    Lanedo: 1 (0.3%)
    Tata Consultancy Services: 1 (0.3%)

Chủ Nhật, 24 tháng 7, 2011

Quản lí process trong Linux

Do gặp lỗi khi sử dụng vncserver, yêu cầu phải tắt process manually, em đã tìm hiểu về cách manage process trong linux.
Tham khảo tai trang web: http://www.cyberciti.biz/faq/show-all-running-processes-in-linux/

1. Kill process của vncserver bằng tay (áp dụng khi kill theo 2 cách đã liệt kê không thành công)
- Tìm pid (process id) của vnc đang chạy:ông
[thamht@MHST11-08 ~]$ pgrep vnc
4093
4101
25560
32083
- Xem thông tin của pid (để chắc chắn process này là process cần xử lí):
[thamht@MHST11-08 ~]$ ps 4093
PID TTY STAT TIME COMMAND
4093 ? S 0:00 Xvnc :4 -desktop MHST11-08:4 (tatung) -httpd /usr/share/vnc
- Kill process
[thamht@MHST11-08 ~]$ sudo kill 4093

Thứ Bảy, 23 tháng 7, 2011

Tổng hợp Easy Hack

Tính tới hiện tại thì team đang chạy 3 Easy Hack
1. Bug 34697 - [EasyHack] no option Print Current Page on dialog Print --> Tùng
https://bugs.freedesktop.org/show_bug.cgi?id=34697

Easy Hack này đã được giải quyết để LibreOffice hoạt động đúng như OpenOffice từng làm là cho luôn trang hiện tại vào text box của Page Range. Hiện tại đang thử để cho thêm một radio button kiểu Current page vào nữa.
--> Đã cho được radio button nhưng đang bị lỗi bắt event khi check radio button.

2. Bug 36800 - EasyHack: [Calc] "Find & replace" does not search single cell --> Hà
https://bugs.freedesktop.org/show_bug.cgi?id=36800

Hiện tại đã tìm được code pointer của easy hack và đang tiến hành điều tra nguyên nhân gây lỗi để sửa.

3. Bug 37775 - [EasyHack] Recent Documents not updated by Save & Save As...
https://bugs.freedesktop.org/show_bug.cgi?id=37775


Hiện tại chưa làm j được khác ngồi đọc source code và chạy debug để tìm ra module cần sửa. Có thể phải chạm đến code java (theo như em đọc source code thấy vậy)

Thứ Năm, 21 tháng 7, 2011

config VNC (Virtual Networked Computing)

A. Config VNC trên server.
1. Check xem đã cài vnc & vnc server chưa.
[thamht@MHST11-08 sysconfig]$ rpm -qa | grep vnc
vnc-server-4.1.2-14.el5_6.6
gtk-vnc-python-0.3.8-3.el5
gtk-vnc-0.3.8-3.el5
vnc-4.1.2-14.el5_6.6
Nếu chưa có thì dùng yum để cài.

2. Thêm vào file /etc/sysconfig/vncservers như sau (cứ 2 lines set cho 1user)
VNCSERVERS="1:mhst1108"
VNCSERVERARGS[1]="-geometry 800x600"
VNCSERVERS="2:thamht"
VNCSERVERARGS[2]="-geometry 800x600"

Setting như trên tức là server sẽ lắng nghe user mhst1108 tại cổng 5901, user thamht tại cổng 5902 (tự động cộng thêm 5900).

3. Đặt passwd
[thamht@MHST11-08 sysconfig]$ vncpasswd
Password:
Verify:

4. Để có thể view bằng graphical desktop thay vì terminal, có thể làm như sau:
sudo vi /etc/.vnc/xstartup
- thay "twm &" thành "startkde &"
- uncomment 2 dòng dưới đây:
# Uncomment the following two lines for normal desktop:
#unset SESSION_MANAGER
#exec /etc/X11/xinit/xinitrc
thành
# Uncomment the following two lines for normal desktop:
unset SESSION_MANAGER
exec /etc/X11/xinit/xinitrc

6. Start vnc server
[thamht@MHST11-08 sysconfig]$ vncserver :2

B. Trên client computer
1. check xem đã cài vnc chưa
[thamht@thamht]$ rpm -qa | grep vnc
2. Start vnc viewer
[thamht@thamht]$ vncviewer 119.15.161.28:5902
Lúc này, cửa sổ yêu cầu nhập passwd hiện ra. Nhập passwd vào là xong.

C. Stop vncserver.
Có 2 cách:
[thamht@MHST11-08 sysconfig]$ vncserver -kill :2
Killing Xvnc process ID 3961
Hoặc
[thamht@MHST11-08 sysconfig]$ /sbin/service vncserver stop
Shutting down VNC server: 2:thamht [OK]

Để tắt trên client, chỉ cần đơn giản là Ctrl + C trên terminal hoặc tắt cửa sổ vncviewer.

Thứ Ba, 19 tháng 7, 2011

Build Error

cd bootstrap
./g pull -r
sh mhst-config.sh

Lỗi như sau:

 it seems you are using a threaded build, which means that the
 actual compile error is probably hidden far above, and could be
 inside any of these other modules:
     setup_native vcl
 please re-run build inside each one to isolate the problem.




Cách sửa: cd vào từng folder và build (make -r hay build) lại

Thứ Hai, 18 tháng 7, 2011

Code editor

Mấy hôm nay thấy team dùng chủ yếu 2 text editor chính là vim với gedit. Nhìn chung cả 2 đều có ưu điểm, nhược điểm riêng. Nhân đang ngồi chờ make clean, mình viết cái này hướng dẫn tùy biến 2 text editor này sao cho thuận tiện (đối với việc code)
1. Vim


Một trong những điểm mạnh của Vim so với gedit chính là hầu như khi dùng vim, ta ko cần phải dùng chuột do hệ thống phím tắt của Vim là quá đủ dùng rồi :D Tuy nhiên, mặc định Vim không hỗ trợ mở file theo tab, dẫn đến phải mởi nhiều cửa sổ Vim một lúc. Để mở thêm file theo dạng tab, ta có thể gõ ":browse tabnew" (ko có dấu ngoặc kép), rồi sau đó tìm đến file cần mở. Cái này dùng cho GVim, còn dành cho Vim thì hình như chỉ cần gõ :tabnew. Mọi người đọc thêm ở link này về cách sử dụng tab trong Vim
http://www.quantrimang.com.vn/hethong/linux/35173_Meo-nho-voi-Vim-su-dung-cac-tab.aspx


Ngoài ra, vim cũng hỗ trợ save các file trong một session bằng lệnh:
:mksession ten_file_session.vim


Khi muốn mở lại thì trước hết ta mở vim lên, rồi gõ
source ten_file_session.vim


Các file của session trước đó sẽ tự động được mở ra.


2. Gedit




Gedit khá thân thiện với người dùng. Bên cạnh đó Gedit cũng hỗ trợ nhiều plugin rất hay:
sudo yum install gedit-plugins

Sau khi cài xong cái kia thì vào edit/preference/plugin. Check vào các plugin cảm giác là cần thiết. Có thể là cái Session save, hỗ trợ save session --> ko hiểu sao chưa chạy được :))

Ngoài ra, Gedit còn có nhưng cái kiểu như left panel chuyên hiển thị cây thư mục, bottom panel thường dùng là Terminal --> make trên terminal này luôn :D

Vào View để tìm hiểu thêm nhé :x

Lines of code in LibreOffice

Tính đến thời điểm này, LibreOffice có 5.4 triệu dòng code, phần lớn là C++, cụ thể như sau:

cpp,        4657231 ,86.43%)
java,        393364 ,7.30%)
ansic,       113417 ,2.10%)
pascal,      102596 ,1.90%)
perl,         66205 ,1.23%)
sh,           16848 ,0.31%)
python,       16289 ,0.30%)
yacc,          7970 ,0.15%)
cs,            6644 ,0.12%)
asm,           2941 ,0.05%)
objc,          2113 ,0.04%)
lex,           1582 ,0.03%)
awk,            845 ,0.02%)
php,            254 ,0.00%)
csh,            253 ,0.00%)
lisp,           115 ,0.00%)
sed,              9 ,0.00%)

htop khi build LibreOffice

Có vẻ như khi build LibreOffice, make chỉ ăn nhiều CPU chứ không ăn RAM :)

                                                                     
                                             
  $htop
  
  1  [||||||||||||||||||||||||||||||||||||||||||||||100.0%]     Tasks: 180, 26 thr; 10 running
  2  [||||||||||||||||||||||||||||||||||||||||||||||100.0%]     Load average: 8.94 4.36 2.87 
  3  [||||||||||||||||||||||||||||||||||||||||||||||100.0%]     Uptime: 15:20:21
  4  [|||||||||||||||||||||||||||||||||||||||||||||||99.3%]
  5  [||||||||||||||||||||||||||||||||||||||||||||||100.0%]
  Mem[|||||||||||||||||||||||||||||||||||       480/3034MB]
  Swp[                                               0/0MB]

  PID USER     PRI  NI  VIRT   RES   SHR S CPU% MEM%   TIME+  Command                                                        
 3311 vuhung    25   0 70696 65956  5712 R 56.0  2.1  0:02.26 /usr/libexec/gcc/i386-redhat-linux/4.1.2/cc1plus -quiet -I../st
 3330 vuhung    25   0 68148 63108  5732 R 33.0  2.0  0:02.00 /usr/libexec/gcc/i386-redhat-linux/4.1.2/cc1plus -quiet -I../st
 3289 vuhung    18   0  971M 39100  8492 S 27.0  1.3  0:01.18 /bin/sh /usr/bin/ant -Dbuild.label=build-350m1(Build:0) -Dant.b
 3493 vuhung    17   0  971M 39100  8492 R 22.0  1.3  0:00.79 /usr/lib/jvm/java-1.6.0-openjdk/bin/java -classpath /usr/share/
 3540 vuhung    15   0  971M 39100  8492 S  5.0  1.3  0:00.36 /usr/lib/jvm/java-1.6.0-openjdk/bin/java -classpath /usr/share/
 3023 vuhung    21   0 31776  1376   868 S 19.0  0.8  0:00.04 sh ../configure --disable-debug --enable-optimize --with-dist-p
32751 vuhung    15   0  9568  1272   920 R 18.0  1.0  0:00.34 htop
 3540 vuhung    15   0  971M 31680  8364 S 15.0  1.0  0:00.28 /usr/lib/jvm/java-1.6.0-openjdk/bin/java -classpath /usr/share/
 2809 vuhung    15   0 86268 80460  5756 R 13.0  2.6  0:03.08 /usr/libexec/gcc/i386-redhat-linux/4.1.2/cc1plus -quiet -I../st
32751 vuhung    15   0  2568  1272   920 R  1.0  0.0  0:00.33 htop
 3023 vuhung    24   0  2776  1372   868 S  0.0  0.0  0:00.02 sh ../configure --disable-debug --enable-optimize --with-dist-p
 3306 vuhung    25   0 44808 38688  5580 R  0.0  1.2  0:01.01 /usr/libexec/gcc/i386-redhat-linux/4.1.2/cc1plus -quiet -I../st
 3523 vuhung    25   0 24152 16344  3452 R  0.0  0.5  0:00.12 /usr/libexec/gcc/i386-redhat-linux/4.1.2/cc1plus -quiet -I../st
 2226 root      RT  -5     0     0     0 S  0.0  0.0  0:01.80 bzip2 -cd /libo/vuhung/000.git/bootstrap/src/b4cae0700aa1c2aef7

Chủ Nhật, 3 tháng 7, 2011

FOSS posting style

Chú ý khi email cho libo - đây cũng là luật chung của các nhóm FOSS

1. Plain text email
2. Bottom post
3. Trim
4. Quote

Xem: http://en.wikipedia.org/wiki/Posting_style

Thứ Hai, 27 tháng 6, 2011

Some notes on dmake

dmake tương tự GNU make - một công cụ để biên dịch chương trình từ mã nguồn.

Điểm khác GNU make là: dmake có thể chạy trên nhiều platform hơn, bao gồm Windows. Đây chính là lý do dmake được chọn là build tool của OpenOffice.org (tiền thân của LibOffice)


Tham khảo: http://tools.openoffice.org/dmake/index.html

A try on LibO build

Đang build thử LibO trên CentOS 5.6
(Với Fedora, chắc chắn cũng tương tự)

Đọc http://www.documentfoundation.org/develop/

Thử git clone git://anongit.freedesktop.org/libreoffice/bootstrap
=> bị báo lỗi chưa cài git
=> Google git và cài

wget http://kernel.org/pub/software/scm/git/git-1.7.5.4.tar.bz2
tar xvjf git-1.7.5.4.tar.bz2
cd git
./configure; make; make install -> cài xong

sau đó chạy lại
git clone git://anongit.freedesktop.org/libreoffice/bootstrap


cd bootstrap
./autogen.sh --with-num-cpus=2


lại bị báo lỗi thiếu jdk, python...
-> Cài bằng lệnh

sudo yum -y install java-1.6.0-openjdk-devel
sudo yum -y install python-devel

Chú ý: devel

Cứ như thế, chạy

./autogen.sh --with-num-cpus=2

và cài các gói bị thiếu cho đến khi hết lỗi thì OK.


Chắng hạn như

checking for jakarta-ant... no
checking for ant... /opt/ant/bin/ant
checking if /opt/ant/bin/ant works... Ant works
checking Ant lib directory... Ant lib directory found.
checking whether Ant is >= 1.6.0... yes, 1.8.2
checking for JUnit 4... no
configure: error: cannot find JUnit 4 jar; please install one in the default
location (/usr/share/java), specify its pathname via
--with-junit=..., or disable it via --without-junit

-> Thiếu junit

Ok, vậy thì disable thử junit và build

 ./autogen.sh --with-num-cpus=2 --without-junit

-> lần này thì OK

setting up the post_download check script
configure: creating ./config.status
config.status: creating ooo.lst
config.status: creating set_soenv
config.status: creating Makefile
config.status: creating bin/repo-list
Setting up the environment for building LibreOffice
Setting Linux x86 specific values... done

******************************
**********************************************
*
* LibreOffice configuration finished.
*
****************************************************************************
To build, issue:
make

To install when the build is finished, issue:
make install

If you want to develop LibreOffice, you might prefer:
make dev-install

If you want to run the smoketest, issue:
make check

->

sau đó sẽ chạy make, sẽ ra lỗi nhưng gặp lỗi đâu thì sửa đấy.


Chủ Nhật, 26 tháng 6, 2011

Thủ thuật với Gnome 3

1. Tự động ẩn top bar (thanh panel ở phía trên màn hình)
yum install http://timlau.fedorapeople.org/files/gnome-shell/extensions/gnome-shell-extension-autohidetopbar-1.0-1.fc15.noarch.rpm
--> Alt+F2, bấm r, rồi enter.

2. Minimize tất cả các cửa sổ đang mở:
System Settings --> Keyboard --> Shortcuts --> Navigation
Bấm chọn mục Hide all normal windows rồi click vào phía của của dòng đấy (chỗ chữ Disable). Sau đó bấm tổ hợp phím mà bạn muốn gán. Ở đây để cho quen với windows thì mình đặt tổ hợp phím Windows + D.
Cách này cũng dùng để gán phím tắt cho các tác vụ khác. (tự tìm hiểu nhé :D)

To cloud OOo/LibO

Q:
I'm a computer Engineering student, I would like to build a cloud computing "OpenOffice" version and connect some mail box with it and a cloud hard disk. so it can help employees to edit,save and share there document in the cloud.
can you help me please.
I need some information on how to start and how to make a cloud OpenOffice version on the web.
Thank you very much

A (Tora-san):

It could be easy to implement your desire as you might guess, I think.

The key module would be "vcl" in the source code of OpenOffice.org.

outdev.hxx defines the OS independent interface of virtual devices such as OS dependent real display devices, printer, PDF exporter, and so on. The upper applications such as Writer, Calc, and Impress work with the virtual devices through the interface.
http://hg.services.openoffice.org/OOO330/file/OOO330_m20/vcl/inc/vcl/outdev.hxx
http://hg.services.openoffice.org/OOO330/file/OOO330_m20/vcl/source/gdi  outdev?.cxx

To build your own cloud version of OpenOffice.org, you could add a new virtual device that serves your remote users.

E.g. the virtual device could be a hand-made web server that translates GET and PUT requests from the client side into key/mouse events and drawing actions for the upper applications.

IMHO, if I were you, I would not use any web protocol to realize it. Because it might require thousands of lines of JavaScript as AJAX in the client side. Despite the efforts, its quality might be poorer than a real OpenOffice.org.

So, how? The virtual device would draw texts and shapes on the internal bitmap virtual display first and then send the changes of bitmap via well-known VNC server protocol or video streaming protocol to the client side.

The idea comes from my situation where a VNC server is located in my SOHO in Japan and I travel to the US, Germany, Italy, China, ... Wherever I were, the view of OpenOffice.org running on a virtual machine can be projected on my laptop through VNC viewer. Before leaving the US I leave a document of OpenOffice.org open and close the VNC connection. After arriving at a hotel in Germany I can work with the document without any interruption. For me, that is the cloud.

Anyway, I believe you can do it! :-)
Serving several users concurrently for a single document might be much more challenging and attractive.

Source files of OpenOffice.org 3.3.0
http://download.services.openoffice.org/files/stable/3.3.0/
Get files OOo_3.3.0_src_xxx.tar.bz2 and extract them.

And then follow Alexandro's suggestion:

On 2011/06/26 2:31, Alexandro Colorado wrote:

Not a trvial job since OOo has more than 9 million of lines of code <http://www.openoffice.org/FAQs/build_faq.html#source>. But you will find most of the information here:

There might be much more cool, pragmatic ways. Anyone, any suggestions?

Best regards,
Tora
--

Thứ Sáu, 24 tháng 6, 2011

Các ứng dụng của LibreOffice

LibreOffice (LibO) cung cấp cho người dùng nhiều ứng dụng văn bản khác nhau. Dưới đây liệt kê 6 features chính của LibO.


Writer là bộ xử lí văn bản trong LibreOffice, có thể ứng dụng trong soạn thư hay tạo ra một quyển sách với chỉ mục, hình ảnh, hình vẽ, bảng biểu, một cách nhanh chóng. Writer là có thể tự động hoàn thành từ với các mẫu có sẵn hoặc mẫu tự tạo, tự động format, tự động kiểm tra chính tả và sửa lỗi khiến cho việc soạn thảo được nhanh chóng, dễ dàng hơn. Writer chứa nhiều công cụ hỗ trợ cho việc xuất bản với việc tạo ra nhiều cột bản in, khung trang, đồ họa.


Calc làm việc (tính toán và phân tích) với các con số, sử dụng biểu đồ và công cụ phân tích. Người dùng có thể nhập dữ liệu từ cơ sở dữ liệu SQL và Oracle, sau đó sắp xếp, lọc để có những kết quả phân tích thống kê. Natural langue formulas cho phép tạo công thức tính toán bằng ngôn ngữ tự nhiên. Scenario Manager cho phép đưa ra phân tích, dự đoán trong tình huống giả định.


Impress là cách dễ nhất, hiệu quả nhất để có được một bản thuyết trình multimedia, được hỗ trợ hiệu ứng nghệ thuật 2D, 3D, transition styles, animations và công cụ vẽ ấn tượng. Ngoài ODF file format, Impress cũng có thể chuyển thành .swf file hoặc PowerPoint của MS Office.


Draw là công cụ Diagramming & Charting của LibO, cho phép tạo từ bản phác thảo nhanh cho đến những bản kế hoạch phức tạp và là cầu nối giữa đồ họa và biểu đồ. Các object được tạo ra, nhóm lại, tách ra hoặc điều chỉnh một cách linh hoạt. Chức năng Smart Connector giúp dễ dàng tạo ra flow chart, organization chart, network... hỗ trợ import nhiều định dạng đồ họa hình ảnh phổ biến và export ra định dạng flash (.swf).


Base là cơ sở dữ liệu đầu cuối (front-end) của LibO. Có thể tích hợp cấu trúc dữ liệu của Base với các ứng dụng office khác của LibO hoặc sử dụng nó như một ứng dụng sử dụng và quản lí dữ liệu độc lập. Base cũng làm việc tốt với cấu trúc dữ liệu của các hệ quản trị dữ liệu khác như MySQL, PostgreSQL, MS Access, hay thậm chí cả MS Outlook, MS Windows và Mozilla.


Math là công cụ soạn thảo công thức toán học một cách nhanh chóng. Công thức tạo ra dễ dàng paste vào văn bản các ứng dụng khác của LibO. Math có thể start như là một ứng dụng độc lập, hoặc được gọi từ các component khác của LibO. Với người dùng, Rất dễ dàng để học cách tạo hay chỉnh sửa công thức.

Thứ Năm, 23 tháng 6, 2011

Open Document Format for Office Applications

ODF (Open Document Format for Office Applications) là một chuẩn định dạng dùng để biểu diễn văn bảng điện tử như spreadsheets, charts, presentations, word processing. ODF được tao ra dựa trên nền tảng định dạng file XML.

Spec của ODF được phát triển bởi Sun, và theo chuẩn của OASIS Open Document Format for Office Applications là ISO/IEC 26300:2006 ( OASIS là Organization for the Advancement of Structured Information Standards, 1 tổ chức chuyên đưa ra các chuẩn về các lĩnh vực Web Services, e-Commerce, XML Processing …)

1 số tên đuôi cụ thể sử dụng chuẩn ODF:

  • .odt for word processing (text) documents
  • .ods for spreadsheets
  • .odp for presentations
  • .odb for databases
  • .odg for graphics
  • .odf for formulae, mathematical equations

Những file theo chuẩn ODF sử dụng công nghệ nén không thất thoát ZIP để lưu các tập tin và thư mục, nhờ đó có thể giảm thiểu dụng lượng khá tốt. Ngoài ra, các trúc của các file cũng khá rõ rang khi được chia thành 4 file XML: content, styles, metadata, and application

1 ưu điển nữa của ODF là nhờ đặc điểm “Open” của mình, nó có thể đọc được bởi hầu hết các phần mềm xử lý văn bản:

  • AbiWord
  • Adobe Buzzword
  • Atlantis Word Processor
  • Aspose.Words is a component/library available for both .NET and Java platforms which enables opening and saving OpenDocument text (ODT) documents.
  • Corel WordPerfect Office X4
  • Evince
  • Google Docs
  • IBM Lotus Symphony
  • Inkscape exports .odg
  • KOffice
  • LibreOffice
  • Microsoft Office 2007 SP2 and upwards (only Windows editions)
  • NeoOffice
  • Okular
  • OpenOffice.org
  • Scribus imports .odt and .odg
  • SoftMaker Office
  • Sun Microsystems StarOffice
  • WebODF
  • WordPad 6.1 (Windows 7) partial support.
  • Zoho Office Suite
(Theo wikipedia)

Lịch sử phát triển của OpenOffice.org

Giới thiệu

OpenOffice.org (OOo) là đề án mã nguồn mở cho ứng dụng văn phòng gồm các ứng dụng soạn thảo văn bản, bảng tính điện tử, trình chiếu, xử lý đồ họa véc-tơ và soạn thảo trang mạng với tất cả những mệnh lệnh tương đương với các chương trình ứng dụng văn phòng khác và có thể thay thế được các phần mềm thương mại này.

OOo hỗ trợ nhiều ngôn ngữ (Bản OOo 3.4 Beta hiện tại hỗ trợ Tiếng Anh cũng như 69 ngôn ngữ khác). Nó lưu data theo format chuẩn mở chung, cũng có thể read/write files từ những ứng dụng office khác. Mặc dù mã nguồn ban đầu được viết bằng C++, nhưng nó cung cấp API cho nhiều ngôn ngữ lập trình scriptable, JAVA…

Lịch sử

OOo là bản nguồn mở của bộ ứng dụng văn phòng StarOffice, được phát triển vào thập niên 1980 bởi StarDivision (Đức), công ty sau này bị mua lại vào năm 1999 bởi SUN. Sau đó StarOffice 5.2 được phát hành miễn phí (theo chuẩn LGPL/SISSL).

13/10/2000, source code của OOo chính thức có thể download. Điều đặc biệt của StartOffice 6.0 là vai trò của dự án mã nguồn OOo. Trong dự án này, Sun đã mở mã nguồn của StarOffice (ngoại trừ một số module được phát triển bởi một số hãng thứ 3, những modul này sẽ vẫn nằm ngoài dự án mã nguồn mở) và xây dựng dự án OpenOffice.org. Điều đó không có nghĩa là Sun đẩy những phát triển tiếp theo cho những tình nguyện viên, phần lớn các công việc sẽ vẫn được phát triển bởi các lập trình viên của Sun, đồng thời Sun cũng trang trải các chi phí hoạt động của dự án OpenOffice.org.

1/5/2002 OOo 1.0 cho các hệ điều hành MS Windows, Linux and Solaris, và cho MaxOS năm 2003. OOo có thể tích hợp với 3rdparty add-ons và hỗ trợ export ra file .pdf và .swf

OOo 2.0 bắt đầu được phát triển từ năm 2003 với ý tưởng tăng tính tương tác với MS Office, tăng performance, khả năng integration cao (đặc biệt với GNOME) và thêm rất nhiều các tính năng khác. OOo 2.0 chính thức sử dụng format chuẩn OASIS OpenDocument XML cho việc lưu document.

9/2005 SUN ra tuyên bố bỏ chuẩn SISSL và sẽ chỉ sử dụng LGPL. Cùng với bản release 2.0.3, SUN chuyển chu kì release của mình từ 18 tháng/lần xuống 3 tháng/lần.

10/2008 release OOo 3.0, hỗ trợ ODF và đưa ra bản native cho MacOS

Hiện nay OOo đã được Việt hóa 100% (trang cộng đồng Việt hóa OOo http://vi.openoffice.org/)

Reference

http://wiki.services.openoffice.org/wiki/A_Brief_History_Of_OpenOffice.org

http://vi.openoffice.org/background.html

http://en.wikipedia.org/wiki/OpenOffice.org

Build LibreOffice trên Fedora 15

Để build được LibreOffice thì có mấy lưu ý sau:
  1. Nên tạo riêng một phân vùng khoảng 20G - 30G làm chỗ lưu code của LibreOffice. Phân vùng này nên đặt định dạng Ext3/Ext4 thì Fedora sẽ làm việc tốt hơn. Có thể đặt tên là LinuxData
  2. Cài các dependencies
    sudo yum-builddep libreoffice
  3. Fedora còn thiếu một gõi nữa là gnome-vfs2-devel, cài bằng lệnh:
    sudo yum install gnome-vfs2-devel
  4. Cài trình quản lý version git (code của libre dùng cái này)
    sudo yum install git
  5. Lấy code libre từ git server. Trong terminal, di chuyển tới phân vùng Ext3/Ext4 ở bước 1. Tất nhiên là phải mount phân vùng đó trước. Để mount được thì chỉ cần double click vào icon computer trên Desktop rồi double click vào ổ LinuxData. Rồi di chuyển tới phân vùng bằng lệnh:
    cd /media/LinuxData

    Sau khi đã di chuyển tới phân vùng LinuxData, chạy các lệnh sau và ngồi đợi đến khi nó chạy xong
    mkdir git

    cd git

    git clone git://anongit.freedesktop.org/libreoffice/bootstrap libo

  6. Nhảy vào trong thư mục libo
    cd libo
  7. Chạy autogen.sh (cái này để configure môi trường trước khi build)
    ./autogen.sh --with-num-cpus=2

    Trong đó, 2 ứng với số lượng core của CPU
  8. Sau khi chạy xong autogen.sh, ta tiến hành patch một file trong chỗ code lấy từ git về. Đầu tiên là vào link
    http://pkgs.fedoraproject.org/gitweb/?p=libreoffice.git;a=blob_plain;f=vbahelper.visibility.patch;hb=HEAD 
    Copy nội dung của link trên về thành file vbahelper.visibility.patch để ở thư mục libo (top level). Sau đó chạy patch
    sudo patch -p0 < vbahelper.visibility.patch


  9. Tiếp tới thì make, trong terminal gõ
    sudo make
    Đây là công đoạn đau khổ nhất, mình chạy cả buổi chiều tới giờ vẫn chưa xong @_@ Thấy nó phải download một lô một lốc các thứ về, lâu lắm Y_Y Nhưng mà cố gắng kiên nhẫn, cắm máy mà chạy :->
  10. Sau khi make xong (download lib + make), ta tiến hành
    sudo make dev-install
  11. Sau khi make dev-install xong thì có thể coi như là build xong, vào trong thư mục install/program chạy thử file soffice

Thứ Tư, 22 tháng 6, 2011

Những tính năng nổi bật của LibreOffice 3.3 và LibreOffice 3.4 so với OpenOffice.org 3.3

Sau khi tách ra từ OpenOffice.org, LibreOffice đã tung ra 2 phiên bản 3.3 và 3.4. Sau đây là 1 số điểm cải tiến của LibreOffice so với người anh em của mình:

Phiên bản 3.3

LibreOffice 3.3.0 Beta 1, dựa trên bản phát hành beta của OpenOffice.org 3.3, đã được công bố vào ngày 28 tháng 9 năm 2010 - ngày ra mắt tổ chức. Bản ổn định 3.3 phát hành vào ngày 25 tháng 1 năm 2011. Vì The Document Foundation xem LibreOffice là sự tiếp nối của OpenOffice.org, LibreOffice 3.3 cũng dùng cách đánh số chung với mã nguồn OpenOffice.org.

LibreOffice 3.3 có một số tính năng không có trong OpenOffice.org 3.3 - các tính năng này rất khó đưa vào OpenOffice.org do chính sách nhượng bản quyền của Oracle. Các tính năng độc đáo bao gồm:

  • Nhập hình ảnh SVG.
  • Hỗ trợ help online thông qua Wiki Help
  • Bộ lọc nhập các văn bản Lotus Word Pro và MS Works
  • Bộ nhập Word Perfect được cải tiến.
  • Hôp thoại cho trang tiêu đề.
  • Bộ điều hướng cho phép đóng mở tựa đề trong góc nhìn dạng cây.
  • Tính năng "thử nghiệp" cho phép các tính năng chưa hoàn tất có thể được dùng thử.
  • Một số gói mở rộng tích hợp, bao gồm Presenter View trong Impress.
  • Biểu tượng tài liệu phân biệt theo màu.

Khi nhận xét về LibreOffice 3.3.0 vào ngày phát hành, Ryan Paul của Ars Technica nói, "Phần mềm giới thiệu môt số tính năng mới rất giá trị và có những cải tiến trong tất cả các ứng dụng. Cụ thể, bản phát hành đã phản ánh sức mạnh ngày càng tăng của dự án LibreOffice mới mẻ... Các tính năng mới có trong LibreOffice 3.3 cải tiến các bộ tính năng của sản phẩm, độ dễ dùng, vận hành tốt giữa nhiều định dạng khác nhau. Ví dụ, nó đã cải tiến hỗ trợ nhập văn bản từ Lotus Word Pro và Microsoft Works. Một tính năng quan trọng khác là khả năng nhập nội dung SVG và sửa đổi hình ảnh SVG trong LibreOffice Draw."

Phiên bản 3.4

Phiên bản tiếp theo của LibreOffice 3.3 là LibreOffice 3.4, được tung ra vào ngày 3/6/2011. Ở phiên bản này, độ tương thích của LibreOffice đối với những sản phẩm của MS Office đã được tăng lên rõ rệt. 1 số tính năng mới của phiên bản 3.4:

  • Tối ưu hóa việc sử dụng bộ nhớ: Các lập trình viên của LibreOffice đã cải tiến nhiều thuật toán, loại bỏ những đoạn code thừa của phiên bản cũ, giúp LibreOffice vận hành tốt hơn
  • Chuyển bộ lọc nhập và xuất file ODF từ Java sang C++, giúp tối ưu hóa performance của LibreOffice
  • Tiếp tục thay đổi tương thích đối với GNU Compiler Collection (gcc), giúp build được LibreOffice trên Microsoft Windows
  • Khi thay đổi 1 style trong Writer, chúng ta có thể kiểm tra output của style đấy mà không cần thiết phải đóng khung Style Dialog
  • Tối ưu tốc độ và độ tương thích của Calc đối với MS Exce. DataPilot ở phiên bản cũ đã được đổi thành Pivot Table, cùng với việc hỗ trợ người dùng nhập vô số các field (Ở phiên bản 3.3, người dùng chỉ có thể nhập tối đa 8 cột/hàng/data fields and và 10 page fields
  • Cải tiến giao diện cho Writer, Impress và Draw, ví dụ như thay đổi Find Textbox cho giống Firefox, hỗ trợ người dùng thêm và loại bỏ màu trong bảng màu, cải tiến text rendering engine và GTK+ (GIMP Toolkit) theme của Linux.
  • Dịch hàng nghìn comments của lập trình viên từ tiếng Đức sang tiếng Anh, loại bỏ nhiều đoạn code thừa trong Writer, Calc and Impress, nhiều icon trùng lặp (tons of duplication, of icons)
(Theo wikipedia)

1 số link tham khảo thêm:
http://www.libreoffice.org/download/new-features-and-fixes/
http://www.libreoffice.org/download/3-4-new-features-and-fixes/

Thứ Ba, 21 tháng 6, 2011

Tại sao LibreOffice tách ra khỏi OpenOffice.org

Nhiều tổ chức phải chi tiêu cho IT, đang tìm cách cắt giảm chi phí phần mềm, đã xem xét việc từ bỏ Microsoft Office bằng một giải pháp thay thế miễn phí hoặc gần như miễn phí. Và có một thực tế là, đại đa số người sử dụng Office chưa hề đụng tới 90% tính năng của nó – họ không cần, không muốn, không hiểu, và không muốn học. Vậy tại sao phải trả tiền cho toàn bộ các tính năng của Office?

Cho đến gần đây, giải pháp thay thế rõ ràng cho Office là OpenOffice.org, một dự án mã nguồn mở được bắt đầu bởi Sun Microsystems, bao gồm tất cả các khả năng hầu hết người dùng thực sự cần. Dù chưa tương thích 100%, OpenOffice hầu như luôn luôn thể hiện các tài liệu đặc thù được tạo từ Microsoft Office một cách chính xác. Đó là một giải pháp hợp lý cho phần lớn người dùng Office - những người không cần các biểu đồ Excel đẹp mắt hoặc các tài liệu Word phức tạp.

Nhưng đó là trước khi Oracle thâu tóm Sun và OpenOffice.org. Bây giờ mọi thứ có vẻ đang bị chao đảo.

Gần đây giới tiêu dùng IT đang tự hỏi liệu OpenOffice có còn cung cấp một thay thế đáng tin cậy cho sự đắt giá của Microsoft Office. Không ít doanh nghiệp đã đặt cược vào “cuộc chơi” miễn phí với việc chuyển sang dùng OpenOffice đang theo dõi tình hình chuyển từ xấu đến xấu hơn. Để hiểu những gì đang xảy ra, chúng ta hãy nhìn lại lịch sử.

Trở lại năm 1999, Sun Microsystems mua một sản phẩm Office có bản quyền gọi là StarOffice từ một công ty Đức. Năm 2000, Sun biến StarOffice thành một dự án mã nguồn mở, đổi tên thành OpenOffice.org (những ràng buộc nhãn hiệu thương mại ngăn cản Sun gọi OpenOffice một cách đơn giản). Các nhà phát triển tụ họp lại với dự án, gom nhóm ý tưởng tạo ra một sự thay thế nguồn mở cho “con bò sữa” của Microsoft. Các phiên bản dần dần được cải thiện khả năng tương thích với Microsoft Office và các tính năng cũng được mở rộng dần cho tới phiên bản 3.0, phát hành trong năm 2008, đã trở thành một thay thế cho Microsoft Office.

Trong những ngày đầu, làm việc với các định dạng tập tin ODF của OpenOffice từ Office đã có vấn đề, nhưng qua nhiều năm, điều đó trở nên dễ dàng hơn nhiều. Sun phát hành một công cụ miễn phí gọi là Sun ODF Plugin cho Microsoft Office, giúp người dùng Microsoft Office mở các tập tin ODF, một cách đáng tin cậy, trong Office 2003 và 2007 SP1. Microsoft bổ sung thêm sự hỗ trợ tin cậy cho việc mở và lưu các tập tin ODF từ bên trong Office 2007 SP2 và 2010.

Rồi thì, Oracle mua Sun vào tháng 1/2010, và nhiều thứ bắt đầu thay đổi, bao gồm thay đổi lớn mà nhiều người sử dụng OpenOffice nhận thấy: Sun ODF Plugin cũ biến mất. Thay vào đó, Oracle phát hành Oracle ODF Plug-In cho Microsoft Office và đưa ra một cái giá trời giáng 90 USD (~1,8 triệu đồng) cho nó, với đơn đặt hàng tối thiểu là 100 bản. Đây không phải là những gì người ta có thể mong đợi từ một sản phẩm mã nguồn mở được thiết kế để tương thích với Office.

Một số người liên quan với OpenOffice.org - nhiều người trong số họ là nhân viên của Sun, sau đó là Oracle - đã trở nên bất bình và vào tháng 9/2010 đã lập ra một nhóm độc lập gọi là The Document Foundation. TDF tuyên bố không có ý định chia rẽ mã OpenOffice.org, tuy nhiên sẽ gọi phiên bản OpenOffice của họ là "LibreOffice". Những nhà hỗ trợ đầu tiên bao gồm Free Software Foundation, Open Source Initiative, Canonical, Red Hat, Novell, GNOME , và Google. Canonical, công ty tài trợ cho việc phát triển hệ điều hành Ubuntu cũng tuyên bố sẽ kết hợp LibreOffice vào hệ điều hành của mình. Riêng IBM cho biết, họ sẽ thực hiện chính sách "wait-and-see" đối với LibreOffice.

TDF yêu cầu Larry Ellison của Oracle tự nguyện trao cho họ cái tên "OpenOffice.org." Ông Ellison khẳng định rằng TDF không vì lợi ích của Oracle, và ba tuần trước đã phản pháo vào những những người sáng lập; 33 nhà phát triển của Oracle từ chức để phản đối. Các nhà phát triển đăng một bức thư ngỏ mô tả ý định của họ cho LibreOffice.

Thứ Bảy, 18 tháng 6, 2011

Một số việc cần làm sau khi cài Fedora 15 - part 1

1. Cài yum-fastestmirror plugin
Đúng như tên gọi, yum-fastestmirror sẽ cố gắng chọn mirror nhanh nhất khi update hoặc cài packages.
sudo yum install yum-fastestmirror

2. Thêm nút Shutdown/Power Off
Mặc định Fedora 15 bắt buộc phải logout thì mới shutdown được. Để thêm item Shutdown/Power Off, ta cần cài package “gnome-shell-extensions-alternative-status-menu”. Có thể cài bằng cách vào Add/Remove Software (Applications>System>Add/Remove Software) và tìm gói đó. Sau khi đã cài xong, bấm Alt + F2, rồi gõ r và enter, hoặc logout rồi login lại.

Để mở Add/Remove Software, di chuột lên góc trái trên của màn hình, gõ Add

3. Cài gnome-tweak-tool để sửa font, theme các kiểu...

Mở terminal và chạy:

sudo yum install gnome-tweak-tool

Để chạy gnome-tweak-tool, bấm Alt + F2 rồi gõ gnome-tweak-tool.

4. Install Flash Player plugin --> cái này quá dễ rồi :)) cứ google flash-plugin thôi :D

5. Thêm các nút minimize, maximize, close vào các cửa sổ

Mặc định Fedora 15 chỉ có mỗi một nút close thôi (các bác phát triển bảo để thế cho gọn). Để thêm nốt 2 nút còn lại ta cần:

  1. Cài Configuration Editor: vào add/remove và tìm gconf-editor và cài hoặc dùng lệnh:
    sudo yum install gconf-editor
  2. Cài xong rồi thì mở Configuration Editor lên thôi. Lần mò tới desktop>gnome>shell>windows và tìm button_layout, thay vào đó:
    :minimize,maximize,close
  3. Bấm Alt+F2, bấm r rồi enter để apply thay đổi.

6. Kích hoạt Desktop:

Để kích hoạt Desktop, mở gnome-tweak-tool (đã cài lúc trước). Còn mở thế nào thì di chuột vào góc trái trên màn hình và gõ tweak rồi chọn Tweak Advanced Setting. Tìm đến File Manager và đổi "Have File Manager handle the Desktop" thành "On". Lúc đó có thể sẽ thấy báo lỗi crash gì đấy, nhưng mà ko sao, nói chung là vẫn dùng được =))

7. Cài Skype:

Quá dễ rồi, lại vào trang của skype và down bản cho Fedora 13+ về mà cài.

8. Cài Thunder bird

Ai quen dùng mail client thì cài:

sudo yum install thunderbird


9. Cài rar
Lệnh rất đơn giản :|
sudo yum localinstall --nogpgcheck http://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-stable.noarch.rpm http://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-stable.noarch.rpm 
sudo
yum install unrar

(Còn nữa)