Seeker's Memo

個人的で技術的かもしれないメモがメインのブログです。http://seekers.hatenablog.jp/about

Arch Linux => AUR(makepkg)の高速化やら、その他便利設定やツールとか

makepkgの高速化についてはgz=>pigzにする
makepkg - ArchWiki
とか、あとはまあ定番の「ccache」導入と有効化やらMAKEFLAGS有効化して書き換える(-j? <= 物理コア数〜論理コア数+1程度がいいと言われてるらしいが)ぐらいか


MAKEFLAGS="-j$(($(nproc)+1))"
「xz」の代わりに「pixz」なんてのや、「bzip2」の代替「pbzip2」ものもあるみたいだが、オプションの違いを調べるのが面倒なのでとりあえずやめた
現在では高速化がなされた圧縮展開がなされてるのでやらなくてもいい

デフォルトのXZのまま多少マシにするには、
/etc/makepkg.conf

COMPRESSXZ=(xz -c -z - --threads=0)

まあ後述のようにしなくても、xz使用のままでCOMPRESSXZの行のところを上記みたいに --threads=0としてくれれば多少マルチスレッド対応になって速いみたい。0はAUTO指定かなよくしらんけど。

# pacman -S pigz
で、書いてあるとおり、該当箇所を「gz」から「pigz」に換えるだけ。gzのオプションはそのままでいいみたい。(一番下の「EXT」の拡張子部分を「gz」にする必要がある?)
デフォルで使用されるXZを切り替える場合は「pixz」をインストールして「COMPRESSXZ=」の部分だけを書き換える
# pacman -S pixz
# nano /etc/makepkg.conf

#COMPRESSXZ=(xz -c -z -)
COMPRESSXZ=(pixz )


上記のどれかをして、インストールがかなり速くなった

おまけ

