TakesxiSximada

しむどん三度無視

しむどん三度無視

[WIP] AWS SSMパラメーターストアを扱うEmacs Lisp

Tabulated List Modeで表示させる (require 'tabulated-list) (define-derived-mode aws-ssm-parameter-mode tabulated-list-mode "AWS System Manager Parameter Store" "FOO" (setq tabulated-list-format [("Name" 12 t) ("Type" 12 t) ("Value" 12 t) ("Version" 12 t) ("LastModifiedDate" 12 t) ("ARN" 12 t)]) (setq tabulated-list-padding 2) (setq tabulated-list-sort-key '("Name")) (tabulated-list-init-header) (hl-line-mode) (add-hook 'tabulated-list-revert-hook 'foreman nil t)) (with-current-buffer (get-buffer-create "*AWS System Manager Parameter Store*") (aws-ssm-parameter-mode)) (with-current-buffer (get-buffer-create "*AWS System Manager Parameter Store*") (setq tabulated-list-entries '(("arn:aws:ssm:us-east-1:1234567890:parameter/foo" ["foo" "String" "bar" "1" "2021-03-07T18:46:38.588000+09:00" "arn:aws:ssm:us-east-1:1234567890:parameter/foo" ...

しむどん三度無視

WireGuardを使う

インストール https://www.wireguard.com/install/に各環境のインストール手順が記述されている。 macOS brew install wireguard-tools Ubuntu sudo apt install wireguard デモ環境への接続 v ...

しむどん三度無視

RaspberryPIのGPIOピン配置

RaspberryPIを触る機会があったのでGPIOピン配置をメモしておく。 ピン配置 RaspberryPI 2 Model B Pin Name - Name Pin 01 3.3V - 5V 02 03 GPIO2/SDA1 I2C - 5V 04 05 GPIO3/SCL1 I2C - Gnd 06 07 GPIO4/GPCLK0 1 Wire - GPIO14/UART0_TXD 08 09 Gnd - GPIO15/UART0_RXD 10 ...

しむどん三度無視

Emacs28を使っているとforeman-modeがプロセス起動時にエラーする

Emacs28を使っているとforeman-modeがプロセス起動時にエラーすることに気 がついた。とりあえずさっと修正できた。 https://github.com/collective-el/foreman-mode/commit/856293d879f8aec0684f05cad772d9977213bc03 可能であればアップストリームに反 ...

しむどん三度無視

macOSのデスクトップにファイルを表示させない

デスクトップはファイルが溜まってみばえがよくないのでいっそのこと何も表示させずに一時領域として使う。 設定する。 defaults write com.apple.finder CreateDesktop -boolean false Finderを再起動して設定を反映する ...

+++  · 1 min read

しむどん三度無視

macOSのキーチェーンアクセス

(let ((auth-sources '(macos-keychain-internet))) (auth-source-search)) (let ((auth-sources '(macos-keychain-generic))) (auth-source-search :max 1)) ...

しむどん三度無視

VirtualBoxメモ

インストール brew install virtualbox --cask マニュアル マニュアルは梱包されている。 /Applications/VirtualBox.app/Contents/MacOS/UserManual.pdf 仮想ハードドライブ 気になる項目。 ダイナミックサイジング スナップショット パフォーマンス VDI - VirutalBox Dis Image Vir ...

しむどん三度無視

Virtual Private Network

VPN実装 WireGuard https://www.wireguard.com/ 安全 使いやすい シンプル https://symdon.ga/posts/1615012512/ クロスプラットフォーム 以下の環境をサポートしている。 Windows、 macOS BSD iOS Android 利用可能な暗号化プロトコル Noiseプロトコル ...

しむどん三度無視

go-template-modeのインストール

go-templateのためのメジャーモードがないかと探していたらGistに簡易なものがあった。 https://gist.github.com/anonymous/1654113 が最初だが、Forkされたもの https://gist.github.com/grafov/10985431 のほうが状態がよさそうだったの ...

しむどん三度無視

Emacsでコマンドを実行するための関数をカスタマイズした

ansi-termを使ってターミナルエミュレータを起動していたが、引数を直接渡せないなどの細かい挙動が気になりだした。 考えつく限り自分の要求に合うように関数の挙 ...

しむどん三度無視

Hugoのテーマとしてhugo-PaperModを用いていたが、カスタマイズしたい箇所が増えてきた。 本家のリポジトリをフォークして、そこに切り替えてみたがトップ ...

しむどん三度無視

とても孤独感にさいなまれることがある。すごいつらい。 こういうときに支えというものの大切さを感じる。

しむどん三度無視

Emailを送信する

SMTP 予めwhalebrewでMailHogがインストールされているものとする。 https://symdon.ga/posts/1614485711/ MailHogを起動する。 $ mailhog 2021/02/28 04:45:28 Using in-memory storage 2021/02/28 04:45:28 [SMTP] Binding to address: 0.0.0.0:1025 [HTTP] Binding to address: 0.0.0.0:8025 2021/02/28 04:45:28 Serving under http://0.0.0.0:8025/ Creating API v1 with ...

+++  · 2 min read

しむどん三度無視

whalebrewを使う

whalebrewを使うとDockerイメージをネイティブのコマンドのように扱うことができる。 インストール 今回はHomebrewを用いてmacOSにインストール ...

しむどん三度無視

Emacs 28でel-getをrequireしようとするとdefine-obsolete-function-aliasでエラーする

開発版版のEmacs (28.0.50) をソースからビルドして使っている。 el-getをrequireしようとしたところ以下のエラーが発生した。 Debugger entered--Lisp error: (wrong-number-of-arguments (3 . 4) 2) #f(compiled-function (obsolete-name current-name when &optional docstring) "Set OBSOLETE-NAME's function ...

しむどん三度無視

scikit-learnを用いてガウシアンナイーブベイズでアイリスのクラスタリングを行う

import matplotlib.pyplot as plt from sklearn import datasets from sklearn.naive_bayes import GaussianNB データをロード iris = datasets.load_iris() 萼のデータでプロット X = iris.data[:, :2] plt.figure(2, figsize=(8, 6)) plt.scatter(X[:, 0], X[:, 1], c=iris.target, cmap=plt.cm.Set2) plt.show() 学習 model = GaussianNB() model.fit(iris.data, iris.target) テストデータ test_data = np.array([ [5.1, 3.5, 1.4, 0.2], [1, 4, 2, 0.2], [6.7,3.0,5.2,2.3], ]) 分類 test_result = model.predict(test_data) プロッ ...

しむどん三度無視

change-case.elのversion 9を公開した

change-case.elのversion 9を公開した。これは以前から作成していたもので、 パスカルケースやキャメルケース、スネークケースといった記法を相互に変 ...

しむどん三度無視

Pythonで書いたシンプルなAWS Lambda FunctionをTerraformでデプロイする

Pythonで書いたシンプルなスクリプトをTerraformを用いてAWS Lambdaにデプ ロイする方法を示す。 Terraformの設定 AWS Lambdaで用いるP ...

しむどん三度無視

org-modenのアウトラインを一括で開閉する

org-modeでアウトラインを開閉を行うには以下のコマンドを用いる。 動作 コマンド名 開く outline-show-all 閉じる outline-hide-other どんなショートカットにバインドされているかは環境によって異なる ...

しむどん三度無視

オブジェクトストレージ

サービス S3 - Amazon Simple Storage Service GCS - Google Cloud Storage オブジェクトの命名ガイドライン Unicode文字で任意に設定できる UTF-8 エンコード時の長さが 1~1,024 バイト 改行やラインフィード文 ...

しむどん三度無視

Dockerを見ているるとGNU Hurdのように見える時がある。 他もそうだがGNUのプロジェクトから学べるところは多いと思う。 GNU Guileは今や誰が使っているの ...

しむどん三度無視

process-environmentの復元

Emacsを使って複数のprojectで開発しているとprocess-environmentを頻繁に 書きかえる必要が出てくる。projectの切り替えはproj ...

+++  · 1 min read

しむどん三度無視

Google Cloud Storageのオブジェクトの命名ガイドライン

Unicode文字で任意に設定できる UTF-8 エンコード時の長さが 1~1,024 バイト 改行やラインフィード文字を含めることはできない 先頭を .well-known/acme-challenge/ にすることはできない 「.」や ...

しむどん三度無視

macOSにditaaをインストールする

ditaaはアスキーアートで描かれた図をビットマップに変換するツール。 Javaで実装されていて、Clojureで書き直す計画があるよう。 https://github.com/stathissideris/ditaa brew install ditaa インストールでき ...

+++  · 1 min read

しむどん三度無視

本質という意味がなんとなくわかってきた。 本質というのはある範囲で変わらないことだ。 このある範囲というのは文脈によって変化する。 世の中にある多くの本質はある観測範 ...

しむどん三度無視

Editorモードで作成するファイルをファイルスタイルとディレクトリスタイルの両方に対応した

動機 Emacsのカスタマイズをした。Blogを書くときは自作のEditorモードを用いて いる。これは書いた内容を特定のディレクトリに配置してGitに登録するツー ...

しむどん三度無視

SMTPでメールを送信する

Python PythonにはSMTP用のライブラリが標準で用意されている。 #! /usr/bin/env python import smtplib server = smtplib.SMTP(host="localhost", port=1025) server.set_debuglevel(1) server.sendmail("[email protected]", ["[email protected]"], "OK") server.quit() ...

しむどん三度無視

Homebrewでインストールしたソフトウェアをbrew bundleでバンドルする

https://github.com/Homebrew/homebrew-bundleというツールがあるのでそれを使ってBrewfileを作成する。 brew bundle を実行す ...

しむどん三度無視

www.symdon.gaを廃止する。 統合した後のファイルの配置を考える リポジトリを統合する ファイルの配置を整理する リポジトリを削除する リモートリポジトリを削除 ...

しむどん三度無視

コミットログを消さずにGitのリポジトリを統合する

https://github.com/TakesxiSximada/.org-capture というリポジトリを統合する場合 git remote add cap https://github.com/TakesxiSximada/.org-capture git subtree add --prefix=capture cap master –prefix で指定した場所にディレクトリが作成され、その下にファイルが作成される。 https://qiita.com/TakesxiSximada/private/a592b892de88452e59d0 を転載 ...

+++  · 1 min read

しむどん三度無視

ClubhouseというSNSが話題になっているようだが、全く新しさを感じない。 音声チャットもDiscordで全く事足りる。聞き専とか普通にあるし。 招待制に関し ...

しむどん三度無視

iOSシミュレーター

起動 open -a "Simulator" 操作 $ xcrun simctl サブコマンド Subcommands: create Create a new device. clone Clone an existing device. upgrade Upgrade a device to a newer runtime. delete Delete spcified devices, unavailable devices, or all devices. pair Create a new watch and phone pair. unpair Unpair a watch and phone pair. pair_activate Set a given pair as active. erase Erase a device's contents and settings. boot Boot a device. shutdown Shutdown a ...

+++  · 1 min read

しむどん三度無視

オンラインIDE

これの使用感を確認しよう。 https://repl.it/ ...

しむどん三度無視

一度に複数のことを考えられない。だから考えることは1つにしないといけない。 1つのことはまだ考えられる。 もし1つのことも考えられなくなったら考えるのをやめようと思 ...

しむどん三度無視

GNU Guileで.envを読み込む

#!/usr/bin/env guile -s !# (use-modules (ice-9 rdelim)) (define (dotenv-apply-from-file filename) (map (lambda (env-val) (apply setenv env-val)) (map (lambda (line) (let ((env-val (string-split line #\=))) `(,(car env-val) ,(car (cdr env-val))))) (call-with-input-file filename (lambda (dotenv-file) (let loop ((ls1 '()) (line (read-line dotenv-file))) (if (eof-object? line) (begin (close-input-port dotenv-file) (reverse ls1)) (loop (cons line ls1) (read-line dotenv-file))))))))) (dotenv-apply-from-file "/ng/symdon/public/.env") ...

しむどん三度無視

現時点で自分自身のベストがなにかを常に考えて、それに対して一生懸命に進むしか無い。 他の人の話とかが耳に入ると自分が全く進めていないのではないかと思えるときもある ...

しむどん三度無視

どんなふうにしたらどんな問題が起きたのかを纏めた資料はほしいな。

しむどん三度無視

オブジェクト指向のテーマで燃えてるのか。というかその議論、ずっと前からされてきたことでは…。 多くのプログラミング言語がマルチパラダイムであることの意味を考えてほ ...

しむどん三度無視

Emacsで使われるbashコマンドを指定する

explicit-shell-file-nameで指定できる。 (custom-set-variables '(explicit-shell-file-name "/usr/local/bin/bash")) ...

しむどん三度無視

Pythonの証明書の更新

macOS上でPythonでSSLを用いたアクセスを行おうとすると以下のようなエラーが出力されることがある。 URLError: <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:581)> これはPythonが管理している証 ...

しむどん三度無視

compile-modeのときに子プロセスに対してmessageを送信できるようにしたい。 compile.el.gzを読む必要がありそう。

しむどん三度無視

Oracle databaseのdocker imageをビルドして検証用の環境が整った。

しむどん三度無視

Oracle DatabaseをDockerで起動する

OracleDatabaseのDocker Imageが欲しくなったのでソースコードを取得してビルドした。 以下はその時の作業ログである。 ソースコードの取得 ソースコ ...

しむどん三度無視

Tabnabbing攻撃

Tabnabbing攻撃はフィッシング詐欺の手口として使われたりする。 aタグのtarget属性に _blank を指定しただけの状態だとこの攻撃を受ける状態になってしまう。 以 ...

しむどん三度無視

poetryをインストールする

poetryはPythonのパッケージの依存関係を管理するためのツール。 https://github.com/python-poetry/poetry 以下はインストールログ。 $ /Applications/Python\ 3.9/Install\ Certificates.command /Applications/Python\ 3.9/Install\ Certificates.command -- pip install --upgrade certifi Collecting certifi Using cached certifi-2020.12.5-py2.py3-none-any.whl (147 kB) Installing collected packages: certifi Successfully installed certifi-2020.12.5 WARNING: You are using pip ...

しむどん三度無視

自分がやるべきことをこなすことで精一杯だ。 そんな状態をもうずっと長いこと続けている。

しむどん三度無視

Pythonのテストの実行方法ってもっと工夫できてもいいと思う。

しむどん三度無視

記事IDの生成

投稿のIDをどのように採番しようかと考えたが結局ただのタイムスタンプで良いという結論に至った。 ファイル名の生成は次の関数で行っている。 (defun symdon-ga-create-new-file-path () (concat (directory-file-name symdon-ga-post-directory) "/" (format "%s.org" (truncate (float-time))))) ファ ...

しむどん三度無視

ポモドーロタイマーの改善を考える

インターバルは25分じゃなくて良い (常に変化する) 25分に収束するようにする もしかしたら25分に固定して習慣づけた方が生産性が高まるかもしれないので数値化して比 ...

しむどん三度無視

commentタグがついているものに関してはnoindexを付けたほうが良さそう。 そうしないと本当にインデックス登録したいコンテンツが登録されているかどうかが search ...