kotonoha_pcg@気ままに雑記

kotonoha_pcgが気分次第で様々書き置きます.dlang関係他:http://kotonoha-pcg.hatenadiary.com

Seleniumでログインフォームにログインする

そのまんまじゃねーか…

webに公開されているページでも、自前のオレオレログインフォームでも(正しい要素さえ指定してやれば)使える

from selenium import webdriver
from selenium.webdriver.common.by import By
import pickle, os

login_url = 'example.com'
username = 'hogehoge' # ログインユーザ名
password = 'fugafuga' # ログインパスワード
cookies_file = 'yoshinani.pkl' # クッキーを保存するファイル名

driver = webdriver.Chrome()
driver.get(login_url)
driver.set_window_size(600,600)

# クッキーを保存したファイルがなければ、一度アイパスでログインしてクッキーを保存
if(not os.path.exists(cookies_file)):
    # input username
    name_box = driver.find_element(By.NAME, 'user')
    name_box.send_keys(username)

    # input password
    password_box = driver.find_element(By.NAME, 'pass')
    password_box.send_keys(password)

    # クッキーの取得、保存
    cookies = driver.get_cookies()
    print(cookies)
    pickle.dump(cookies, open(cookies_file, 'wb'))
else:
    # クッキーをpickleから読み込んで使う
    cookies = pickle.load(open(cookies_file, 'rb')) # クッキーを読み込む
    driver.get(login_url)
    for c in cookies:
        driver.add_cookie(c)

driver.get(login_url) # クッキー設定後再度アクセス
driver.set_window_size(600,600)
driver.save_screenshot('hoge.png')

参考:

qiita.com

2024ねんのヴぃむあーるしぃー

vimrcの設定を晒すのは数年ぶりなので初投稿です(?)

たまーにバックアップだのこのプラグインが~とかで記事にしてましたが、改めてvimrc全文を晒して…という事はやってこなかったと思うので、現時点でのvimrcの中身を晒しものにしとこうかなと。

使ってない設定とか、書いてある場所が違う設定もあるかもしれませんが、どうぞ生煮えの目で見守ってやってください!

" ※他環境でよみこむと終端文字エラーを起こすことがあるので注意
"  e.g. CFLRのvimrcをLRで読み込むなど

set ttimeout
set timeoutlen=300
set ttimeoutlen=10

let mapleader = " "
" set list

" show hlsearch result num
set shortmess-=S

set ruler
set rulerformat=%55(%{strftime('%a\ %b\ %e\ %I:%M\ %p')}\ %5l,%-6(%c%V%)\ %P%)


set number
set relativenumber

"   plugin configuration   "