あと/etc/pacman.confの追加のオプションで、
「ILoveCandy」とか言うのがあったりする検索けんさくぅ!
設定すると進捗とかがまさしくあれになります(笑
非常におちゃめでよろしい。


「dkms」とか、「trizen」、「yay」などはこの前紹介記事書いた。


あとは、Chromeとか使ってる人は「Profile-Sync-Daemon(PSD)」とかかな?RAMに配置して保存や世代バックアップもしてくれるやつ。
Profile-sync-daemon - ArchWiki


微妙に関係ないけど、USB-ISOライターの「Rufas」とか

【2018/06版】Arch Linuxに関するメモ(「dkms」や「AURヘルパー」導入など)

AURヘルパーの「yaourt」が少し前からリポジトリから外された模様(以前のように一発でインストールできなくなってる?)

理由までは詳しく調べてないのでわかりません…ゴメンナサイ。
おそらく、開発が停滞してメンテナが減ったかなんかしてるか、Arch Linuxのパッケージとしてなにか問題があるか、使用が非推奨になってるかとかだとは思う。

代わりといってはなんだが、インストールが比較的楽なAURヘルパー「yay」または「trizen」があったので入れて使ってみる

どちらというと、とりあえずAURヘルパー使いたいなら「trizen」のほうがいいかなという気もしてるが……。ただオプションの多さとかでいうなら「yay」かな。
※同じように手順を踏めば、「yaourt」も使用できるが、その前に「package-query」も手動で入れなくてはならない。
※あってるかわからないけど、「yaourt(package-query)」のgitファイルの場所
https://aur.archlinux.org/package-query.git
https://aur.archlinux.org/yaourt.git

* まずはいつもどおり、「/etc/pacman.conf」をいじる(とはいえ、すでにAUR使ってる人はこれは必要ないというか、AUR使うだけならこれは要らないし、yaourtがあるリポジトリがここなだけであり)


[archlinuxfr]
SigLevel = PackageOptional
Server = http://repo.archlinux.fr/$arch

リポジトリ情報更新と必要なツール入れる

$ sudo pacman -Syy base-devel git

「yay」を最初からインストールする場合

$ cd /tmp
$ git clone https://aur.archlinux.org/yay.git
$ cd yay
$ makepkg -si

設定ファイルの場所は「$HOME/.config/yay/config.json
ついでにおまじないをしておく。意味は各自で調べてください。
$ yay --editmenu --nodiffmenu --sudoloop --save
PKGBUILDを編集しながら差分は表示しないモードにしておき、sudo再度尋ねない呪文

「trizen」を最初からインストールする場合

$ cd /tmp
$ git clone https://aur.archlinux.org/trizen.git
$ cd trizen
$ makepkg -si

設定ファイルの場所は「$HOME/.config/trizen/trizen.conf」

使い方は「yay」と「trizen」の両方とも「pacman」や「yaourt」とだいたい同じみたい。追加の便利なオプションもあるみたいだが、まだあまり触ってない。

VirtualBox追っかけたり、いろんなドライバや各種カーネル追っかけたいときに手動や全自動もできる「dkms」は便利。詳しくはArchWikiで。

※例:ここではlinux-zenカーネルなどもついでにぶちこんでいる例

$ trizen -S dkms nvidia-dkms linux-zen linux-zen-headers
# mkinitcpio -p linux-zen
# grub-mkconfig -o /boot/grub/grub.cfg

Xのインプット系ドライバは「xf86-input-libinput」パッケージ一本でいけるっぽい。

NTFSexFATなどのファイルシステムのマウントと読み書きするために(ディレクトリは適当)

$ yay -S ntfs-3g exfat-utils dosfsutils
$ sudo mkdir -pv /windows

「/etc/fstab」に以下の様に追記すれば起動時に自動マウント

※デバイスやマウント位置、その他オプションなどは適当

/dev/sda3 /windows ntfs-3g rw,relatime,uid=0,gid=0,umask=022,dmode=700,fmode=600 0 0

X環境でキーボードがどうしても日本語配列にならないときに設定するもの

/etc/X11/xorg.conf.d/00-keyboard.conf

Section "InputClass"
Identifier "system-keyboard"
MatchIsKeyboard "on"
Option "XkbLayout" "jp"
Option "XkbModel" "pc105"
Option "XkbOptions" "terminate:ctrl_alt_bksp"
EndSection

GNOME-SHELLのテーマの一つをインストール

yay -S arc-gtk-theme-git

Xウィンドウのやつは、xorg-server ? xwayland?

未だによくわかってないけど、とりあえず両方入れてしまってる

GDM起動時に関するトラブルシュート(GDM自体が起動しないなど

☓ weston(☓wayland=>○xwayland=>?xorg-server)
GDM - ArchWiki

【私的】VSCodeの個人設定

{
"editor.fontFamily": "Ricty",
"editor.fontSize": 14,
"editor.detectIndentation": true,
"editor.tabSize": 4,
"editor.insertSpaces":true,
"editor.renderIndentGuides": true,
"files.insertFinalNewline": true,
"window.title": "${dirty}${activeEditorMedium}${separator}${rootName}${separator}${appName}",
"files.associations": {
"*.cpp": "cpp"
},
"files.encoding": "utf8",
"C_Cpp.includepath": "/usr/lib/include",
"C_Cpp.intelliSenseEngineFallback": "Disabled",
"workbench.colorTheme": "Visual Studio Dark"
}

ディレクトリ内のC言語(C++言語)ソースコードのエンコーディングを再帰的に一気に調べる(シェルワンライナーサンプル)

zshで動作確認。シェルの設定(グロブ展開)や、ファイルの存在可否、または他のシェルではうまく行かない可能性があるかも**/*.{cpp,hpp}を..../*.{cpp,hpp}に書き換えるなどして対処
※サブディレクトリ対応
※ここではNetwrokKanjiFilterを使うことにするが別の代替コマンドでもいい
下のような感じか。調べたいディレクトリに移動してから、

for file in **/*.{cpp,hpp,h,c}; do echo $(nkf -g $file)": $file"; done

ちょこちょこいじれば、他のテキストファイルや他の言語のソースコードにも使えるかな
エンコーディングの表示じゃなくて、エンコーディングの変更にしたり、はたまた別のコマンド作業をしたり、シンプルで応用がきくサンプルのつもり

Arch Linux:個人的インストールパッケージリストのメモ【2017-10月版】

【まえがき】

・2017-10月版です。
・以下、Archのパッケージ名まんまだったりそうでなかったり※入れるとき注意
・あんまり入れないつもりだったけど気がつくとお試し使用とかでも結構入れちゃうよね。
・システム自体の導入方法とかは当別記事や他サイト様(公式Wikiや解説個人サイト様)を参照されたし。

【パッケージ一覧(メモ付き)】

System & Tools

・base
・base-devel
・yaourt # AUR & Packagges Helper
・grub2
・efibootmgr
zsh #最強のシェル
wget # cmdline downloader
ntfs-3g #Userspace NTFS-Driver and mount tools
・aur/man-pages-ja
・ccache
・namcap
exfat-utils
fuse
・dosfstools
・mtools
・gparted
・core/linux-headers
linux-zen, linux-zen-headers
・ttf-ricty,ttf-migu # PKGBUILD いじる rictyricty-generator.shのラインに”-z”追加
・dkms # Linux-Kernel-Module & Package Installing Helper
・source-highlight #lessとかをカラー出力。プログラムソースとか読むとき便利っぽい。設定が必要。
・zip,unzip # zip archiver
・pkgfile #pacman補助
・mcloate # File(Directory)Index Search tool
nkf # Convert Encoding tool
・convmv # Convert File(Directory)-Name Encoding tool
・hdparm
・smartmontools
memtest86-efi

X

xorg-server
xorg-xinit
・mesa-demos # Including "glxgears"
Awesome
gnome # Integrate Desktop Environments GNOME3
・lightdm
gnome-tweak-tool # tweak-tool for GNOME3
・xf86-input-libinput
・xf86-video-intel # intelグラフィックドライバ(保険)
xorg-xrandr #ディスプレイ設定用
・htop 
・conky 
・xclip # X起動状態のターミナル用クリップボードツール
nvidia-dkms # nvidiaグラフィックドライバ(DKMS対応版)
・pnsft-pur/ibus-mozc # ibus+mozc(IME)

Terminal Emulators

・guake # Dropdown-Terminal
gnome-terminal
・terminator # terminal

# Editors & Development-tools
・aur/visual-studio-code
・gedit # Texteditor
・git # 元から入ってたかも
subversion
・clang # C/C++ Compiler
・distcc
ruby # Ruby language

www-browser

google-chrome

Multimedia

vlc # media-player
mplayer # media-player
・mpg123 # cmdline-tool for mp3,etc
https://wiki.archlinux.org/index.php/FluidSynth #MIDI音源+デーモン
・mpd #MusicPlayerDaemon(Music Player) そのままだと日本語が化けるが、設定ファイル次第で解消できる
・gmpc # frontend for mpd

Office

・libre-office

Others

emacs-nox # Xサポートのないemacs
・wine # Wine is not an (Windows) Emulator
・winetricks # utility for Wine
・wine-mono, wine-gecko
gentoo-mirrorselect # ArchからGentooを入れる際のアレ。
・arch-install-scripts # pacstrap,genfstab,arch-chrootとかが入った、インストール時にお世話になったブートストラップツール集
・archiso # Arch専用ISO-LiveLinux作成汎用ツール

Linuxと関係ないやつ

・TweetDeck(Chrome拡張)

備考及び候補

・os-prober # Dual(Multi)boot-Helper scripts for GRUB2
・xorriso # for grub-mkrescue(とある利用でbootable-iso作るのにひつよ)
・Kate # Texteditor

あとがき

・以上。
・他にもこっそり導入したものがあったりなかったり。

【AUR】yaourt ibus-mozcパッケージ:リポジトリ設定&パッケージインストール殴り書きメモ

リポジトリ追加

/etc/pacman.conf

[archlinuxfr]
SigLevel = PackageOptional
Server = http://repo.archlinux.fr/$arch



[pnsft-pur]
SigLevel = Optional TrustAll
Server = http://downloads.sourceforge.net/project/pnsft-aur/pur/$arch

yaourt インストール

# pacman -Syy yaourt

ibus-mozcなどをバイナリ収録したところ(pnsft-pur)からインストール

$ yaourt -S pnsft-pur/ibus-mozc