GNU rcsをベースから削除
FreeBSDの開発版は12-CURRENTになりましたが、10月中頃の段階で12-CURRENTからGNU rcsのコードが削除されました。
GNU rcsはFreeBSD 11.0-RELEASEにはまだ取り込まれています。また、ベースシステムから削除されましたがパッケージに2系列が用意されていますので、必要に応じてインストールすれば利用できます。
このままいけば少なくともFreeBSD 12.0-RELEASEからはベースシステムにはGNU rcsがない状態になります。
GNUフリーのベースへ向けて
FreeBSDプロジェクトは数年前からベースシステムからGNU系のツールやライブラリを取り除く取り組みを進めています。FreeBSD 11.0-RELEASEの段階だとGNUツールのうち次のライブラリやコマンドがベースシステムに取り込まれています。
- cc
- dialog
- diff
- diff3
- dtc
- gdb
- gperf
- grep
- groff
- rcs
- バイナリユーティリティ(as、ld、objcopy、objdump)
- 上記コマンドが利用するライブラリ
10月のコミットでこのなかからrcsが削除されたことになります。ビルド系のツールは最終的にLLVMの成果物に置き換わることが予定されていますので、これでほとんどがベースから消えることになると思います。それ以外のツールもすでに代替がありますので、今後徐々に削除が進むことになると思います。
ただ、grepだけは最後の最後まで残るか、これはいつまでたってもベースに入っているかもしれません。すでにbsdgrep(1)という代替候補が存在しているのですが、GNU grepは実行速度がともて動作が高速なのです。
RCS
RCS(Revision Control System)はバージョン管理システムの1つです。単一のテキストデータのバージョン管理を主な目的にしています。GNU rcsはRCSの代表的な実装系の1つです。
RCSの利点はなんといっても設定や利用が簡単という点にあります。利用するにあたってデータベースをセットアップするとかリポジトリの領域を用意して準備するとかそういったことをする必要がありません。RCS系の制御コマンドを使っていきなり利用をはじめることができます。
設定ファイルやソースコードなど、自分だけで利用するもので、過去の履歴も保存しておきたいといった場合に結構便利に使えるコマンドです。現在はGitHubのようにとても優れたツールを無償で利用できますのであえてRCSを使う必要性は低いかもしれません。FreeBSDの場合だとZFSもあるので、十分おきくらいにスナップショットを取っておけばバージョン管理システムがなくてもそれなりに便利にやっていけるのでもう必要ないといえば必要ないかもしれません。
ただ今でも、たとえば仮想環境でFreeBSDを使うとか、ネットワークに接続していない環境でも利用できる必要があるとかといったことになると、RCSは便利なものです。パッケージに入っていますし今後も使い続けられますので、使ったことがないのであれば一度試してみることをお勧めします。