タグ

ブックマーク / tech.guitarrapc.com (11)

  • Ubuntu 22.04 と WSL - tech.guitarrapc.cóm

    Ubuntu 20.04 on WSL は非常に安定しており、また便利で好んで利用しています。 さて、Ubuntu 22.04 がリリースされ、WSL にも来ました。 そこで今回、今の Ubuntu 20.04 on WSL な環境を Ubuntu 22.04 にするにあたり対応したことをメモしておきます。 tl;dr; Ubuntu 22.04 での大きな変更点 Ubuntu 22.04 をWSL2 に構成する Ubuntu 22.04 をWSL1 に構成する (断念) おまけ: WSL2VPN の問題 tl;dr; Ubuntu 22.04 を WSL で動かすなら WSL2 一択になりそう Ubuntu 22.04 on WSL1 は BSoDが頻発し needrestart の制御が効かないためあきらめた WSL2VPN 周りで困るので今後向き合っていくことになりそう

    Ubuntu 22.04 と WSL - tech.guitarrapc.cóm
  • Pulumi を C# で書くときに気を付けていること - tech.guitarrapc.cóm

    Pulumi は複数の言語で書くことができるのですが、そのうちの1つに .NET (C#) もあります。 Languages より https://www.pulumi.com/docs/intro/languages/ 以前 Pulumi を C# で書く時の事始めシリーズを書いていましたが、あれから時間がたって書き方も変わりました。 今回は、実際にどのように書くことで Pulumi で書きやすい、IaC制御しやすいを目指しているのかを言語化します。 tl;dr; コンストラクタで処理を完結させる Output`T型 で将来の値を表現する 非同期メソッドと Output`T Output`T の T を取り出したい リソースインスタンス作成はコンポーネントの責務を徹底する リソース処理の前に値の検証をする コンポーネント外部へのプロパティの公開 定数クラスと分岐で環境差分を表現する 環境

    Pulumi を C# で書くときに気を付けていること - tech.guitarrapc.cóm
  • dotnet format を CI で行って継続的にコードフォーマットしていく - tech.guitarrapc.cóm

    この記事は Qiita C# Advent Calendar 2021 7日目の記事です。 Visual Studio や Rider での コードフォーマットは個人で使うにとても良く、開発上は必須といえます。 しかしチーム開発でコードフォーマットをいい感じに標準化させたい、労力かけずにフォーマット修正をかけたいと思ったときには CLI で実行できてほしいものです。 dotnet には長らく標準的なコードフォーマッタ用のCLI がありませんでしたが、.NET 6 SDK からコードフォーマッタ dotnet format が標準組み込みとなりました。 今回は C#で開発するにあたり、CI でCLIを実行してC# のコードフォーマットを自動修正する方法を紹介します。 普段からやっていると開発上でフォーマッタで困らなくなるので、塵も積もれば的な良さを感じる人がいれば幸いです。 tl;dr; 実

    dotnet format を CI で行って継続的にコードフォーマットしていく - tech.guitarrapc.cóm
  • GitHub Actions の setup-dotnet と ホストランナーの .NET SDK - tech.guitarrapc.cóm

    GitHub Actions で .NET Core ビルドを行いたいときに利用するものといえば、setup-dotnet があります。 github.com 今回は Ubuntu-latest な環境で setup-dotnet がいる場合と、そうでない場合について考えてみます。 tl;dr; GitHub Actions と ホストランナー setup-dotnet setup-dotnet の副作用 まとめ tl;dr; GitHub Actions ホストランナーのデフォルト環境で .NET はビルドでき、最新が1-2週で入ってくるのでOSS はsetup-dotnet なしで十分 プロダクトなど .NET SDK バージョンを厳密に制御する場合は、setup-dotnet を使うとよい setup-dotnet は global.json を読んでくれるので、バージョン固定するな

    GitHub Actions の setup-dotnet と ホストランナーの .NET SDK - tech.guitarrapc.cóm
  • Windows開発環境の構築をChocolateyからscoopに切り替える - tech.guitarrapc.cóm

    この記事は、PowerShell Advent Calendar 2019の一日目です。 qiita.com Windows のパッケージマネージャーの裏はPowerShellが多く使われています。 そんなWindows におけるパッケージマネージャーと言えば、Package Management Chocolatey が有名なのではないでしょうか? 私もChocolatey をパッケージマネージャーに用いて開発環境の構築をしてきましたが、課題が多かったため Scoopに切り替えました。 Chocolatey で何が問題だったのか、なぜscoop を選んだのか、この一年 scoop をどのように環境構築に利用しているのかを紹介したいと思います。 目次 目次 TL;DR Chocolatey の利用 どのように Chocolatey を利用していたのか Chocolatey で困ること Ch

    Windows開発環境の構築をChocolateyからscoopに切り替える - tech.guitarrapc.cóm
  • WSL1 から WSL2 の対応 - tech.guitarrapc.cóm

    WSL1 を長い間使っていましたが、先日 Windows 10 Version2004 がリリースされて WSL2 に切り替えを行いました。 WSL2 いいのですが、WSL1 と同じように、あるいはちょっと欲張ろうと思うと少し困ったのでメモ。 目次 目次 TL;DR WSL1 で何をしていたのか WSL2 で何をするのか WSL2 への対応 Windows システムボリュームの利用が増えた Windows Features が不要に WSL OS Provisioning dockerの入れ直しをやめた systemd/snap Windows パスの分離 まとめ TL;DR Windows 10 May 2020 Updateがリリースされてから2週間使ってますが、もう WSL1 に戻る気はないぐらいには気に入っています。おすすめです。 具体的には、 👍: WSL2 にして apt/p

    WSL1 から WSL2 の対応 - tech.guitarrapc.cóm
  • GitHub Actions ことはじめ - tech.guitarrapc.cóm

    GitHub Actions 以前調べたのですが、いろいろあって個人プロジェクトでサクッとビルドするのみに使っていました。 今回改めて調べを進めたのでメモ。 幾つかのリポジトリを GitHub Actions に移行したけど、記事にしようとまとめてたらやった内容以上に調べることになってめちゃめちゃ時間かかった。 目次 目次 TL;DR トレンド GitHub Actions の基 使用条件 使用制限 料金 ホストランナーの指定 ハードウェアリソース インストールされるツール IP OSの選択 実行権限 ファイルパス 環境変数 シークレット GITHUB_TOKEN コンテキスト Artifact トリガーイベント Cache Actions 通知 YAML Getting started YAMLシンタックス on env jobs.<job_id>.needs jobs.<job_id

    GitHub Actions ことはじめ - tech.guitarrapc.cóm
  • Sharplab のMemoryGraph を使ってメモリの状態を確認する - tech.guitarrapc.cóm

    以前 TryRoslyn と言われてたサービスですが、今は Sharplab という名になっています。 このサービスを使うと、コードがILやネイティブコードにどのようにコンパイルされるか確認したり、実行したりオブジェクトのメモリ状態を確認できます。 例えば次の図は、構造体の文字列がどのようなメモリ状態なのかを示したものです。 Sharplab を使って、コードだけでなくメモリ状態を可視化することで理解を深めるきっかけにできるか見てみましょう。 目次 目次 TL;DR; Sharplabの基 いつ使うのか コードの共有 言語選択 表示の切り替え(Decompile) 言語ごとのデコンパイル結果の比較 Other Run C# のメモリ状態を確認する Boxing を可視化する 構造体における文字列の参照状態を確認する クラスにおける参照状態を確認する TL;DR; Shaplab を使って

    Sharplab のMemoryGraph を使ってメモリの状態を確認する - tech.guitarrapc.cóm
    s_ryuuki
    s_ryuuki 2019/02/16
  • .NET Core App を Docker コンテナとして公開する - tech.guitarrapc.cóm

    C# を使っていて最も困るのがランタイムと感じます。 C#は書きやすい、Visual Studio も使いやすいは良く耳にします。実際享受しやすいメリットだと思いますが、C# を Windows 以外で実行したいはどうでしょうか? 今回はその実行方法についてコンテナを用いるのはどうかと考えたメモです。 ※ モバイルではなく、サーバー/デスクトップにおけるアプリケーションについて考えます。 目次 目次 感じる課題 ランタイムの導入 実行保証 コンテナはどうなのか S3Sync - .NETCore で S3同期するツール Docker hub での公開用リポジトリ .NET Core と .NET4.7 ビルド対応 Docker でのアセンブリビルド Docker コンテナビルド ローカル実行 速度 課題 まとめ 感じる課題 .NET を実行するときにはランタイムが必要です。現在、 Wind

    .NET Core App を Docker コンテナとして公開する - tech.guitarrapc.cóm
  • Visual Studio 2017 で使っている拡張機能 - tech.guitarrapc.cóm

    Visual Studio Code も Visual Studio もExtensions と呼ばれる 拡張機能を使うことで便利な機能を追加できます。 Market Place 便利。 marketplace.visualstudio.com あまりむやみに追加すると動作が重くなるのですが、便利なものを使わない手はないので必要なものを入れています。*1 ここではVisual Studio 2017で私が入れている便利拡張をまとめておきます。 目次 目次 Extensions一覧 それぞれの拡張 Visual Studio IntelliCode - Preview Build Vision Git Diff Margin Open on GitHub SwitchStartupProject for VS 2017 VSColorOutput Custom Document Well O

    Visual Studio 2017 で使っている拡張機能 - tech.guitarrapc.cóm
  • Github for Unity を導入してみる - tech.guitarrapc.cóm

    Unity はいくつかの理由で Github.com を使うのが手間になることがあります。その中で最も障害となりえるのがlarge binary assets、つまり大きなサイズのバイナリファイルの扱いです。 今回は、先日発表された Github for Unity を利用することで、このフローがどう改善するのか見てみましょう。 github.com 目次 目次 なぜ Github.com で Unity を管理するのが手間なのか 大容量に成りうるファイルのバージョン管理には Git LFS を利用する Github for Unity を用いないこれまでの流れ Github for Unity を用いてみる ダウンロード Unity へのパッケージ導入 Github ログイン Github ウィンドウ History タブ Branches タブ Settings タブ Account

    Github for Unity を導入してみる - tech.guitarrapc.cóm
  • 1