複製鏈接
請複製以下鏈接發送給好友

gNewSense

鎖定
gNewSense是自由軟件基金會(FSF)基於Ubuntu Linux建立的完全自由的操作系統發行版。已於2021年四月終止開發。 [2] 
外文名
gNewSense
開發公司
自由軟件基金會
性    質
操作系統
運營方式
終止開發

gNewSense系統介紹

gNewSense目標是要提供一個100%自由的操作系統,用户可以訪問到系統裏全部軟件的源代碼,無論是內核還是用户態程序。gNewSense基於Ubuntu,Ubuntu是從 Debian GNU/Linux上創建的發行版,並且於Debian合作緊密。需要説明的是DebianGNU/Linux雖然冠GNU之名,但是不完全符合GNU的自由精神,而是有所妥協,提供了非自由軟件選項。第一個得到GNU承認的完全自由的GNU / Linux發行版是基於Gentoo的Ututo。
gNewSense發佈時包含了一些改進,但不包含任何私有或非自由的組件。特別地,所有的私有固件、受限制的模塊、Ubuntu的徽標,都被移除了,而“Universe”軟件倉庫缺省被選中,一些GNU應用軟件Emacs和開發庫,以及bsdgames和NetHack,都被包含在缺省安裝中。該計劃的目標是創建一份完全自由的Linux發行。
作為一份由自由軟件基金會贊助的產品,gNewSense是基於Ubuntu的Linux發行,它發佈時包含了一些改進,但不包含任何私有或非自由的組 件。特別地,所有的私有固件、受限制的模塊、Ubuntu的徽標,都被移除了,而“Universe”軟件倉庫缺省被選中,一些GNU應用軟件如 Emacs和開發庫,以及bsdgames和NetHack,都被包含在缺省安裝中。該計劃的目標是創建一份完全自由的Linux發行。 [1] 

gNewSense主要區別

最好從Ubuntu和Debian的源的格式來簡單理解一下自由軟件與非自由軟件的區別,以及為什麼要創建gNewSense發行版,對Ubuntu和 Debian很軟件包是否自由或者/etc/apt/souce.list文間中各個源的參數很熟的讀者可以直接跳過。

gNewSense信息

“源”指的就是/etc/apt/sources.lis文件中包含的類如此類的信息:
對於Ubuntu系統
注意http鏈接地址後面的四個參數:main restricted universe multiverse
Ubuntu把所有軟件分為4類,稱為“組件(component)”,以反映不同的許可證和可用的支
持級別。缺省情況下,來自main的精選包會被安裝以滿足大多數計算機用户的基本要求,同
樣被安裝的還有來自restricted的對系統可用絕對需要的任何包。
main組件只包含符合Ubuntu許可證要求並可以從Ubuntu團隊中獲得支持的包。這個策略力圖
使日常使用Linux系統時所需的任何東西包括在內。在這個組件內的包可以確保得到技術支
持和及時的安全升級。
restricted 組件包含了由於其重要性而被Ubuntu開發者支持的軟件,但是它們並不具有合
適的自由許可證,因此不能列入 main。其中包括僅能以二進制形式獲得的顯卡驅動程序。
因為Ubuntu開發者無法獲得源代碼,其支持的水平與main相比是有限的。
universe組件包含範圍廣泛的軟件,他們或許是受限許可證,或許不是,但是都不為
Ubuntu團隊支持。這樣用户可以使用Ubuntu的包管理系統安裝各種各樣的程序,同時又與
main和restricted中被支持的包相隔離。
最後是multiverse組件,其中包括了不符合自由軟件要求而且不被支持的軟件包
對於Debian系統
四項的含義分別是:
main 主要的基本的且符合GPL的軟件
non-free 不符合GPL的軟件
contrib 可以運行但是依賴non-free的軟件
non-US 非美國地區的。
gNewSense的特性
由上可以看出Ubuntu和Debian並非完全自由,而是做了一定的妥協。
翻譯如下:
⒈ main組件中(名詞“組件”借用Ubuntu的概念)Firmware從內核中去掉了。
⒉ 製作發行版的工具Builder。
⒊ Restricted組件去掉了。
⒋ Ubuntu的圖標被替換掉了。
⒌ 默認開啓Universe組件。
⒍ 安裝了emacs,bsdgames,nethack 和 build-essential 作為默認組件。

gNewSense安裝配置

