2020-09-29
OSS、るりました。
先週出したPull Request、直したはずの場所がうまく直ってなかったので修正
3.0のNEWS見てWarning覗いたら2.7の対応が終わってなかったので対応
textlintの設定を試していた
{ "name": "doctree", "version": "1.0.0", "description": "Rubyリファレンスマニュアル", "scripts": { "test": "textlint refm/doc" }, "repository": { "type": "git", "url": "git+https://github.com/rurema/doctree.git" }, "author": "", "license": "CC-BY-3.0", "bugs": { "url": "https://github.com/rurema/doctree/issues" }, "homepage": "https://github.com/rurema/doctree#readme", "private": true, "devDependencies": { "@textlint/textlint-plugin-text": "^4.2.6", "textlint": "^11.7.6", "textlint-rule-preset-ja-technical-writing": "^4.0.1" } }
{ "filters": {}, "plugins": { "@textlint/text": { "extensions": [".rd"] } }, "rules": { "preset-ja-technical-writing": { "ja-no-mixed-period": false } } }
辞書系の置換はやっていったほうが読みやすくなりそう
とはいえ2.7対応とか残ってそうだし12月もそろそろだから未翻訳とかを雑に追加していくのがいいのかなあ
雑にマージした
Railsわからね
Railsの権限管理ライブラリのコントローラ単位でってやつ、routesのリソースとコントローラが対応してるからリソース単位の権限管理ができる理屈はわかる。が、モデルをリソースごとに作ればモデルに対して権限管理する系のライブラリで問題なくリソース単位の権限管理できるはずでそこにモニョりあり
— はなちん (@hanachin_) 2020年9月29日
ARだとレコードとモデルとリソースが密結合してるあたりの都合でほんとうは異なるリソースが1テーブルに永続化されてるときにモデル単位の権限管理ライブラリだと厳しくなるんだろうな
— はなちん (@hanachin_) 2020年9月29日
ウェブでのユースケース=URL(リソース)へのCRUD
なのでコントローラ単位でも問題起きづらそうだがやはりモデルに
寄せたほうがよいのでは、というのをやさいちさんのRuby on Railsの正体と向き合い方読み直しながら考えていた
— はなちん (@hanachin_) 2020年9月29日
2020-09-28
ノボテルホテル(元みやこほてr)でスマホからコーヒーにプリントできるRippleってサービスがあったので注文してみた
Ruby💎☕ pic.twitter.com/fEvfoKfkK8
— はなちん (@hanachin_) 2020年9月28日
便利〜
Okinawa.rb出た
バグを取った、protect_from_forgery
を子のコントローラでも独自に設定するときに親のコントローラでつけてる with
みたいなオプションを付け忘れていてデフォルト値の設定と違っていると、親のオプションが子にきいてない! なぜ?みたいになる。これはドキュメントにコントリビュートするチャンスですね。
業務でハマっていた問題が解決された!
— fullkawa (@fullkawa) 2020年9月28日
さすが、 @hanachin_ さん! すごい!!
だいたいの内容は話したと思う
色々と話しつつこのへんを読み直していた
Clean Architectureちゃんと読むか
スマホを交換するためバックアップや初期化をした
PayPalの住所を更新した
名前を変更するときは書類必要だったけど住所変更ならいらないよう
2020-09-26
前回を参考にディスクを設定していく
デバイス確認
# fdisk -l ディスク /dev/nvme0n1: 931.51 GiB, 1000204886016 バイト, 1953525168 セクタ ディスク型式: WDS100T3X0C-00SJG0 単位: セクタ (1 * 512 = 512 バイト) セクタサイズ (論理 / 物理): 512 バイト / 512 バイト I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト ディスク /dev/nvme1n1: 465.76 GiB, 500107862016 バイト, 976773168 セクタ ディスク型式: Samsung SSD 970 EVO Plus 500GB 単位: セクタ (1 * 512 = 512 バイト) セクタサイズ (論理 / 物理): 512 バイト / 512 バイト I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト ディスクラベルのタイプ: gpt ディスク識別子: 50FD9E2A-9AA9-43C1-B300-9EBBF3DD3DCB デバイス 開始位置 終了位置 セクタ サイズ タイプ /dev/nvme1n1p1 2048 1050623 1048576 512M EFI システム /dev/nvme1n1p2 1050624 976773119 975722496 465.3G Linux ファイルシステム ディスク /dev/sda: 3.64 TiB, 4000787030016 バイト, 7814037168 セクタ ディスク型式: HGST HDN726040AL 単位: セクタ (1 * 512 = 512 バイト) セクタサイズ (論理 / 物理): 512 バイト / 4096 バイト I/O サイズ (最小 / 推奨): 4096 バイト / 4096 バイト ディスクラベルのタイプ: gpt ディスク識別子: D54536BE-5324-4B85-B55B-5032488218D8 デバイス 開始位置 終了位置 セクタ サイズ タイプ /dev/sda1 2048 7814035455 7814033408 3.6T Linux ファイルシステム ディスク /dev/mapper/main-root: 465.26 GiB, 499566772224 バイト, 975716352 セクタ 単位: セクタ (1 * 512 = 512 バイト) セクタサイズ (論理 / 物理): 512 バイト / 512 バイト I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト ディスク /dev/mapper/root: 465.24 GiB, 499549995008 バイト, 975683584 セクタ 単位: セクタ (1 * 512 = 512 バイト) セクタサイズ (論理 / 物理): 512 バイト / 512 バイト I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト
パーティション切る
# parted /dev/nvme0n1 GNU Parted 3.3 /dev/nvme0n1 を使用 GNU Parted へようこそ! コマンド一覧を見るには 'help' と入力してください。 (parted) mklabel gpt (parted) mkpart ESP fat32 1MiB 513MiB (parted) mkpart primary 513MiB 100% (parted) set 1 esp on (parted) print モデル: WDS100T3X0C-00SJG0 (nvme) ディスク /dev/nvme0n1: 1000GB セクタサイズ (論理/物理): 512B/512B パーティションテーブル: gpt ディスクフラグ: 番号 開始 終了 サイズ ファイルシステム 名前 フラグ 1 1049kB 538MB 537MB ESP boot, esp 2 538MB 1000GB 1000GB primary (parted) quit 通知: 必要であれば /etc/fstab を更新するのを忘れないようにしてください。
確認
# fdisk -l ディスク /dev/nvme0n1: 931.51 GiB, 1000204886016 バイト, 1953525168 セクタ ディスク型式: WDS100T3X0C-00SJG0 単位: セクタ (1 * 512 = 512 バイト) セクタサイズ (論理 / 物理): 512 バイト / 512 バイト I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト ディスクラベルのタイプ: gpt ディスク識別子: 7D95D507-93A3-456D-A74E-BBCD8D52C389 デバイス 開始位置 終了位置 セクタ サイズ タイプ /dev/nvme0n1p1 2048 1050623 1048576 512M EFI システム /dev/nvme0n1p2 1050624 1953523711 1952473088 931G Linux ファイルシステム ディスク /dev/nvme1n1: 465.76 GiB, 500107862016 バイト, 976773168 セクタ ディスク型式: Samsung SSD 970 EVO Plus 500GB 単位: セクタ (1 * 512 = 512 バイト) セクタサイズ (論理 / 物理): 512 バイト / 512 バイト I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト ディスクラベルのタイプ: gpt ディスク識別子: 50FD9E2A-9AA9-43C1-B300-9EBBF3DD3DCB デバイス 開始位置 終了位置 セクタ サイズ タイプ /dev/nvme1n1p1 2048 1050623 1048576 512M EFI システム /dev/nvme1n1p2 1050624 976773119 975722496 465.3G Linux ファイルシステム ディスク /dev/sda: 3.64 TiB, 4000787030016 バイト, 7814037168 セクタ ディスク型式: HGST HDN726040AL 単位: セクタ (1 * 512 = 512 バイト) セクタサイズ (論理 / 物理): 512 バイト / 4096 バイト I/O サイズ (最小 / 推奨): 4096 バイト / 4096 バイト ディスクラベルのタイプ: gpt ディスク識別子: D54536BE-5324-4B85-B55B-5032488218D8 デバイス 開始位置 終了位置 セクタ サイズ タイプ /dev/sda1 2048 7814035455 7814033408 3.6T Linux ファイルシステム ディスク /dev/mapper/main-root: 465.26 GiB, 499566772224 バイト, 975716352 セクタ 単位: セクタ (1 * 512 = 512 バイト) セクタサイズ (論理 / 物理): 512 バイト / 512 バイト I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト ディスク /dev/mapper/root: 465.24 GiB, 499549995008 バイト, 975683584 セクタ 単位: セクタ (1 * 512 = 512 バイト) セクタサイズ (論理 / 物理): 512 バイト / 512 バイト I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト
LVMの現状確認
# pvdisplay --- Physical volume --- PV Name /dev/nvme1n1p2 VG Name main PV Size 465.26 GiB / not usable 3.00 MiB Allocatable yes (but full) PE Size 4.00 MiB Total PE 119106 Free PE 0 Allocated PE 119106 PV UUID kpbGuE-DlFM-rNr0-FVdr-pa2m-9MZb-XH1inp
設定していく
# dd if=/dev/nvme1n1p1 of=/dev/nvme0n1p1 1048576+0 レコード入力 1048576+0 レコード出力 536870912 bytes (537 MB, 512 MiB) copied, 3.13035 s, 172 MB/s # pvcreate /dev/nvme0n1p2 Physical volume "/dev/nvme0n1p2" successfully created. # pvdisplay --- Physical volume --- PV Name /dev/nvme1n1p2 VG Name main PV Size 465.26 GiB / not usable 3.00 MiB Allocatable yes (but full) PE Size 4.00 MiB Total PE 119106 Free PE 0 Allocated PE 119106 PV UUID kpbGuE-DlFM-rNr0-FVdr-pa2m-9MZb-XH1inp "/dev/nvme0n1p2" is a new physical volume of "931.01 GiB" --- NEW Physical volume --- PV Name /dev/nvme0n1p2 VG Name PV Size 931.01 GiB Allocatable NO PE Size 0 Total PE 0 Free PE 0 Allocated PE 0 PV UUID Ww6x8C-b02G-X3IC-m2nK-L1Xl-CMfw-zFresp # vgextend main /dev/nvme0n1p2 Volume group "main" successfully extended # pvdisplay --- Physical volume --- PV Name /dev/nvme1n1p2 VG Name main PV Size 465.26 GiB / not usable 3.00 MiB Allocatable yes (but full) PE Size 4.00 MiB Total PE 119106 Free PE 0 Allocated PE 119106 PV UUID kpbGuE-DlFM-rNr0-FVdr-pa2m-9MZb-XH1inp --- Physical volume --- PV Name /dev/nvme0n1p2 VG Name main PV Size 931.01 GiB / not usable 4.00 MiB Allocatable yes PE Size 4.00 MiB Total PE 238338 Free PE 238338 Allocated PE 0 PV UUID Ww6x8C-b02G-X3IC-m2nK-L1Xl-CMfw-zFresp # umount /dev/mapper/root # pvmove /dev/nvme1n1p2 /dev/nvme0n1p2 /dev/nvme1n1p2: Moved: 0.02% /dev/nvme1n1p2: Moved: 3.55% /dev/nvme1n1p2: Moved: 7.12% /dev/nvme1n1p2: Moved: 10.63% /dev/nvme1n1p2: Moved: 14.10% /dev/nvme1n1p2: Moved: 17.67% /dev/nvme1n1p2: Moved: 21.18% /dev/nvme1n1p2: Moved: 24.77% /dev/nvme1n1p2: Moved: 28.25% /dev/nvme1n1p2: Moved: 31.75% /dev/nvme1n1p2: Moved: 35.28% /dev/nvme1n1p2: Moved: 38.74% /dev/nvme1n1p2: Moved: 42.13% /dev/nvme1n1p2: Moved: 45.63% /dev/nvme1n1p2: Moved: 49.05% /dev/nvme1n1p2: Moved: 52.52% /dev/nvme1n1p2: Moved: 55.96% /dev/nvme1n1p2: Moved: 59.43% /dev/nvme1n1p2: Moved: 62.86% /dev/nvme1n1p2: Moved: 66.40% /dev/nvme1n1p2: Moved: 69.79% /dev/nvme1n1p2: Moved: 73.30% /dev/nvme1n1p2: Moved: 76.85% /dev/nvme1n1p2: Moved: 80.40% /dev/nvme1n1p2: Moved: 83.95% /dev/nvme1n1p2: Moved: 87.47% /dev/nvme1n1p2: Moved: 90.97% /dev/nvme1n1p2: Moved: 94.51% /dev/nvme1n1p2: Moved: 98.00% /dev/nvme1n1p2: Moved: 100.00% # vgreduce main /dev/nvme1n1p2 Removed "/dev/nvme1n1p2" from volume group "main" # pvremove /dev/nvme1n1p2 Labels on physical volume "/dev/nvme1n1p2" successfully wiped.
/etc/mtools.conf
に追記 drive d: file="/dev/nvme0n1p1"
、ddでコピーしたからUUIDが同じなので変えちゃお
# mlabel -n d: # blkid /dev/nvme0n1p1: UUID="6841-5E97" BLOCK_SIZE="512" TYPE="vfat" PARTLABEL="ESP" PARTUUID="b19242f2-fafb-4dce-b877-85042fa0e87f" /dev/nvme0n1p2: UUID="Ww6x8C-b02G-X3IC-m2nK-L1Xl-CMfw-zFresp" TYPE="LVM2_member" PARTLABEL="primary" PARTUUID="fc41c1d6-195b-46ce-9f34-be7abf88aebb" /dev/nvme1n1p1: UUID="7CFC-551D" BLOCK_SIZE="512" TYPE="vfat" PARTLABEL="ESP" PARTUUID="d59d9d4e-1e55-489e-a2fd-6085f50be9f1" /dev/sda1: LABEL="gems" UUID="2ffd4056-740f-4ab8-b023-ffb307404729" BLOCK_SIZE="4096" TYPE="ext4" PARTLABEL="gem-codesearch" PARTUUID="13b0bbe5-ddd2-48e6-91dd-d8398183a498" /dev/mapper/main-root: UUID="4ff47066-190e-4d5b-855e-fc2e49c47ce4" TYPE="crypto_LUKS" /dev/mapper/root: LABEL="root" UUID="862e79ed-d5ed-4c86-89c5-ce33fe179abb" UUID_SUB="bb58edd3-0473-4a0a-939a-d0de3c5555ef" BLOCK_SIZE="4096" TYPE="btrfs" /dev/loop0p1: BLOCK_SIZE="2048" UUID="2020-09-01-17-37-13-00" LABEL="ARCH_202009" TYPE="iso9660" PTUUID="2fbbe9fe" PTTYPE="dos" PARTUUID="2fbbe9fe-01" /dev/loop0p2: SEC_TYPE="msdos" LABEL_FATBOOT="ARCHISO_EFI" LABEL="ARCHISO_EFI" UUID="72F4-9D10" BLOCK_SIZE="512" TYPE="vfat" PARTUUID="2fbbe9fe-02" /dev/sdb1: BLOCK_SIZE="2048" UUID="2020-09-01-17-37-13-00" LABEL="ARCH_202009" TYPE="iso9660" PTUUID="2fbbe9fe" PTTYPE="dos" PARTUUID="2fbbe9fe-01" /dev/sdb2: SEC_TYPE="msdos" LABEL_FATBOOT="ARCHISO_EFI" LABEL="ARCHISO_EFI" UUID="72F4-9D10" BLOCK_SIZE="512" TYPE="vfat" PARTUUID="2fbbe9fe-02" /dev/nvme1n1p2: PARTLABEL="primary" PARTUUID="69ba5c80-b0d3-43ba-b679-c8fee2e3ccea"
fstab書き換え
/etc/fstab # Static information about the filesystems. # See fstab(5) for details. # <file system> <dir> <type> <options> <dump> <pass> # /dev/mapper/root LABEL=root UUID=862e79ed-d5ed-4c86-89c5-ce33fe179abb / btrfs rw,relatime,ssd,space_cache,subvolid=5,subvol=/ 0 0 # /dev/nvme0n1p1 # UUID=7CFC-551D /boot vfat rw,relatime,fmask=0022,dmask=0022,codepage=437,iocharset=iso8859-1,shortname=mixed,utf8,errors=remount-ro 0 2 UUID=6841-5E97 /boot vfat rw,relatime,fmask=0022,dmask=0022,codepage=437,iocharset=iso8859-1,shortname=mixed,utf8,errors=remount-ro 0 2 # /dev/sda1 UUID=2ffd4056-740f-4ab8-b023-ffb307404729 /mnt/gems ext4 defaults 0 2
LVのリサイズ、アンマウントしないとできない、どうしよ...homeだけluksにしとけばよかった
wikiみて手順確認
Extending the logical volume For the next step, the final allocation of the new diskspace, the logical volume to be extended has to be unmounted. It can be performed for the cryptdevice root partition, but in this case the procedure has to be performed from an Arch Install ISO. In this example, it is assumed that the logical volume for /home (lv-name homevol) is going to be expanded with the fresh disk space: # umount /home # fsck /dev/mapper/home # cryptsetup luksClose /dev/mapper/home # lvextend -l +100%FREE MyStorage/homevol Now the logical volume is extended and the LUKS container comes next: # cryptsetup open /dev/MyStorage/homevol home # umount /home # as a safety, in case it was automatically remounted # cryptsetup --verbose resize home Finally, the filesystem itself is resized: # e2fsck -f /dev/mapper/home # resize2fs /dev/mapper/home Done! If it went to plan, /home can be remounted and now includes the span to the new disk: # mount /dev/mapper/home /home Note that the cryptsetup resize action does not affect encryption keys, and these have not changed.
Archのイメージ落としてきてUSBに入れて再起動しこのへんやって無事大きくなった
2020-09-25
Hacktoberfest登録した
hacktoberfest.digitalocean.com
健康を診断したら4cm伸びてた 見えなかったスーパーの什器の上が見えるようになったのは勘違いではなく本当に伸びていた可能性がある それにしても4cmが信じられなくもう1度測りたい
なんで伸びたんだろう? 普通に成人後も伸びるっぽいのでそれだと思うんだけど
ケチって買った970 EVO Plusの500GBが埋まってきたので1TBのM.2買ってきて挿した btrfs on luks on lvmなんだけど1.5TBとして使うか、そのまま同じ構成のlvm作ってrsyncでコピーしてしまうか悩む rsyncしよかな
銀行の住所変更を済ませた あんまり使ってない口座が2つあるのでそれも変えなきゃなあ
スマホが割れたので新しい端末を申し込んだ U12+なんだけどそろそろ買い替えたい
2020-09-24
個人サイトの進捗は、ない
/etc/pacman.conf
を編集
[multilib] Include = /etc/pacman.d/mirrorlist
でもいれる容量なさそう、断念。まずストレージ買わねば。
% btrfs filesystem usage / WARNING: cannot read detailed chunk info, per-device usage will not be shown, run as root Overall: Device size: 465.24GiB Device allocated: 465.24GiB Device unallocated: 1.00MiB Device missing: 465.24GiB Used: 455.56GiB Free (estimated): 1.86GiB (min: 1.86GiB) Data ratio: 1.00 Metadata ratio: 1.00 Global reserve: 512.00MiB (used: 0.00B) Multiple profiles: no Data,single: Size:427.01GiB, Used:425.14GiB (99.56%) Metadata,single: Size:38.23GiB, Used:30.41GiB (79.55%) System,single: Size:4.00MiB, Used:80.00KiB (1.95%)
株式口座の住所変更や勤務先の変更等の手続きを行った
銀行口座、ゆうちょ銀行は窓口に行く必要があるようなので行かねば...
JP BANKカードもゆうちょと一緒っぽいので窓口でやる
JP BANKカードの勤め先だけ変更しておいた
健康診断の申込みをした。明日受ける。超偉い。
ルンバe5を注文した。レンタルしてからならi7選んだかもしれないけど沖縄は対象外でつらい。
2020-09-23 個人サイトへの機運はあるがまずOSS
自分で壊して自分で直す...💪
doctreeのmasterブランチが壊れてないかどうか、diffが出てないかどうかを確認出来るようにしておいた
REST, RESTful, ROA, Railsの設計について一筆する、がその前に個人サイト...と思ってr7kamuraさんの個人サイトのGemfile読んでいた
hibanaなるほど
今朝異常に早く目が冷めたので星を撮りに行った
— はなちん (@hanachin_) 2020年9月23日
国勢調査にはDevToolsがべんり。UA偽装して済ませた。
4連休でリビングの床面積がルンバブルになっていたのでルンバを検討していた。 レンタルのサービスは沖縄が対象外だった。 もしルンバでうまく行かなかったとき10万円+失うと痛いので半額ぐらいのe5を買うことにする。
会社の人にキッズラインの紹介クーポン貰ってキッズライン登録した
保育園の見学日程がきまりハッピー
無限に予約ができない健康診断の予約を済ませた
雇入れ時の健康診断、コロナの影響で真の締切伸びているけど落ち着いてるうちに済ませるにこしたことはない
ゆうちょからのLINE Payへのチャージができなくなってしまった
普段遣いのお金口座からすぐ落とされてほしいのでデビットカードぐらしにしようか悩む
2020-09-19
博物館の年間パスポートを買った。スーパーに買い物にいくよりも博物館に行くほうがソーシャルディスタンスがとりやすい。人が少ないのもあるけど通路が広いので。
とりあえず箱に詰めていく方針(今床に散らばっててみないものは中身が見えない箱に詰めちゃっても見ないのは変わらないので床が片付いていたほうがよい)
ガス料金の支払いをしたが完全に忘れるので早めにクレカ払いの申込みをする
LINE Payにゆうちょから入金できなくてつらい
改めて何が好きかを考えると
など
- 全てデータ
- 全て自由
- 全てオブジェクト
- 全てリソース
そういうところに惹かれるものがあるんだなあ
連休はチーム開発系の本を読む + RESTおさらいが出来ればいいなあ しかしそれよりも家の片付けの優先度が高いので読めないかもしれない
RailsDMの発表と同じだと思うんだけどこのツイートに連なるツイートを見て
Railsのアイデアの根幹は「RESTfulなルーティングを基本として、URI中のリソースとRDBMSにおけるテーブルが1:1であるという仮定を置くと、ActiveRecordパターン、Callback、ValidationによってControllerのコードがModelのCRUD操作を中心に整理できる」ことだというのを説明するブログをいつか書きたい
— (やさいち|yasaichi) (@_yasaichi) 2018年7月20日
こっちのスレッドで出てくるリソースじゃなくてHTTPで呼べるentity的な話題をみると、そういう引力が働きやすいよね。と思っちゃう。
Haven't used Rails in what seems like a decade. What do people think of Rails' Resource routing? hot takes welcome.
— yosh (@yoshuawuyts) 2020年9月18日
たぶん整理して書く
ruby-jpのSlackの #okinawarb で排他的な人が多いみたいな話が話題になっていたけどたぶんこういうのが多いかもしれないなあ
数年この地で暮らしたり、よその地に数年行ったりしたくらいで『俺が沖縄を変える!』って言ってくる人なんなの。そういうこと言うから『腐れナイチャー』とか『シマナイチャー』とか言われるの。自分が外の世界で通用しなかったからって、あんたの夢や自尊心のために島国のコミュニティ破壊すんのやめ
— ダイモンのあっちゃん (@daimonatz) 2019年12月21日
自分も上であげたように好みが激しいのでうっかり踏み荒らすことあるので自省という感じの日々を送りつつ、ちゃんと発表して布教している人は偉いのでなんか書こうみたいな気持ち(小並感)、具体的な目標ではないのでたぶん実現はしない