解き放たれしソフトウェア

GNU/LinuxなどFLOSSについて書いてみるつもり

Debianのcronやpppd、Arch のcronieは、"."を含むファイルを実行しない

Debian では、 /etc/cron.daily や /etc/ppp/ip-up.d などに置いたスクリプトファイルでも、 . を名称に含んだファイルは実行されません。 なぜなら、置いてあるスクリプトを実行する際に run-parts コマンドを使用していて、 Debian の run-parts は .をフ…

【マルチコア向け】並行処理でアーカイブ処理を速くする

xz や bzip2、gz などのアーカイブを圧縮したり展開したりする際にも、 マルチコアやマルチCPUのマシンであれば、並行処理をさせれば速くなるはずです。 (むしろ、1コアだけしか使用しないと、コア数×クロック周波数の速度では出ず遅くなり、損です。) そ…

死に体のマイクロソフトの足を引っ張る日本社会

アップルコンピュータは収益構造を既に改めてきていて、MacOS も BSD ベースに換え、「オープンソース」戦略にしてソフトウェア製作の範囲を抑えてきています。 Macintosh はOSのみならずハードウェアを含めた呼び名でありハードウェアも売ることで売上を出…

ALSA 用の GUI ミキサ

PulseAudio 用の GUI ミキサだと、 pavucontrol があります(GTK+ 3 ベース)。 また、「デスクトップ環境」(DE)によっては同梱されています。 しかし、 PulseAudio でなく ALSA のミキサが欲しい人も多いと思います。 実のところ、未だにターミナルエミュレー…

PPP接続時のルーティング設定

今時は PPP 接続をするにしても専用ルータ機器を用いる人が多いのでしょうけれど。 私はPCから直接に PPP 接続をしています。 それが珍しいのかなんなのかわかりませんが、PPP 接続に付随する機能が充実していないことが少なくありません。 例えば Windows …

WebKit の翻弄される行く末

インターネット利用が広まって久しくもう数十年にもなりますが、その主な活用形態は今でもウェブです。 おそらく、ウェブとメールが生活必需というくらいになっているでしょう。 そして、メールも「ウェブメール」の時代になってかなり経ちます。 何が言いた…

【Gentoo】グローバルに指定して構わない USE フラグ

/etc/portage/make.conf*1などでグローバルに USE フラグを設定することが可能です。 他方で、 /etc/portage/package.use などでも、パッケージごとに USE フラグを指定することが可能です。 この双方の用い分けの問題です。 明らかな極論ですが、「全て pac…

【Gentoo】EAPI 6 での変更点

