2020年12月31日 星期四

部落格說明

這個部落格是我自己當做筆記用。因為我記性差頭腦遲鈍,為了避免健忘問重複問題,所以把我問到的答案或爬文解決的結果的記錄下來。

網路上的 FreeBSD 中文資料很多都很舊了,常常找到 FreeBSD 5 或 6 的資料,沒有參考價值,所以在這裡和大家分享我的解決方法,如果我寫的東西是您需要的,也讓您不用再費心力去找資料。版本的新舊就很重要了,目前我在使用的是 FreeBSD-14-CURRENT ,如果您發現我前一句寫的版本已經很舊了,沒有更新,那抱歉了,我可能疏於寫本筆記,請您要去找新的方法了。


記錄一下我每次重新安裝系統會裝的套件 (置頂是為了我自己重灌系統方便看)

因為常常重裝系統 (絕對不是因為 FreeBSD 不穩定,是我自己愛玩,有好幾台筆電可以裝,還有我的 Raspberry Pi 2 有時候要裝最新的 snapshot),所以在此記錄,各位可以直接跳過,每個人的需求不一樣。

vim sudo tmux irssi zh-auto-tw-l10n git docproj itstool gettext-tools asciidoc source-highlight intel-backlight xorg xfce zh-gcin zh-arphicttf firefox libreoffice zh_TW-libreoffice parole ristretto xfce4-mixer xfce4-weather-plugin xfce4-battery-plugin xfce4-screenshooter-plugin pidgin-skypeweb poedit python

2020年11月1日 星期日

FreeBSD 使用預設選項安裝 ports

安裝 ports 的時候,系統常常會跳出提示對話視窗,詢問安裝的選項,這樣就必須一直盯著安裝過程,很麻煩,可以下這個指令:

make config-recursive && make install clean

他可以讓你在一開始的時候就選擇完全部的編譯選項後再開始編譯,這樣你就可以不用在過程中一直被煩了。

或是你根本沒有要改變預設編譯選項,那就可以下以下指令,以預設選項進行編譯來安裝 ports:

make -DBATCH install clean


2020年7月8日 星期三

FreeBSD 安裝 Raku (Perl 6)

正確說法應該是安裝 Rakudo Star 這個 Raku (Perl 6) Compiler

抓取原始碼
fetch https://rakudo.org/downloads/star/rakudo-star-2020.01.tar.gz

解壓縮
tar xfz rakudo-star-2020.01.tar.gz

編譯
cd rakudo-star-2020.01
perl Configure.pl --gen-moar --make-install --prefix ~/rakudo

最後編譯安裝成功會出現如下訊息:

Rakudo Star has been built and installed successfully.
Please make sure that the following directories are in PATH:
  /home/raycherng/rakudo/bin
  /home/raycherng/rakudo/share/perl6/site/bin


Rakudo has been built and installed.

將相關路徑加入 .shrc

Bash shell:
RAKU_HOME=/home/raycherng/rakudo/
export PATH=$PATH:${RAKU_HOME}/bin:${RAKU_HOME}/share/perl6/site/bin

Cshell:
setenv RAKU_HOME /home/raycherng/rakudo/
setenv PATH ${PATH}:${RAKU_HOME}/bin:${RAKU_HOME}/share/perl6/site/bin


相關參考連結:

https://raku.org/downloads
https://fluca1978.github.io/2020/01/14/RakuOnFreeBSD.html


2020年6月6日 星期六


今天裝了 py37-pip 後,執行 pip 會出現錯誤訊息:

