simple-web-system technology

Webに関する技術をシンプルに扱うブログ

LinuxでCLIで起動したい時(GUI環境ぶっ壊した時とか)

起動時のパラメータにsystemd.unit=multi-user.target埋め込めばcilで起動するらしい 理由はよくわかんない

Linuxでインストール用USBメモリとかを高速で初期化するメモ

以下のコマンドでさくっといけた sudo dd if=/dev/zero of=/dev/sda bs=1K count=1 他にも色々方法はあると思うけど、楽だった

Qfinder ProをArch Linuxにインストールする方法 防備録

公式サイトからUbuntu版をダウンロード www.qnap.com debtapを使ってダウンロードしたファイルをインストール zenn.dev PATHには追加されてないけど、以下のパスに実行ファイルがあるのでTerminalから実行 /usr/bin/QNAP/QfinderPro/QfinderPro.sh 色々ウィ…

Ruby on RailsでLSPで補完する話を調べた

ruby on railsのlspに関して調べてた。 VSCode vscodeでやる場合は、extenstionはshopifyのrubyとsteepを入れる。 marketplace.visualstudio.com marketplace.visualstudio.com rbsのsyntax highlightingも入れた方が良さそうだけど、どれも微妙。 Gemfile l…

lightdmでarandrとautorandrを使って自動でディスプレイ設定する

lightdm + i3wmとかだとディスプレイの設定や永続化が面倒なのでまとめた。 まず、以下のコマンドでディスプレイ位置を設定する。 # arandrでディスプレイ位置をGUIで設定する arandr # 適当な名前で現在のディスプレイ設定を保存する(これはモバイルディス…

tmuxを複数の環境で使う時、zshやfishのPATHが違う時にサクッとなんとかする

MacとLinuxの両方でfishを使う時とかによくあるが、macがbrewディレクトリ以下でlinuxは/usr/local/bin以下にあるみたいなことがある。 tmuxのdefault-shellを設定すればいいのだが、tmux.conf内で$(which fish)みたいなことができない。 ただ、そういう場合…

Linuxのi3wmでデフォルトのアプリケーションをGUIで設定する

以下のURLにあるようにmime関連の設定をしなければいけない。 wiki.archlinux.jp gnome等では設定画面から簡単に設定できるが、i3wmといった設定画面が付属しないWindow Managerでは、独立して開発されているGUIで使いやすいメジャーなmime設定ツールがない…

gitで最近使ったbranchにswitchする

gitで最近使ったブランチに移動したい時がある。 git switch -だと1個前のブランチに戻れるが、2,3個前に移動したブランチに移動するのは面倒 # ブランチの最新のコミット日時で降順ソート。"commitdate"で昇順、 "-commitdate"で降順 git branch --sort=-co…

ArchLinuxでpacmanを使った際に、/var/cache/pacman/pkgがおかしいと出たときの対処法

ArchLinuxでパッケージをアップデートする時、/var/cache/pacman/pkg ~~~~Y/nみたいに聞かれることがある。 ここでYを選んでも何も解決しない。 以下のコマンドで解決する。 sudo pacman -S archlinux-keyring 自分用のメモ

chezmoiがデプロイ先のファイルの削除までさくっと見てくれない

設定ファイル書けば、削除までしてくれるんだけど、それは面倒くさい。 とりあえずなんかあればdiffコマンドでディレクトリごと比較して削除で今は足りてる diff -rq ~/.config/nvim ~/.local/share/chezmoi/dot_config/nvim

NEC aterm WX11000T12で必ず2.4GHzで接続するための設定

前提 現在ブリッジモードで使っているので、それ以外はわからない。 結論 バンドステアリングのせいで、2.4GHz用の接続先が出ない。 バンドステアリングをなんとかして無効化すると、 WIFIでaterm-****-2pみたいな接続先が増えるので、そこに接続する。 バン…

Linuxでfirefoxの起動が遅いのを解消する(gnome以外で)

結論 gnome以外でfirefoxやnautilus起動時に、xdg-desktop-portalがxdg-desktop-portal-gnomeと通信しようとしてタイムアウトまで待っている。 gnome以外では以下の設定のどれかを行うと、xdg-desktop-portalがxdg-desktop-portal-gtkと通信して素早く起動す…

flutter integration testで画面遷移を簡単にする方法

結論 contextを取得して、そこからrouterを呼び出して遷移 以下はサンプルコード(go_routerを使ってます) https://github.com/subaru-shoji/poc_flutter_e2e_routing 経緯 flutterのintegration testですが、そもそも情報が少ないので、画面遷移となるとボ…

flutterのcustom_lintを書くときの参考リンク集

今zennで少しだけ上がってるflutterのcustom lintについて。 自分もrelative importを"/"で開始するみたいなcustom lintを作った時に、公式で書き方について全然書いてなかったりして苦戦したけど、以下のリンクを参考に実装するとなんとかなった。 根性で書…

macでskhd入れたらうまくいかなくて挫折したけど、同じことはkarabinerで出来たから、そっちでやったら幸せになった

macに頑張ってskhd入れたけど、なんか急に動かなくなった よく考えたらkarabinerもう使ってるから、そっちに寄せれば良かったわってことで寄せた 前もskhdがうまく行かなくなったことがあって挫折したから、これからもこれでいいや karabinerのcomplex modif…