Gentoo での ebuild ファイルを書く際に呼び出す EAPI は、昨年に EAPI 6 がリリースされています。 5と6との詳しい相異点は、 Package Manager Specification に書いてあります。 特に重要だと思ったのは以下 unpack で指定するファイル名に(絶対でも相…

Gentoo で ccache を導入する意義

Gentoo では、原則としてソースコードからビルドします。 バージョンアップの際のみならず、 USE フラグを変更した際にもおおよそは再ビルドになります。 バージョンアップの際にも、バージョンアップするソフトウェア自体だけではなく、dependent なソフト…

Shift_JIS のファイル名を含む zip ファイルを GNU や UNIX 上で UTF-8 で復元するには

未だに、 Windows 上でアーカイブされた zip ファイルには、 Shift_JIS (CP932) のファイル名を含んでいることがあります。 テキストファイルの中身を変換したいときには、例えば nkf を用いれば可能です。 ($ nkf -S -w --overwrite [filename]) それに対し…

【Linux】swappiness でスワップアウトのしやすさを変える

Linux カーネルに対する設定で定番の手法ですが、vm.swappiness の値を変えることでスワップアウトのしやすさを変えられます。 0〜100までの範囲で数値を設定します(デフォルトは60)。 0にすれば限界までスワップアウトを避けます。 メモリが充分に…

【Linux】zswap は本当に速いのか

Linux カーネルでスワップの効率を上げるための方法に、 zram を使用する方法と、 zswap があります。 以前は zcache という圧縮をより全般的にかける機能もありましたが、今は廃止されています。 zram は、圧縮 RAM ディスクです。RAM ディスクに自動的に圧…

GRUB の os-prober

GNU のブートローダは GRUB で、Linux はいうまでもなく、 Windows にさえ対応しています。 他方の Windows は、ことあるごとにブートローダを勝手に書き換えようとするプロプライエタリぶり(独裁君主っぷり)を発揮しますが……。 「Windows Update やアップ…

コンパイルの job 数(-j、$MAKEOPTS)の適正値

近年の CPU はマルチコアが多いです。 一個の CPU で、複数の CPU を搭載しているかのような動作をします。 1つのプロセスは1つの CPU で動作をして越えません。マルチコアでも同様です。 uptime や w や top などで表示される load average の数値も、1…

私が Arch Linux も使っている理由

Archではなく Gentoo を私がメインにしている理由は、先日に書きました。 gnu.hatenablog.com それでも Arch をサブに残している理由は単純で、 関心をもったソフトウェアを試してみるときに速いからです。 Gentoo では、ほとんどのパッケージはビルドをしな…

Git と GitHub を一緒に教えるな

Git

Git 初心者に対して GitHub を同時に教えている事例が数えきれませんが、有害です。 Git と GitHub を一緒くたにして教えることをやめるべきです。 GitHub は、 Git 対応のリポジトリホスティングサービスであって、 Git ではありません。 比較して言えば、…

【Gentoo】パッケージの更新履歴の確認方法

Gentooの「Portageツリー」(メインリポジトリ)のパッケージには、以前はChangeLogというファイルが同梱されていました。 それが、CVS から Git に移行したときに、無くなってしまいました。 そのため、 ChangeLog を表示する equery c [package_name] のコ…

Debian の作者 Ian Murdock の死にまつわり

Debian の創始者の Ian Murdock 氏が死去したとの報が、年末の世界を駆け巡りました。 死去の前に Twitter で不適切ツイートがされていて、そしてアカウントごと消されたと思ったら、死亡です。 (死因は伏せられていますが、自殺予告ツイートをしていたこと…

Arch Linuxをメインに使うのをやめた理由

私は、 Gentoo だけではなく Arch も使っています。 しかし、 Gentoo の方がメインで、 Arch をメインに使うのはやめました。PKGBUILDの管理が面倒なうえに、(Arch が愚直なまでの単純さを旨としているだけに、)カスタマイズすればするほど、きたなくなっ…

Gentoo は、設定ファイルを上書きしないしポイ捨てしない

ソフトウェアパッケージをアップグレードしたり再インストールしたりするとしばしば、既存の設定ファイルの扱いが問題になります。 ディストリビューションによっては、デフォルトの設定ファイルの名称を変更して置いていくものが多くあります。 既存を別名…

Gentoo における日本語入力

Gentoo での日本語入力というよりも、 GNU/Linux における日本語入力という時点で選択肢が少ないのですが…… 変換エンジン(変換サーバ)と、それを利用するフロントエンド(インプットメソッド)、という2つのソフトウェアが必要です。 あるいは、両方を兼…

gentoo リポジトリの日本語フォント

Gentoo のメインリポジトリ(Portageツリー)に入っている日本語文字のフォントについてですが、少ないです。 説明に"japan"が入っているものや、 USE フラグに "ja" が入っているものを検索してみると $ eix -C media-fonts -S japan --in-overlay gentoo -…

【Gentoo】ebuild ファイルを書いてみる 第3回

前回の続きです。 第1回 【Gentoo】ebuild ファイルを書いてみる 第1回 - 解き放たれしソフトウェア 第2回 【Gentoo】ebuild ファイルを書いてみる 第2回 - 解き放たれしソフトウェア 前回は、実際に書いた ebuild ファイルの実例を示しました。 モリサ…

【Gentoo】ebuild ファイルを書いてみる 第2回

前回の記事の続きです。 gnu.hatenablog.com 前回は ebuild ファイルの名称について説明しました。 media-fonts/kazesawa/kazesawa-2015.12.18.ebuild ようやく内容についてです。 ebuild のマニュアルは、 man 5 ebuild です。 なお、ebuild の書きかたの例…

【Gentoo】ebuild ファイルを書いてみる 第1回

先日に、M+ FONTS と Adobe Source Sans Pro を合成したフォントを公開した人がいます(「僕が Linux デスクトップで使うフォントの話と、フォントを合成した話 - Qiita 」)。 そこで今回はこの kazesawa フォントをインストールする ebuild を書いてみます…

【Gentoo】リポジトリのつくりかた

公式メインリポジトリ(Portageツリー)にないソフトウェアを(パッケージマネージャの管理下で)インストールするためには、 ebuild ファイルを書く必要があります。 しかしまず第一歩としては、メインリポジトリや公式の追加リポジトリ、ユーザのリポジト…

Firefox 43 の強力なプライベートブラウジング機能

Firefox を使っていますが、最近はプライベートブラウジング機能の強化が進んでいます。 バージョン 43 では、 Firefox の設定の「プライバシー」の項目に「プライベートウィンドウでサイトによるトラッキングをブロックする」というチェックボックスがあり…

【Gentoo】eix でリポジトリの更新内容がわかりやすくなる

eix (app-portage/eix) ( https://github.com/vaeth/eix/ )をインストールしなくてもGentoo自体は動きますが、インストールしないと管理が手間取るので、インストールはほぼ必須だと思います。 それくらい便利なツールです。 便利なコマンド eix-sync 例えば…

【Portage】「emerge する」と言う理由

Gentooでは、Portageパッケージマネージャのコマンドである emerge を用いてインストールすることも、動詞として "emerge"と言う人がいます。*1 なぜ emerge というコマンド名かというともともとは、 ebuild merge だからです。 今でも Portage には、ebuild…

【Portage】リポジトリの追加のしかた

Gentooのメインリポジトリ(「Portageツリー」)だけでも既にたくさんのパッケージがありますが、 Gentooでも、ほかのディストリビューションと同様に、リポジトリ(「オーバーレイ」)の追加が可能です。 リポジトリを追加することで、さらに多くのソフトウ…