gNewSense gNewSense
目前最新版是2008年8月25日發佈的gNewSense 2.1版。gNewSense 2.1 DeltaH基於Ubuntu 8.04 Hardy,移除了其中的非自由軟件和非自由驅動。加入Usplash,新主題和圖案,LiveCD sudo不再詢問密碼等等。gNewSense的安裝配置跟Ubuntu一樣。用LiveCD引導進入系統,點擊install圖標,選擇安裝的語言(中文)只需要7步,就可以把gNewSense安裝到硬盤中。
但即使你選擇了中文為默認語言,進入系統後,還有大量的程序如OpenOffice、Synaptic(新立得軟件包管理器)、控制終端等等都為英文界面,這就需要我們進行一些小小的安裝配置,以快速地建立一個舒適的中文使用環境。
設定連接到互聯網
⒈請確保你的系統已聯入互聯網。假如你使用ADSL上網,請參考《ADSL使用PPPoEConf連接到互聯網》方法連接。如連接不到網絡請到Linuxsir論壇中求助。
⒉確認連接到互聯網後,我們需要更新軟件包列表。請在終端輸入:
$ sudo aptitude update
⒊安裝更新整個系統。執行下面的命令:
$ sudo aptitude dist-upgrade
或者你打開“系統→系統管理→新立得軟件包管理器”,安裝更新。
設置中文環境
如果你安裝的時候語言選擇了中國,那麼你已經有一個zh_CN.UTF-8的中文環境了。
* 如果你安裝的是英文界面,在進入桌面後:單擊主菜單中的“系統(System)–> 系統管理(Administration) –> 打開 語言支持(language support)”。
* 在“支持的語言”列表中找到“漢語(Chinese)”,在右端打上勾。同時將默認語言修改為“漢語(Chinese)”並勾選“啓用複雜字符輸入支持(Enable support to enter complex characters)”,點擊確定按鈕。
* gNewSense這時會下載並安裝語言包。安裝完畢之後,當你註銷後重新登錄,界面就變成中文的了。
當然你也可以在終端下安裝,gNewSense會為你自動安裝系統中未安裝中文支持程序的中文包。你也可以順便裝上高質量字體,文泉驛點陣宋體,讓你的桌面更漂亮。
$ sudo aptitude install language-pack-gnome-zh-base language-pack-gnome-zh language-pack-zh xfonts-wqy
安裝完後,在系統–>;系統管理–>;字體 裏選擇你想要顯示的字體,這樣你的桌面就漂亮了。
安裝SCIM輸入平台及輸入法
gNewSense系統只默認安裝了SCIM輸入平台,輸入法則需要我們來選擇安裝,我用的是五筆scim-tables-zh,如果你用拼音就換成 scim-pinyin。
$ sudo aptitude install im-switch scim scim-gtk2-immodule scim-tables-zh
$ im-switch -s scim -z default
設置好後,別忘記註銷桌面重新登陸。或者你啓動一下輸入法:
$ sudo scim -d
你想刪除SCIM,使用Fcitx輸入法:
$ sudo aptitude purge scim
建議你還是保留Scim輸入法,只把當前輸入法設置成了Fcitx為好。
用自己喜歡的編輯器打開一個文件:
$ sudo gedit /usr/lib/gtk-2.0/2.10.0/immodule-files.d/scim-gtk2-immodule.immodules
找到下面這段:
# automatically generated by dh_gtkmodules,do not edit
“scim” “SCIM Input Method” “scim” “/usr/share/locale” “ja:ko:zh”
把最後的:zh刪除掉,即只剩下”ja:ko”,在中文環境下,不開啓Scim。重新登陸系統即可。安裝Fcitx中文輸入法
$ sudo aptitude install im-switch fcitx
$ im-switch -s fcitx -z default
注意:最後一步操作不加sudo。完成設置最好重啓一下X,輸入法就生效了。
多媒體應用環境設置
説句實話,要想使用100%自由軟件,你可能就要放棄一些應用了,比如影音。因為多數影音的編碼都是專有格式。少有自由開放的編碼。如果你只需要聽MP3還好辦,只需要:
$ sudo aptitude install audacious
如果你覺得,現在的網絡電影這麼多,不能播放多可惜。那你就加入下面的Ubuntu的源:
$ sudo aptitude update && sudo aptitude install medibuntu-keyring && sudo aptitude update
安裝Mplayer及DVD支持、音頻解碼及RealPlayer:
$ sudo aptitude install mplayer mplayer-fonts mplayer-skin libdvdcss2 w32codecs realplayer
這樣,你的電腦就可以播放幾十種格式的影音文件了。
大功告成,請註銷重新進入桌面!以上對gNewSense系統的基本設置,你已經完成。不過這些設置對於你來説遠遠不夠。你一定還想安裝自己需要的軟件,那就用圖形化安裝程序按需要安裝吧。
圖形化安裝程序
gNewSense的Gnome桌面中還提供了兩種圖形化前端工具,一個是:應用程序->;添加/刪除程序,另一個是:系統->;系統設置->;新立得軟件包管理器。
如果你厭煩了用終端安裝程序,就用這兩種圖形化程序來安裝你需要的軟件吧。
* 添加/刪除程序提供了更多、更詳細的説明,並且有和應用程序菜單相對應的軟件分類,和漂亮直觀的圖標顯示。即使你不懂命令也可以輕鬆使用,不用命令你就能添加、刪除程序,非常方便。
* 新立得軟件包管理器不但有軟件包的管理,還提供系統升級的功能。如果你安裝了中文環境支持,你打開之後就會有中文界面,否則只是英文界面。如果在管理器中細心尋找就可以發現寶藏,很多你想要的軟件,不用到網絡上去搜索下載,它就已經在你的安裝源裏。並且,它還提供了強大的搜索功能,你可以搜索軟件名稱、軟件註釋、軟件介紹關鍵詞來想辦法找到需要的軟件。

