SKKでかな入力時に全角記号が打てない▼問題
全角英数モード使え
終わりです。
とはいえなんかカスタマイズする方法が見つかったので、適当にリンクをならべてお茶を濁しておきます。
+ 設定方法
- コピペした文字
https://www.1101.com/dictionary/hobojisyo/kigou_yomikata.html
incompleteness-theorems.at.webry.info
▼感想
釣りをはじめました
♪ BGM: Devine Moments Of Truth/ Shpongle ♪
まえがき
この記事はmstdn.maud.io Advent Calendar 2019 - Adventarの11日目の記事です。
昨日はtana3nさんの[]でした。
わたしはだぁれ?
北九州を住処にしている一般男性(2X歳)です。 末代でのアカウントは
ですが、ステータスの通り、いわゆるお一人丼を建てて、そっちに引っ越してグダグダ管を巻いています。
スーパーで買った方が早いのでは?
スーパーで買ったら金銭でしか承認されないけど、釣りなら仕掛けにかける金銭で承認され、魚から承認され、大きいのや珍しいのが釣れれば周りの釣り人から承認されて気持ちが良いんですよ!!!!!!!!!!!!!!!!!
今何が釣れてる?
そろそろ難しくなってきましたがアジを頑張って釣ろうとしてます。いわゆるアジング。
実際に釣れているのはこの時期の魚であるメバルとかタチウオとかです。
「正直アジは春まで待った方が良い気がしてきた」とか弱気になったりもしますが、釣果情報とか見てると年内まではアジを諦めずに狙おうと思います。
使ってるパーツとか
最初は20年くらい前?のトライフォースZってやつを使ってましたが、ライントラブルが頻発してつらかったので近所の釣具屋で買った1800円の”いわゆる”釣り竿(スピニングタックル)を使っています。
あとがき
最近釣りにハマってたくさん気付いた事があり、できるだけ気付いた事をシェアーしたかったんですけど、一つの記事にまとめるのは難しかったです。あと常に何かが欠乏しているので助けてください。
明日はGirAFFE Beerさんの番です。グラッツェ!!!!!!!!
Mastodonを再起動したらコケた話(解決済み)
僕が建てているMastodonではサーバーOSにArch Linuxを使っているんですが、ちょっとアップデートしたらボロカスになったので修正しました。
問題は2つあり、
1. sudo pacman -Syu
したらローカルに突っ込んでるNative Extensionsと合わなくなった
2. PostgreSQLのバージョンアップの作業をサボっていた
これでした。アップグレードを雑にやると良くないなとしみじみ感じました。以後気を付けます。
それぞれ解決して無事に復活したのでメモ程度に残しておきます。
打ったコマンドまとめ
$ sudo pacman -Syu $ cd ~/live $ git fetch --tags $ git checkout $(git tag -l | grep -v 'rc[0-9]*$' | sort -V | tail -n 1) $ sudo reboot ここでmastodon-web.serviceが無限に落ちまくる $ sudo systemctl status mastodon-web.service $ sudo journalctl -b | less $ gem install bundler -v 1.17.3 $ RAILS_ENV=production bundle install $ yarn install $ RAILS_ENV=production bundle exec rails db:migrate ここでmigrate失敗、charlock_holmesというgemが見つからないというエラーが出る $ bundle pristine <- 1番が解決 $ RAILS_ENV=production bundle exec rails db:migrate ここでPostgreSQLが動いてないよーみたいなエラーが出たのでデータベースのアップグレード $ sudo systemctl status postgresql.service $ sudo pacman -S postgresql-old-upgrade $ sudo systemctl stop postgresql.service $ sudo mv /var/lib/postgres/data /var/lib/postgres/olddata $ mkdir /var/lib/postgres/data /var/lib/postgres/tmp $ sudo chown postgres:postgres /var/lib/postgres/data /var/lib/postgres/tmp $ sudo su postgres [postgres]$ initdb --locale ja_JP.UTF-8 -E UTF8 -D '/var/lib/postgres/data' [postgres]$ cd /var/lib/postgres/tmp [postgres]$ pg_upgrade -b /opt/pgsql-11/bin -B /usr/bin -d /var/lib/postgres/olddata -D /var/lib/postgres/data [postgres]$ exit $ sudo reboot <- 2番が解決 $ cd ~/live $ RAILS_ENV=production bin/tootctl cache clear $ sudo rm -rf /var/lib/postgres/olddata /var/lib/postgres/tmp
参考にしたサイトリスト
Arch LinuxでBrother製のプリンターを使ように設定する(debパッケージ編)
!!注意(Attention)!!
もし同じような事(debパッケージをバラして使う)をする場合は自己責任でお願いします
TL; DR
Arch LinuxでBrotherのプリンター(MFC-J5720CDW)を使いたいけど、AURにもGuteprintにもドライバーが無いので困っていた。
幸い公式サイトでdebパッケージは入っていたので、それらをバラして適切な場所に配置すると印刷できるようになった。
前提
やったこと
yay -S brother-mfc-j5910dw
で近いバージョンのプリンターを入れて、32bit用の依存関係とかを解決するsudo mkdir /var/spool/lpd
とsudo mkdir /usr/lib/cups/filter
で必要なディレクトリを掘る- 公式サイトからLPRドライバーとCUPS wrapperのdebパッケージを落としてくる
- LPRドライバー編
4.1. 適当なディレクトリを掘って、ar xv mfcj5720cdwlpr-[バージョン].i386.deb
でdebパッケージをバラす
4.2.tar xf data.tar.gz
でバイナリとかその他を取り出す
4.3. optとusrが吐き出されるので、sudo cp -r opt/brother/Printers/* /opt/brother/Printers
,sudo cp -r usr/bin/* /usr/bin
でLPRドライバーをコピーする - CUPS Wrapper編
5.1. LPRドライバーと同じ手順でdebをバラして、data.tar.gzを取り出し、data.tar.gzからoptを取り出す
5.2. LPRドライバーと同じようにコピーする sudo /opt/brother/Printers/mfcj5720cdw/cupswrapper/cupswrappermfcj5720cdw
でppdファイルをインストールsudo systemctl start org.cups.cupsd.service
,sudo systemctl enable org.cups.cupsd.serviceでサービスの起動、有効化
- このままだとUSB接続の設定なので、http://localhost:631 にアクセスしてプリンターを
ipp://[プリンターのIP]/ipp/port1
に変更 - 印刷のテスト
Arch LinuxのPCからUSBメモリにArch Linuxをインストールして良しなにするメモ
最近人と話す機会がなく、余裕がなくなっているのをひしひしと感じています。
普段使ってるArch Linuxでなんかあった用にUSBにArch Linuxをインストールしているのですが、容量を増やしたり、面倒になったりで何回もインストールを繰り返しているので忘れないうちにメモにしておきます。
基本的にはこの記事1(Qiitaで多分いちばん読まれてるArch インストールガイド)とArch Wikiのインストールガイド2に沿っています。
ただし、USBにインストール3となると少しカスタマイズが必要です(どうもURL中にアンダーバーが含まれてるとリンクが外れるみたいで、こいつだけbit.lyを通しています)。
前提
- x86_64(amd64)版Arch LinuxをインストールしたPCがある。
- 上記のPCはインターネットに接続されている。
- 上記のPCには1つ以上のUSBポートがある。
- 上記のPCはx86_64 UEFI(セキュアブートをオフにした状態)でのみ起動する(Legacy BIOSやi386 UEFIでの起動は考慮していません)。
- 上記のPCでインストールに利用するアカウントはroot権限またはsudoが利用できる権限を持っている。
やったこと
mkfs.btrfs /dev/sdX
してfstabにnoatime,discard,ssd,compress=lzo
を追記
Waylandの対応はGNOMEが一歩先を行っているのでgdmを入れる
gdmからSwayに渡したりすると尚良
GNOMEでもいいんだけど、WaylandだとCaps LcokとCtrlをスワップさせるのが効いていない現象がGNOMEでもKDEでもあるのでどうにかならんかな〜という気持ち
今日本語入力はfcxitx-mozcを使ってるけど、mozc自体が更新1年以上止まってるし(Googleなので当然のようにPython2が必須)、国際化の観点で言えばibusだけどCJKV言語だとfcitxが圧倒的で、GNOMEはibusしか対応したくなさそうだし、七面倒くさいことこの上ない。
node-gypもMayaもpython2の対応がアレだし、noto-emojiとかのビルドにもpython2が影が忍び寄るし、2020年にpython2の移行はできないんじゃないか?と不安になってくる。
参考文献
RaspberryPi 3B+ にArch Linux(aarch64版)をインストールするメモ
Raspberry Pi 4 model Bが発売されました! パチパチパチパチ〜!
USB3.0もサポート!給電はType-C!デュアルモニタにも対応!選べるRAMが3種類!とっても楽しみですね!なぜ半年前に3B+を買ってしまったんだ...
公式的にも「デスクトップコンピュータとして!」って言ってオススメしてるのでそういう使い方も想定しているのでしょう。RAMが4GBもあれば、XfceとかをVNCとかするにも十分機能するんじゃないかなと思います。いやまぁOpenbox使えば、というかRaspbianを使えば3B+でもVNC with X window出来るじゃんというのはそうなんですが、やっぱり私がローリング・リリースのディストリビューションを使いたいというのが正直なところ
私としても「もう待ちきれないよ!早く出してくれ!」と言った気分なのですが、手元にあるのは3B+。おもちゃとして使うにも、如何せん普段電子工作をしないのでイマイチ使いこなせてないのです。じゃあなんで買ったんだ
という訳で、RaspberryPi 3B+ にArch Linux(aarch64版)をインストールしていこうと思うんですが〜(Youtuber風に)、やっぱりRapberry Pi - ArchWikiにだいたいの事は載っていますので、そっちを最初に参照したほうが良いと思います。
インストールの準備
まず、適当にSDカードが挿せるLinuxマシンを手元に用意します。
端末を開きます。$ sudo su -
と打ってrootユーザーになっておくのが吉。
SDカードを挿します。
大抵の統合デスクトップ環境だと自動マウントをせず「マウントしてどんな操作を行いますか?」みたいなポップアップが出てきますが、無視して端末に向き合いましょう。
あとは適当に以下のコマンドを打っておきましょう。
パーティションを作る。
パーティションは大事です。僕はパーティションをミスって貴重な夜の時間を無駄にしました。
# fdisk /dev/mmcblk0 Command : o Command : n Command : p Command : Enter Command : +300M Command : t Command : c Command : n Command : p Command : Enter Command : Enter Command : w
ディスクの初期化とインストール作業
# mkfs.vfat -F32 /dev/mmcblk0p1 # mkfs.ext4 -O "^has_journal" /dev/mmcblk0p2 # mkdir root # mkdir boot # mount /dev/mmcblkop2 root # mount /dev/mmcblkop1 boot # wget http://os.archlinuxarm.org/os/ArchLinuxARM-rpi-3-latest.tar.gz # bsdtar -xpf ArchLinuxARM-rpi-3-latest.tar.gz -C root # sync # mv root/boot/* boot/ # umount root boot
ここまで首尾良く行ったらSDカードを外し、ラズパイにSDカードを挿して、電源を投入します。
起動してから
Login: root Password: root # wifi-menu # nano /etc/resolvconf.conf
name_servers=1.1.1.1 name_servers_append=1.0.0.1
# systemctl restart systemd-resolved.service # pacman-key --init # pacman-key --populate archlinuxarm # pacman -Syu
VPS(Arch Linux)でNon DockerなMastodonを立てたときのメモ(アップデート方法、証明書自動化を追記)
自分でいじれる丼が欲しかったので雑にやりました。 なにか問題が起きたときに追跡しづらいみたいなことを聞いたのと、RAMが小さいVPSなので、Docker化はしていません。
下準備
- Linodeでも何でも良いので、VPSにArch Linuxのイメージをバッとインストールする。前回Misskeyを立てたときに契約してたやつを使うのでRAM2GB, SSD50GBのやつを使う。
- Webコンソールでrootにログインしたあと、
# pacman -Syu
してパッケージの更新をする。 useradd -m -G wheel
mastodonユーザーを作成する。visudo
してwheelにsudoつかうのを許可する(ローカルユーザー visudoとかで検索してね!)。- 手元のPCのターミナルで
ssh-keygen -t ed25519 -C "hogehoge"
した後、公開鍵とかsshの設定をよしなにする(公開鍵をサーバーのauthorized_keysに貼り付けたり、パーミッションとかを確認する)(Authorized_keysとかポート番号とか気をつけてね)。 - VPSを再起動する。
ここからsshをつかってやります。
基本はjoinmastodonを見ながらやります。
- 手元のPCから
ssh XXXX(サーバーの宛先)
した後、$ sudo pacman -S fail2ban
でfail2banをインストールする。
[DEFAULT] destemail = your@email.here sendername = Fail2Ban [sshd] enabled = true port = 22 [sshd-ddos] enabled = true port = 22
- 上の内容を
/etc/fail2ban/jail.local
に保存する。 - fail2banを再起動する。
$ sudo pacman -S iptables
でiptablesを入れて
*filter # Allow all loopback (lo0) traffic and drop all traffic to 127/8 that doesn't use lo0 -A INPUT -i lo -j ACCEPT -A INPUT ! -i lo -d 127.0.0.0/8 -j REJECT # Accept all established inbound connections -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT # Allow all outbound traffic - you can modify this to only allow certain traffic -A OUTPUT -j ACCEPT # Allow HTTP and HTTPS connections from anywhere (the normal ports for websites and SSL). -A INPUT -p tcp --dport 80 -j ACCEPT -A INPUT -p tcp --dport 443 -j ACCEPT # Allow SSH connections # The -dport number should be the same port number you set in sshd_config -A INPUT -p tcp -m state --state NEW --dport 22 -j ACCEPT # Allow ping -A INPUT -p icmp -m icmp --icmp-type 8 -j ACCEPT # Log iptables denied calls -A INPUT -m limit --limit 5/min -j LOG --log-prefix "iptables denied: " --log-level 7 # Reject all other inbound - default deny unless explicitly allowed policy -A INPUT -j REJECT -A FORWARD -j REJECT COMMIT
と書いて設定したあと、$ sudo iptables-restore < /etc/iptables/rules.v4
で有効化する。
11. $ sudo pacman -S nodejs-lts-dubnium make imagemagick ffmpeg file git libpqxx libxml2 libxslt protobuf pkg-config gcc autoconf bison libyaml readline zlib nginx redis postgresql postgresql-docs postgresql-libs certbot certbot-nginx yarn libidn11 jemalloc libidn
で依存ライブラリをねじ込む。
12. rbenvの設定をよしなにして2.6.1に合わせたあと(2019年6月現在)、gem install bundler --no-document
でbundlerをインストールする。
PostgreSQLの設定
$ sudo su - postgres
でユーザーを切り替え、$ initdb --locale jp_JP.UTF-8 -E UTF-8 -D /var/lib/postgres/data
でデータベースの初期化を行う。
2019年6月26日追記 : 初期化を行ったあと、$ sudo systemctl (start|enable) postgresql.service
で起動・有効化してください。$ psql
と打ってPostgreSQLに接続したあと
> CREATE USER mastodon CREATEDB; > \q
と打ってデータベースを作成。
15. $ exit
でmastodonユーザーに戻る。
Redisの設定
- これを参考にしながらredisの設定をして動かす(enableもしておくと吉?)。
Mastodonの設定
$ git clone https://github.com/tootsuite/mastodon ~/live
でMastodonの引っ張ってくるその後$ cd ~/live
でMastodon直下に移動する。$ git checkout $(git tag -l | grep -v 'rc[0-9]*$' | sort -V | tail -n 1)
で最新版のMastodonに切り替える。
bundle install \ -j$(getconf _NPROCESSORS_ONLN) \ --deployment --without development test
20.yarn global add node-gyp
した後、yarn install --pure-lockfile
でRubyとJavascriptの依存ライブラリをプロジェクトに突っ込む。
21. RAILS_ENV=production bundle exec rake mastodon:setup
で設定をする。
22. PostgreSQLとかRedisは特にいじってないので # Enter連打でオッケー
23. メールに関してはsmtpサーバーとメールアドレス、パスワードが分かってればなんかできた(お一人丼ならあまり必要性がない)。
24. そのままDBのセットアップとかプリコンパイルをするか聞かれるのでYesを選択。
25. 管理者アカウントの作成。なんでも良いけど吐き出されるパスワードは控えておこう。
26. 設定の出力が終わったらrootになり、/etc/nginx/conf.dディレクトリを作る。
27. cp /home/mastodon/live/dist/nginx.conf /etc/nginx/conf/mstdn.conf
でコピーしたあと、自分のドメイン用に書き換える。
適当に暗号スイートをいじったりして楽しむ。
28. nginx -t
で設定ファイルのテストをする(SSLの認証を取るときのために、443番ポートのsslの記述を外しておく)。
29. certbot --nginx -d mstdn.jnsk.info -w /home/mastodon/live
でSSL証明書を発行する。
32. 証明書を発行出来たらconfのsslの設定を直す。
30. /home/mastodon/live/dist/以下にあるserviceファイルを/etc/systemd/system/
にコピーする。
31. 3つあるうち全部enableする。
$ sudo systemctl enable mastodon-web.service mastodon-sidekiq.service mastodon-streaming.service
33. /home/mastodon以下に$ chmod +x -R ~/
で実行権限を付ける(ここはちょっと危ないかもしれない)。
34. $ sudo systemctl start nginx
でnginxをスタートさせた後、各サービスもstartさせる。
$ sudo systemctl start mastodon-web.service mastodon-sidekiq.service mastodon-streaming.service
## 完走した感想
死ぬほど面倒くさい。
証明書はLet's Encryptを使っているので自動更新の設定をしないと行けないんですが、これまた面倒で後回しになってる → 追記でやりました。
※追記 アップデート方法
$ sudo pacman -Syu or $ yay (yayの入れ方はググったら5番目以内に出てくるやつを参考にしてほしい) $ cd ~/live $ git fetch && git checkout $(git tag -l | grep -v 'rc[0-9]*$' | sort -V | tail -n 1)※なんかmodifiedが大量に出てきたので$ git stashしたりした $ bundle install $ yarn install $ RAILS_ENV=production bundle exec rails db:migrate $ RAILS_ENV=production bundle exec rails assets:precompile $ sudo systemctl restart mastodon-*.service $ RAILS_ENV=production bin/tootctl cache clear
追記の追記 証明書更新の自動化
Arch Wikiを信じよ ということでArchWikiを参考にしています。
Arch LinuxなのでSytemd Timerを使います。SysVinit?知らない子ですね...
基本は/etc/systemd/system/
に更新手順を書いた設定ファイルを2つ作成(serviceとtimer)する→それを有効化・起動
するで自動化の設定は終わりです。
1. root権限で/etc/systemd/system/certbot.service
を開いて以下の内容を書いて保存。
[Unit] Description=Let's Encrypt renewal [Service] Type=oneshot ExecStart=/usr/bin/certbot renew --quiet --agree-tos --deploy-hook "systemctl reload nginx.service"
- 同様に、root権限で
/etc/systemd/system/certbot.timer
を以下のように書いて保存(参考記事ではデイリーだけどウィークリーでも問題ないかなって思って、参考記事から少し改変してます)。
[Unit] Description=Weekly renewal of Let's Encrypt's certificates [Timer] OnCalendar=weekly RandomizedDelaySec=1h Persistent=true [Install] WantedBy=timers.target
- root権限で
certbot.timer
を有効化・起動する。
# systemctl enable certbot.timer # systemctl start certbot.timer