neovimでluaを書いてる時に値を表示する方法

nvim-notifyを使っていると、vim.printで値を表示できる。 しかも、リストとかディクショナリもそのまま表示できる。 nvim-notifyのtelescope extensionを有効にしてると、nvim-notifyで表示した履歴を取得できるので、そこからログのコピーとかもできる。 …

neovim-treesitterインストール時にTSUpdateでmore表示を自動で進める方法

結論 tmuxを使う neovim-treesitterをlazy.nvim等でインストールする際に、TSUpdateも同時に実行するのが一般的かと思われます。 このとき、インストール対象を絞っていない場合、表示が長くなっていくとmoreというようにpagerが表示されて、enterキーやjキ…

reactのstorybookでcomponentに複雑なobjectを渡す必要がある時に楽する方法

例えばこんなinterfaceのデータがある interface Data { property1: string property2: string // ... // 連番で続く // ... property30: string // また別の型とか nest: NestedData; } この内、上から10個だけ欲しいが、全てのプロパティが必要なわけでは…

debtapを使ってArch LinuxでdebianパッケージをインストールしてArch Linuxを最強にする

Arch LinuxはArchの公式リポジトリに加えて、AURまであるのでほとんどの場合ツールのインストールに困りません。 さらにUbuntu等でよく使われるSnapをインストールすると、たいていのGUIアプリもインストールできます。(snapだと日本語入力できないとかあり…

Xephyrを使ってChromebookでもi3 wmを使う

実用性は微妙だけどやってみたらできたので Xephyrとは xserverをネストして起動できるもの window managerのテストとかで使われるらしい ゼファーって読むらしい? 手順 まずxephyrをインストールする sudo apt install xserver-xephyr 次に.xinitrcで環境…

TmuxをVSCodeのTerminalでデフォルトで起動するようにする

TmuxをVSCodeのTerminalでデフォルトで起動するようにする ctrl-p でコマンドパレットを出して、Terminal: Select Default Profile を選択する シェルを選べるのでtmuxを選択 ネットの記事だとterminal.integrated.shell.osxとかで設定する例がよく出てくる…

Flutter(Dart)はprivateを使うと、使わなくなった時にわかる

普段Flutterを書く場合、Widgetのインスタンス変数は、初期化の記述が楽なのでpublicで宣言することが多いと思います。 そのノリで関数とかもpublicに書いてしまうことも多いと思います。 ただ、待ってください。privateにできるものはちゃんとprivateにしま…

gnu sed と bsd sedの違いに苦しむ未来の私へ

大人しくgnu sedをmacに入れるのです 同じsedという名前で使う場合は、置換では置換用の対応、追記には追記用に対応とやることがめっちゃ多いのです。 諦めてさっさとgnu sedをインストールするのです。 もう2回くらいこんなことやってるから、3回目はさす…

nvidiaのグラボ付きノートパソコンにUbuntuをインストールしてnvidiaのドライバーを動かした忘備録

とりあえずgnomeを使う。事故りづらい。 公式ドライバとprime-selectを使う 最初はprime-select intelを使う。prime-select nvidiaを最初から使うと大体事故る。 prime-select nvidiaを使う前にxserverなしで起動できるようにしておく。事故ってからだと遅い…

ArchLinuxでトラックパッドのタップ操作を無効にした

タッチ操作ではなくタップ操作の話 タッチ -> 押し込む タップ -> 触れる カーソルが良く分からないタイミングで急に移動したりしていたけど、うっかりトラックパッドに触れてタップしていたせいだった 修正方法 以下のURLを参考に、xwindowの設定でOption "…

ChromebookのTerminalでwl-copyが動かない

aptからインストールすると古いみたいなので、nixからインストールするといい nix-env -i wl-clipboard nixのインストール方法は以下を参照 https://zenn.dev/suba/articles/7234dd57ec1d29bce18b aptだけだとパッケージが少ないので、nixも入れておくといい…

ChromebookのTerminalからAndroidアプリを起動する話

簡単に言えば、chromebookでのadbデバッグを有効にして、adbを使ってアプリを起動する 1. adbデバッグを有効化する デフォルトだと有効化されていないので以下のURLを参考に有効化する。 また、一度有効化したあとに、無効化すると、Powerwash(PC初期化)が…

VSCodeでbreakpointの全有効化・解除

ある特定の画面まで進めてからbreakpointを有効化したい、みたいな時によく使う デバッガから 右の3つのアイコンのうち、真ん中のアイコンをクリックで全有効化・解除ができる ただし、右の3つのアイコンのうち、左のアイコンをクリックすると、全てのbrea…

VSCodeの選択の便利機能紹介

公式ドキュメントにあるのを紹介するだけですが、意外と知らない方も多いので 選択系に関して紹介します。 なんかいい感じに選択できる方法ないかなと思ったら、ここから公式ページをたどっていただけると幸いです。 注意 筆者はメインがWindows/Linuxのため…

LinuxでCapsLockをCtrlに変更しているのにも関わらず、CapsLockがなぜか有効になったときの直し方

以下のコマンドでなんとかする xdotool key Caps_Lock 結構切実