Traceback (most recent call last):
  File "/usr/local/bin/pip", line 11, in <module>
    load_entry_point('pip==19.1.1', 'console_scripts', 'pip')()
  File "/usr/local/lib/python3.7/site-packages/pkg_resources/__init__.py", line 489, in load_entry_point
    return get_distribution(dist).load_entry_point(group, name)
  File "/usr/local/lib/python3.7/site-packages/pkg_resources/__init__.py", line 2852, in load_entry_point
    return ep.load()
  File "/usr/local/lib/python3.7/site-packages/pkg_resources/__init__.py", line 2443, in load
    return self.resolve()
  File "/usr/local/lib/python3.7/site-packages/pkg_resources/__init__.py", line 2449, in resolve
    module = __import__(self.module_name, fromlist=['__name__'], level=0)
  File "/usr/local/lib/python3.7/site-packages/pip/_internal/__init__.py", line 40, in <module>
    from pip._internal.cli.autocompletion import autocomplete
  File "/usr/local/lib/python3.7/site-packages/pip/_internal/cli/autocompletion.py", line 8, in <module>
    from pip._internal.cli.main_parser import create_main_parser
  File "/usr/local/lib/python3.7/site-packages/pip/_internal/cli/main_parser.py", line 12, in <module>
    from pip._internal.commands import (
  File "/usr/local/lib/python3.7/site-packages/pip/_internal/commands/__init__.py", line 6, in <module>
    from pip._internal.commands.completion import CompletionCommand
  File "/usr/local/lib/python3.7/site-packages/pip/_internal/commands/completion.py", line 6, in <module>
    from pip._internal.cli.base_command import Command
  File "/usr/local/lib/python3.7/site-packages/pip/_internal/cli/base_command.py", line 25, in <module>
    from pip._internal.index import PackageFinder
ImportError: cannot import name 'PackageFinder' from 'pip._internal.index' (/usr/local/lib/python3.7/site-packages/pip/_internal/index/__init__.py)


搜尋了一下,不少人在之前都有出過這個症頭,解決方法使重新裝一個新版的 pip:

curl https://bootstrap.pypa.io/get-pip.py | sudo python3


裝好就好了。

2020年3月13日 星期五

FreeBSD 安裝 boost C++ library

FreeBSD 安裝 boost C++ library

sudo pkg install boost-all

會裝在 /usr/local/include/boost 裡

2020年1月8日 星期三

tcsh shell 啟動 python 虛擬環境

一般來說,啟動 python 虛擬環境的指令是

source /venv/bin/activate

這個指令是把目前 python interpreter 的路徑加入 PATH 環境變數中,不過 tcsh 或是 csh 執行後會出現以下錯誤訊息:

Badly placed ()'s.

這是因為 tcsh 或是 csh 的指令不太一樣,要改執行:

source /venv/bin/activate.csh

FreeBSD 安裝 python3

FreeBSD 安裝python 很簡單,使用 pkg 安裝即可:

sudo pkg install python


安裝畫面如下所示:

密碼:
Updating FreeBSD repository catalogue...
Fetching meta.txz: 100%    944 B   0.9kB/s    00:01
Fetching packagesite.txz: 100%    6 MiB   6.5MB/s    00:01
Processing entries: 100%
FreeBSD repository update completed. 31528 packages processed.
All repositories are up to date.
The following 3 package(s) will be affected (of 0 checked):

New packages to be INSTALLED:
        python: 3.7_3,2
        python37: 3.7.6
        python3: 3_3

Number of packages to be installed: 3

The process will require 107 MiB more space.
16 MiB to be downloaded.

Proceed with this action? [y/N]: y
[1/3] Fetching python-3.7_3,2.txz: 100%    996 B   1.0kB/s    00:01
[2/3] Fetching python37-3.7.6.txz: 100%   16 MiB  16.4MB/s    00:01
[3/3] Fetching python3-3_3.txz: 100%    1 KiB   1.1kB/s    00:01
Checking integrity... done (0 conflicting)
[1/3] Installing python37-3.7.6...
[1/3] Extracting python37-3.7.6: 100%
[2/3] Installing python3-3_3...
[2/3] Extracting python3-3_3: 100%
[3/3] Installing python-3.7_3,2...
[3/3] Extracting python-3.7_3,2: 100%
=====
Message from python37-3.7.6:

--
Note that some standard Python modules are provided as separate ports
as they require additional dependencies. They are available as:

py37-gdbm       databases/py-gdbm@py37
py37-sqlite3    databases/py-sqlite3@py37
py37-tkinter    x11-toolkits/py-tkinter@py37


預設就是安裝 Python 3,現在裝好就有 pip 可以用,不用另外安裝。