packadd vim-jetpack
call jetpack#begin()
  Jetpack 'tani/vim-jetpack', {'opt': 1} "bootstrap
  Jetpack 'liuchengxu/vim-which-key'
  Jetpack 'kaz399/spzenhan.vim'
  Jetpack 'lambdalisue/fern.vim'

  Jetpack 'jeetsukumaran/vim-buffergator'
  "Jetpack 'vim-airline/vim-airline'
  Jetpack 'raghur/vim-ghost'
  Jetpack 'vim-scripts/YankRing.vim'

  Jetpack 'itchyny/lightline.vim' 

  Jetpack 'prabirshrestha/vim-lsp'
  Jetpack 'prabirshrestha/asyncomplete.vim'
  Jetpack 'nathanaelkane/vim-indent-guides'
  Jetpack 'altercation/vim-colors-solarized'
  Jetpack 'cocopon/iceberg.vim'
  Jetpack 'gkeep/iceberg-dark'
  Jetpack 'junegunn/fzf.vim'
  Jetpack 'junegunn/fzf', { 'do': {-> fzf#install()} }
  Jetpack 'mechatroner/rainbow_csv'
  Jetpack 'mhinz/vim-startify'
  Jetpack 'roxma/vim-hug-neovim-rpc'
  Jetpack 'roxma/nvim-yarp'
  Jetpack 'liuchengxu/vim-which-key'
  Jetpack 'simeji/winresizer'
  Jetpack 'mattn/vim-maketable'
  Jetpack 'obcat/vim-hitspop'
call jetpack#end()

let s:jetpackfile = expand('<sfile>:p:h') .. '/pack/jetpack/opt/vim-jetpack/plugin/jetpack.vim'
let s:jetpackurl = "https://raw.githubusercontent.com/tani/vim-jetpack/master/plugin/jetpack.vim"
if !filereadable(s:jetpackfile)
  call system(printf('curl -fsSLo %s --create-dirs %s', s:jetpackfile, s:jetpackurl))
endif

for name in jetpack#names()
  if !jetpack#tap(name)
    call jetpack#sync()
    break
  endif
endfor

" vim-whichkey config
" toggle whichkey
nmap <silent> <Leader> :WhichKey '<Space>' <CR>



" vim-hitstop config
let g:hitstop_line = 'winbot'
let g:hitstop_column = 'winright'

highlight link hitstopErrorMsg ErrorMsg



" fzfz / RG use config
nnoremap <silent> <Leader>,p :GFiles<CR>
nnoremap <silent> <Leader>,P :Files<CR>
nnoremap <silent> <Leader>,s :RG<CR>
nnoremap <silent> <Leader>,c :Commits<CR>


" Fern.vim config

nmap <silent><C-e> :Fern ~/ -reveal=% -drawer -toggle -width=30<CR> 
nmap <silent><Leader>e :Fern ~/ -reveal=% -drawer -toggle -width=30<CR> 

"lightline-vim settings
let g:lightline = {
   \ 'colorscheme': 'icebergLight',
   \ }

"   plugin confiuration END   "
"
"   normal vim confiuration END   "

set nocompatible
set cursorline
set cursorcolumn

set incsearch
set ttyfast
set showtabline=2

set encoding=utf-8

" 改行コードの自動判別
set fileformats=unix,dos,mac
" 他環境での改行コード変換
" setl fenc=utf-8
" setl ff=-unix
" setl ff=dos

"file profile config
set nobomb
"swpファイル保存ディレクトリ
set directory=~/vimfiles
"バックアップファイル(redo/undoファイル)保存ディレクトリ
set backupdir=~/vimfiles

set showcmd
"未保存バッファから移動する時に警告を無視する
set hidden

"文字列検索時のハイライト有効化
set hlsearch

"copy, cut, paste config
set clipboard=unnamed,autoselect
"clipboard configuration(neovim)
" set clipboard=unnamedplus

" backspaceキーで削除出来るようにする
set backspace=indent,eol,start

"setting indent
set autoindent
set smartindent
set breakindent

"status line ever indicate
set laststatus=2
set autowrite


set nobackup
set noswapfile
set noundofile

"tab & visual UI settings
set shiftwidth=4
set tabstop=4
set noexpandtab
set title
set background=dark

"terminal color::
set t_Co=256

"color scheme setting::
"colorscheme retrobox
colorscheme retrobox
syntax enable

"use multibyte character setting
set ambiwidth=double


" nnoremap j gj
" nnoremap k gk
" nmap gj j
" nmap gk k

nmap <expr> j v:count ? 'j' : 'gj'
nmap <expr> k v:count ? 'k' : 'gk'


nmap <Esc><Esc> :nohlsearch<CR><Esc>
imap kj <Esc>
set whichwrap=b,s,<,>,[,]


" Buffergator mru list toggle
nmap <silent><Leader><Leader>b :BuffergatorToggle<CR><Esc>
" g:buffergator_split_size = 2
" g:buffergator_suppress_keymaps = 1

" Diff's configuration
nmap <Leader><C-d> :diffthis<CR>
nmap <Leader><C-S-d> :diffoff<CR>

" ime off(spzenhanを使用する場合※プラグインとしてインストール必須?環境変数のパスを通してしまえば良い)
" ※環境によっては動作しない可能性あり(Windows機3機で検証済)

if executable('spzenhan')
    let s:lastimestate = 0
    autocmd InsertLeave * :call system('spzenhan 0')
    autocmd CmdlineLeave * :call system('spzenhan 0')
endif

" cmd-vim tab switch configuration
nmap <C-Tab> :tabnext<CR>
nmap <C-S-Tab> :tabprevious<CR>


nmap <C-j> :bnext<CR>
nmap <C-k> :bprev<CR>
cmap sefm set filetype=markdown
cmap sefp set filetype=php
cmap sefh set filetype=html

"open-browser.vim settings
" let g:netrw_nogx = 1 " disable netrw's gx mapping.
" nmap gx <Plug>(openbrowser-smart-search)
" vmap gx <Plug>(openbrowser-smart-search)

" coc.vim configuration
" set statusline^=%{coc#status()}%{get(b:,'coc_current_function','')}

" GUI font configuration

"default use font/fontwide
" フォントのところは適宜変える形で
set guifont=Juisee_HWNF:h12 guifontwide=Juisee_HWNF:h12


" コマンド一発でGUIの文字のサイズを変更できるようにする VS= 10, VSS= 12, VSSS=14

cmap VS set guifont=Juisee_HWNF:h10 guifontwide=Juisee_HWNF:h10
cmap VSS set guifont=Juisee_HWNF:h12 guifontwide=Juisee_HWNF:h12
cmap VSSS set guifont=Juisee_HWNF:h14 guifontwide=Juisee_HWNF:h14

あいかわらずinit.luaから引き継いでいる点としては、

  • <C-j> / <C-k>でバッファの移動
  • <C-Tab> / <C-S-Tab>でタブの移動
  • Fern.vimの設定
  • diffのバインド
  • フォントのマッピング

あたりで、多くのnvimプラグインvimでもそれっぽい感じで使えるようにするために(互換性のあるプラグイン以外は)最初の2週間ほどはプラグインを探して試してまた探して…という作業に追われることになってしまった。

一方で、フォントはnvimに切り替えてからの1年、HackGenConsoleNF→PlemolJP Console NFJ→Juisee_HWNFと相変わらず等幅フォントを使い続ける点は変わっておらず、やはり3:5版は使いづらいという苦手意識が拭えない。いや常用すれば快適なのかもしれないけど。

プラグイン

パッケージマネージャはlazy.nvim→vim-plug→jetpack.vimへと移行。

vim-plugもjetpackも1ファイルで完結していて特に不満はないのだけど、単にjetpackの方が(若干)読み込みが早いのと、lazyほど豪華なUIは無くても良いかな、と思ったことが大きい。

特にUIがごちゃごちゃしすぎているというのは大きく、しかもこのvimrcでWindows/Linuxどちらも使うので、快適な遅延読み込みのために微調整するのが面倒くさいというのもあるし。

その中でも圧倒的に便利なプラグインをいくつか。

lightline.vim

  • この類のプラグインというとairlineあたりが筆頭候補になるけど、10年前からずっとステータスバーはlightlineで統一。というよりこのプラグインのデフォルト設定に慣れすぎてほかの色(e.g.NORMALモードで赤や橙になるやつとか)が違和感しかなく、疲れるから使ってないという切実な事情もある。

が、一時期カラースキームをIcebergにしていた影響でlightlineもIcebargに統一してあり、かつステータスバーだけはLightテーマで統一。

spzenhan.vim

日本語入力をする上では欠かせない。

一応、linux(かつfcitx5-mozc)で使う場合はfcitx5-remtoeという選択肢があるにせよ、linuxでも大して設定変更をせずに使える点は高く評価したい。

hitstop

最近追加したがかなり使い勝手が良く、検索時にスクショのように右上(設定で変更可能)で何件中の何件目かを確認できるのが良い。

ステータスバーにも同様の表示はあり、環境次第ではこっちのほうが使いやすかったりするが、いかんせん一画面を分割していることの多い人間としてはいちいちウィンドウごとに異なる幅の右下をすぐに凝視するのはつらいという事もありこのプラグインに落ち着いた。

hitstop

vimそのものの機能で便利なもの

text-obejcts

オペレータ、モーションの概念自体は前から知っていたものの、テキストオブジェクトを常用するようになったのは今年に入ってから。特に[``]の内側や段落ごとといった感じで範囲指定を行う機能…と解釈してるが、普通にオペレータ+モーションでやるよりも早い場合がある。

今までは例えば[innner]という囲みがあったら、iに移動して6sでインサートモードに入ってから文字入力をしていたが、これが4文字でも256文字でも毎回数字を打っていた(HHKBとはいえ数字を打ち間違えることはしばしば)。

それに対して、テキストオブジェクトも使えばsiwの3文字タイプするだけで済むし、d,i,wどれをとっても位置を正確に指が覚えているので「8ってuの上だっけ?」と一瞬ためらう必要もなし。

同様にdiwならその範囲内の文字を削除、そもそもiにカーソルを合わせなくても(wで単語の先頭まで移動しなくても)ci[で[]のなかの文字を削除してインサートモードへ移動、というのもできる。めっちゃ便利!

Leader / LocaleLeader

Leaderはみんな大好き任意のコマンド列をたたくときのためのスイッチみたいなやつ。一方で、LocalLeaderは特定のプラグイン内でなど、Leaderとは別のスイッチを使いたいときのやつ。ただしLocal~の方はあんまり使ってないw

例として

nmap <silent><Leader><Leader>b :BuffergatorToggle<CR><Esc>
nmap <silent><Leader>e :Fern ~/ -reveal=% -drawer -toggle -width=30<CR> 

だったら、いちいち:BuffergatorToggleと入力しなくてもスペース×2→bでバッファ一覧が開けるようになるし、いちいち指定の幅でFernを開くためのコマンドを入力しなくても、 eの2タイプですぐ開けるようになる。

カーソル移動

カーソルなんてh/j/k/lで使うやん~という話ではなく、H/M/L/<C-u>/<C-d>はもちろん、(/)/{/}など含めてカーソル移動全般のコマンド。

当然PgUPとかPgDOWNとかも使うが、基本的にホームポジションで操作できるならHHKBのキー配置(をいじくってる身からすると)から下手にほかのキーに指を伸ばしたくないのでこれらのコマンドは快適に編集するうえでは必須。

set hidden

バッファを保存しない状態で移動しようとすると警告が出るのだが、それを無視する。特に原稿執筆を秀丸とかEmEditorとかメモ帳でやらずにvimでやる身としては、無名バッファを何度も行き来することなど日常茶飯事なので、nohiddenにしてあると使いづらくて仕方がない。


vimそのものとは関係ないがあると便利なもの

powertoys

MS謹製の便利ツールセット。環境変数、powertoys run、color picker、FancyZonesなど挙げればキリがなく、しかもそのすべてがコマンドで呼び出し可能という使い勝手の良さ。

keynavish

ポメラの調教()でよく使われているkeynavのwindows移植版。こちらもコマンド操作でマウスカーソルを移動することが出来て、しかも操作体系がvimとも親和性が高いのでスムーズにウィンドウ移動が可能。

例えば、横に4つ開いたウィンドウの左端から右端に移動したいときは<C-;>→l→lですぐ移動できるし、ランチャーとしても代用可能という便利さはそのまま受け継がれている。

しかもvimrcのように設定ファイルが存在し、カスタム可能。さらにそれが平文で保存されていてバイナリでもなく、vimでも普通のテキストで読み込める。

Nerd-Font入りのフォント

例:PlemolJP NF版

とにかくファイラを開いたときに見分けがつきやすい。おまけにちょっとした文字(絵文字相当)もnotepad.exeなんかで表示させた時とあまり違和感なく表示できる。


さて、2024年の話を2025年に3日連続でブチ上げるばっどむーぶをやらかしてますが、たぶん正月三日坊主で明日からは来年まで記事を書かないと思うので、今回が永遠の初投稿という事にしてやってくださいw

2026年時点でのvimrcを丸ごと晒し首にするっていう記事も良いな…

去年買った(読んだ)本たち

去年買った(読んだ)本たち

この先はチラ裏になるので先に結論を書いておくと、

天冥、やりたいこと詰め込みすぎだろ!

というのが今年を通しての率直な感想。文庫本とはいえ、全巻揃えると17冊ということは一冊800円計算でも13,000円ほどかかり、シリーズものとしてはなかなかお高い(注:たわしが持ってる中ではミニスカ宇宙海賊のⅠ~Ⅹ、超ミニスカ宇宙海賊Ⅰ~Ⅱの合計と同じくらい)。

その割に読みごたえは抜群で、今年読書していた時間の6割弱は天冥に注ぎ込んでいた記憶がある。2周目読んでいても伏線であったりなんでこのキャラはこういう複雑な感情を…みたいな疑問に対するアンサーが得られたりと面白さが尽きない。

天冥の標(未読)

未読つっても積読本なわけではないれす。今年の5月~7月にかけてⅠ→Ⅷ→Ⅸ→Ⅹ→Ⅳ→Ⅱの順で読んでいき、その後12月に一気にⅢ→Ⅵまで読み切って今現在は再度Ⅰ巻から持ってる順に読み直し中。Ⅴ、Ⅶは年明けたら読んでるかもしれない。

冒頭でも書いた通り、情報量が膨大過ぎて読むたび、読み返すたびに新たな発見がある。 あれは伏線だったのか、とか、Ⅷでイサリがアシュムに驚いている意味とかが(主にⅥを読むと)よく分かる。

多分時系列的にはⅠ→Ⅱなんだろうけど、Ⅱはかなりい過去の話で(Ⅴはまだ現代の話も出てきそう…出てくるよね?)時代感覚がズレすぎててそのままだと読みづらいので、個人的にはⅡ回くらい読み直す必要があるもののⅠ→Ⅷ→Ⅸ→Ⅹ→Ⅱ→Ⅲ→Ⅳ→Ⅴ→Ⅵ→Ⅶとよんできて、最後にもう一度Ⅷ~読み直すほうが理解しやすいのかなと。

意外にも秋葉原の書泉には(ほぼ)毎回行くたびに補充されており、物理的な本を入手したい場合は行くことも。てかⅠだけは書泉で買った(Ⅱ以降はすべてkindle)。

スペースオペラ

デシベル・ジョーンズのスペースオペラ。最初の50ページ程は読みづらくて仕方なく、苦行が延々と続くだけだったような気も…。ここまでで読むのをやめれたらある意味適性が無かったとも言える。

100ページを超える頃にはその独特の語感にやみつきになること間違いなし! たわしはこれでESCにハマりました

ITP3部作

3部作と括ってるものの、プロトコル・オブ・ヒューマニティ(以下PoH)は直接ITPの話ではない。そして一番難解というか、ほとんど恋愛小説みたいな感じにもかかわらず読みづらい。

にもかかわらずPoHが面白いのは、たぶん、現代的な時代背景で突出しているSF要素がなく、とことんまで人とその一部になった機械との葛藤、苦悩、そして親の介護による疲弊を丁寧に描写している部分が大きいと思う。400ページほどあるうちの200ページくらいはずっと介護の話で、自分の持っていた親へのあこがれや尊敬、心から感じていた偉大さがどんどん失われていく過程に確かに存在する人間でなければ感じ得ない感情、怒り、所作…つまり人間性が、恒明の思考に影響を与えていく様子が、変な言い方だけど親しみを覚えて1週間で読み切ってしまった。

先にMy Humanity→あなたのための物語→PoHの順で読んでいたが、物語の濃密さや読んでいて楽しいと思える尺度では及ばないものの、SF要素がほか2作品に比べると控えめなのもあってノンフィクション作品を読んでいるかのような錯覚に陥る。

あなたのための物語は8月頃に文庫本で購入、プロローグで主人公が死ぬことがわかっていて、かつその内容が人の死ぬ様を暴力的に描いているのがポイント高め。

人が死んでしまうときに温かみも何も無い、ただただ苦痛と後悔を感じながら無惨に死んでゆく描写をしてる本は個人的にはたいてい読了率が高いはずなのに、プロローグを読んでそっ閉じをやらかしてからはや3ヶ月。11月に読み出したときには5日で読了してしまうという驚異的な速さで読み終えてしまった…

My Humanityは1月か2月ころに購入、3冊の中では最も早く読んだこともありallo, toi toi以外はあまり刺さらなかった印象。今度読み直してみよう。

アグレッサーズ・戦闘妖精雪風

雪風4部作(暫定)4作目。というものの、これと戦闘妖精・雪風<改>以外を読んでいないというw

出版されてからそろそろ3年くらい経つはずなんですが、5巻目まだですかね?

法治の獣

春暮康一の短編集。同名の単行本を文庫化したもの。

タイトルにもなっている法治の獣が一番おもしろく、特にラストの「人は自分と同じ考えの~」はそれまでを振り返ると心に来るものがあった。

一億年のテレスコープ(未読)

こちらは8月に新刊が出たばかりで購入。冒頭が先行掲載されていたSFマガジンの時点では「オーラリメイカーと同じであんまりおもんなさそう」と思っていたものの、気づいたら一応最後まで読んでしまった。

章構成としては太鼓の昔、現代、未来をお行ったり来たりする構成だが、目次に通し番号が振られている通り過去→現在→未来の順で読んでいったほうがわかりやすい。ページは何度も行き来する羽目になるが。

ただし全編通して構成踏まえて読んでいるわけではなく断片的に読んでいるので、まだ未読扱い積読本ということで。

星系出雲の兵站ー遠征編ーⅡ~Ⅴ

Ⅰのみ昨年末に読み終えており、その後1月~4月に渡って購入。

知能侵触(Ⅰ~Ⅱ)

Ⅲ、Ⅳと出て完結しているが同じ林譲治作品にも関わらずこちらはさあ以後まで読みきれず。というか読めなかった。多分自分には近未来の話が向いてないんだと思う。

話の流れとしては林譲治おなじみ、というよりSF作家おなじみのファーストコンタクトもので、自衛隊・民間企業・防衛省といったいわゆる国防ものから各国軍をも巻き込んだ世界規模でのファーストコンタクトにつながっていく。

正直Ⅰラストの時点であまり面白くなく、惰性でⅡも読んだがグッとくるものがなくて切ってしまった。世界観とか舞台設定が出雲とは180度違うから今考えるとそれはそう、という思いのほうが強い…

それにしても林譲治、作品だスペースが早すぎという感想のほうが強いw

その他(長編・それ以外・雑誌問わず)

  • 司政官(短編集)
  • 消滅の光輪 上・下(長編)
  • 戦士強制志願(長編)
  • アルジャーノンに花束を(長編)(??周目)
  • 宇宙の戦士ー新装版ー(長編)
  • BL特集の号を除くSFマガジン(雑誌)
  • イヴの末裔たちの明日(短編)
  • いつか明ける夜を(短編)
  • ラムディアンズ・キューブ(短編)
  • 未明のシンビオシス(短編)
  • 天駆せよ法勝寺(短編)
  • 日本SFの臨界点 -恋愛編-(短編集)
  • バビロニア・ウェーブ(再読)(長編)
  • 星のダンスを見においで(長編)
  • 仕事ください(短編集)
  • 星の航海者Ⅰ(長編(のはず))
  • 歌う船[完全版](短編集)

その他積本になった者たち

  • 大進化どうぶつデスゲーム

他にもいろいろあったはずなのだが覚えていない…というか覚えてないから積読になったのだが…

初投稿です()

新年なので初投稿です(唐突)

かんとーに出てきてから4年弱経つくせに17本しか書いてないとか、2020年のうちに書いた記事より少ねぇじゃん…というのはさておき、今年こそは1月1日の記事を書かないわけにはいかないよ。マジで。

ということでプレイ時間1,000時間を超えたDyson Sphere Programを年末年始で一気に進めてます。ヒャッハー製品を作る部品を作る部品を作る工場を作る部品を作る工場を…

(中略)

…工場を作る工場を作る工場を作る工場を自動でやってくれるゲームは楽しいなぁ()

いかんせんこのゲーム実績が128個もあるもんでね、あと128個実績があったら非常にキリが良いんですが追加してくれませんかねぇYouthcatさん?

ということで、プレイ時間0:00:00から放置していた実績を埋めにかかってます。うち今のところ達成ができて、そしてしばらく(1,000時間ほど)時間が無く達成する気になれなかった実績のうち、意味が分からなかったものがこちら。

Faster than light解除

ブラックホールに向かって2,000m/sまで加速する 2,000m/sになった瞬間にブラックホールの中心に向かってワープ起動 残り距離が0.3AUくらいになったらワープを終了して中心軸に向かって方向修正

で、取れる。最初wikiの説明見たときは周囲を回りながら加減速を繰り返して…みたいな表記だったのでどうしようかと思ったが、特に心配なく惑星系の遠距離側からこの手順をするだけであっさり取れた(ただしワープ開放まで研究は進める必要あり)

電磁マトリクス実績解除

1時間当たり43,200個を生産すれば良いので、マトリクスラボ(通常)をフルスタック×4基設置すれば余裕で達成可能。というか、1分間当たりの生産量を1100を超えるように組めばどれも達成できるんじゃないだろうか。

他のマトリクス系実績も同様に達成できる。

情報マトリクス:実績解除時1212/m生産 エネルギーマトリクス:720/m前後

構造マトリクスがどのくらい生産量があれば良いのかはもう忘れてしまった…wエネルギーマトリクスだけ極端に少ないのは中間工程をあまり挟まない(e.g.石炭→グラファイトとか、原油→水素+精製油など)からなのか、単に計測方法が間違っているからなのか。

ただ重力マトリクスは要求される中間生産物の生産工程が複雑なのと、マトリクスそのものの生産にもそこそこ時間がかかるので自己進化ラボを使ったほうがもっと早くできるかも


それはそうとして、5年間ずっとやってきた競馬ももうそろ6年目に突入しそうになり、さらに2023年から続いてきた読書は本の置き場がなくなるくらいには買い込んできました。

なので、そのうち去年買った本をまとめてここに上げようかなと思ってます。

macbook10,1(12inch 2017)にbootcamp経由でlinuxをインストールしてみた

bootcamp用にWindows ISOの作成

https://qiita.com/kmatsuura/items/9d098bb20f1c94851a72#1%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E3%83%A1%E3%83%87%E3%82%A3%E3%82%A2usb%E3%82%92%E4%BD%9C%E6%88%90%E3%81%99%E3%82%8B

基本はこのサイトのようにisoを作成する。ただし、macに由来するファームウェアはbootcampアシスタントを使って自力で抽出したほうが良い。 brigaterを使ってもよいが、自分の環境ではうまく動作しなかった…

windows ADKでisoファイルを生成する場合、一番最初にUSBのルートディレクトリ(だったかな?)にtest.batとしてバッチファイルを作成するが、このときcmd.exeで起動する必要あり。 ※terminalやbashで起動してもパスの影響で作業が進まない。2敗。

バッチの中身は以下

    set WINPE_DRIVER_PATH=D:\$WinPEDriver$
    set TARGET_BOOT_WIM=D:\sources\boot.wim
    set TEMP_MOUNT_DIR=C:\Users\public\winpe_temp_mount
    if not exist "%TEMP_MOUNT_DIR%" md "%TEMP_MOUNT_DIR%"
    
    rem apply winpe diver to boot.wim index 1: WinPE
    dism /mount-image /ImageFile:"%TARGET_BOOT_WIM%" /index:1 /mountdir:"%TEMP_MOUNT_DIR%"
    dism /Image:"%TEMP_MOUNT_DIR%" /Add-Driver /Driver:"%WINPE_DRIVER_PATH%" /Recurse -ForceUnsigned
    dism /unmount-image /mountdir:"%TEMP_MOUNT_DIR%" /Commit
    
    rem apply winpe diver to boot.wim index 2: Windows Setup
    dism /mount-image /ImageFile:"%TARGET_BOOT_WIM%" /index:2 /mountdir:"%TEMP_MOUNT_DIR%"
    dism /Image:"%TEMP_MOUNT_DIR%" /Add-Driver /Driver:"%WINPE_DRIVER_PATH%" /Recurse -ForceUnsigned
    dism /unmount-image /mountdir:"%TEMP_MOUNT_DIR%" /Commit
    rd "%TEMP_MOUNT_DIR%"

出来上がったファイルをRufusなどで焼く

bootcamp環境作成後

Archのインストールはこの記事を参照

https://zenn.dev/ytjvdcm/articles/0efb9112468de3#aur-%E3%83%98%E3%83%AB%E3%83%91%E3%83%BC%E3%81%AE%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB

iwctlを使って無線接続する場合はこれを参照。

https://qiita.com/matoruru/items/f75ee1bfa92e6e275097

ただし、macbook10,1では画面解像度がおかしくなる(e.g:下半分の一部4^5行?が見切れる)ため、sshでさ評したほうが早い。少なくともインストール中は。

https://wiki.archlinux.jp/index.php/SSH%E3%81%8B%E3%82%89%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB#.E3.83.AA.E3.83.A2.E3.83.BC.E3.83.88.28.E3.82.BF.E3.83.BC.E3.82.B2.E3.83.83.E3.83.88.29_.E3.83.9E.E3.82.B7.E3.83.B3.E4.B8.8A.E3.81.A7

インストール後にSSH接続したい場合はopensshをpacmanで入れる。

インストール後のサウンドbluetoothが動かない問題は下記を参考にdkmsドライバを入れる。

https://blog.lufia.org/entry/2021/04/05/170000

前回Ubuntuで入れたこともありUbuntu専用かと思っていたが、普通にArchなんかでも使えるらしい。カーネルドライバの系統だから当然と言えば当然かも。


インストール後

よしなに環境設定し、X11を起動・スリープにしてみるが復帰できず。具体的にはS3から復帰後、ログイン画面までは映るが何も入力できず、しばらくするとハングして延々とbrcfm80211のtx/rxエラーかファイルシステムのI/Oエラーが出続けて正常動作しないので、電源ボタン長押し(15秒くらい。長い)で強制終了。

世の中の普通に使えてるってユーザの人、どうやってスリープさせてるんだろうか…