gNewSense創建發行版

作為創建gNewSense的一部分,我們導出了Builder工具,允許在Ubuntu Hardy的基礎上創建新的GNU/Linux發行版。通過一個簡單的配置文件,你就能夠選擇發行版的名稱,版本號,標語以及你想要安裝或者移除默認的軟件包。圖像將會自動生成。雖然這些腳本主要的目的是為了創建gNewSense,但是它還是一個不錯值得利用的工具。需要注意的是你可以不遵循下面的步驟使用gNewSense,因為你可以從網站的鏡像下載到相關的鏡像文件
你需要至少60GB的硬盤空間,最好有一個非常快的網絡連接(因為你將要下載40GB的數據)。同時你的鏡像點(也可以在同一個系統中)也需要 40GB左右的空間。如果你會利用硬鏈接,就能夠避免一些重複的下載。這一些操作都將在Ubuntu Hardy(或者更高版本的)系統執行。所有的命令都必須運行在Root權限下。
圖形化添加/刪除程序 圖形化添加/刪除程序
如果你有什麼問題,可以發到我們的IRC中。Builder這個工具還只是測試版軟件,我已經很久沒有從源碼重新編譯過該工具,因為有些代碼已經修改過了。第一步:GPG Key
軟件庫中很多最近版本的apt,需要經過GPG簽名的版本文件,這樣可以保證發行版的集成度,所以我們的第一步就是創建一個GPG Key。
gpg --gen-key
這個命令就可以讓你做到這些。確保Key只有一個空白的密碼。把這個Key的指紋信息記錄下來,因為之後你將在配置文件中用到它。
第二步: Deb鏡像(可選的)
為了避免重複下載文件,我建議創建一個Ubuntu main和universe軟件庫的鏡像點。這樣的話大概需要40GB的空間。
--ignore-release-gpg --root=ubuntu /the/target/directory
你也可以建一個Apache服務器,這樣你就能通過HTTP看到這個鏡像點。這個步驟是可選的,但是我強烈推薦大家制作一個本地的Ubuntu鏡像點。
第三步: 軟件包
你需要安裝一些軟件包,使得Builder運行順暢。
apt-get install reprepro debmirror build-essential apache2 subversion cdebootstrap debootstrap imagemagick
cd builder
如果這裏面還缺少某些軟件包,請告知我。
第四步: 配置
用文本編輯器,打開配置文件。你主要關心的設置有MIRROR,RELEASE,DISTRONAME,DOMAIN,BASEDIR,和REPOAPT。如果還有其它的定製要求可以修改配置文件的其它設置部分。
MIRROR 指的是你在第二步中創建的鏡像點,或者Ubuntu鏡像點,它應該包含安全的軟件包。
MIRRORDIST 指的是鏡像點的發行版本,通常是“Ubuntu“
DISTRONAME 指的是你的發行版名稱,只能包含字母和數字。
BASE_RELEASE 指的是你的版本號。版本號應該是小寫的,因為它將在路徑出現。
TAGLINE 出現在開機啓動和登錄的屏幕中。
SIGNINGKEY 指的是第一步中你設置的GPG Key,不能包含任何空格。
BASEDIR 指的是放置軟件庫、livecd、臨時文件的目錄名稱,REPODST 指的是當前文件系統下建立的鏡像點位置($BASEDIR/發行版名稱的小寫形式)。
REPOAPT 指的是編譯腳本放置的路徑,用來下載軟件包。我們假定在archive.DOMAIN和security.DOMAIN以及subdomains處都是類Ubuntu的安裝方式。
RSYNC_DEST 指的是可以通過push-repo 或者push-cd來同步的軟件庫和livecd的位置。
LOGO_LETTER 指的是標誌中的字母。
META_*_{ADD,REMOVE} 在你的默認的軟件包建立之後,用來管理哪些軟件包你想增加或者想把它從Ubuntu默認的軟件包移除。
*_VERSION 指的是給軟件包版本添加的號碼。每次你要重編譯一個軟件包的時候,你需要增加這些。多半都是從1開始計。
第五步: 構造軟件庫
./gen-repo && ./do-update
這一步需要一些時間。當這個命令運行的時候,軟件庫有可能會不一致。這就是為何在第七步中你只需要將改動放到鏡像點中。每次有新的版本(例如安全庫更新了)重新執行 do-update命令就可以了(如果需要的話,也只可以執行debmirror)。
如果你在64位的內核上運行32位的用户程序,安裝linux32軟件包,然後執行命令
./gen-repo && linux32 ./do-update
第六步: 創建LiveCD
./gen-livecd
創建好的鏡像文件將放在 $LⅣECDDIR/$DISTRONAME_L-livecd-$LⅣECD_VERSION.iso
./gen-cdsource
./stage-cd
這兩個命令將創建一個源碼包,並把這個ISO放置在 $REPODST/cdimage
第七步:把你的軟件庫放到鏡像點並公開
現在可以在你的鏡像點公開你的軟件庫(dists和pool)地址和LiveCD,將你的新發行版向世界公開。
./push-repo
./push-cd
? Brian Brazil 2006
Minor edits by Karl Goetz
參考資料