Skip to content

Instantly share code, notes, and snippets.

@Densyakun
Last active July 30, 2022 06:33
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save Densyakun/5b2f31f17582c3737e3139d316984d8c to your computer and use it in GitHub Desktop.
Save Densyakun/5b2f31f17582c3737e3139d316984d8c to your computer and use it in GitHub Desktop.

関連するGist

Kozmik IDE のクロスプラットフォーム

  • パッケージ管理システムのコマンドラインツール: APT, (for Windows), Alpine Package Keeper (APK), Homebrew, Yum, emerge, Zypper
  • OS: Debian, Windows, Alpine Linux, macOS, Red Hat, Gentoo, SuSE
    • Debian は Ubuntu, Termux, Chrome OS のため
    • Alpine Linux は iSH のため
    • Red Hat は CentOS, Fedora を含む
  • Instruction set architectures (ISA): x86, x64, armv6, armv7, arm64, ppc64, ppc64le, s390x

Kozmik IDE 用のデータ(ツール)

  • プログラミング言語、ライブラリ、目的に合わせて、ソフトウェアのインストール、ソフトウェア開発を効率化するために、Kozmik IDE で使う JSON ファイル
  • Kozmik IDE が URL からダウンロードしたファイルを URL と一緒にキャッシュとして管理する
  • KFM (kozmik-file-manager-node) を使用してファイルを管理する
    • キャッシュの更新、削除などのKFMの操作に対応したツールを開発
  • Kozmik IDE が自動で判定した、OS(カーネル名)、パッケージ管理システム(apt, yum, brewなど)に合わせた、データ(ツール)を自動でインストールする
    • OS、パッケージ管理システムが不明な場合のため、それを手動で指定できる
    • ソフトウェアはパッケージ管理システムによりインストール、またはソースコードをビルドしてインストールするため、命令セットアーキテクチャ(ISA)は判定しない
  • UI にシェルスクリプトを実行するボタンを追加できる
  • 依存するファイルを files 内に設定

命令セットアーキテクチャ(ISA)を取得するコマンド

  • Linux, macOS: uname -p (unknownが返ってくる場合は uname -m
  • Windows: set PROCESSOR_ARCHITECTURE

多言語対応

  • ツール毎に各自然言語の翻訳データを用意
  • システムのロケール設定のロケールID(IETF言語タグ、BCP47。またはGlottolog code)に合わせて、ツールの JSON ファイルの kernel-name.lang で指定した、翻訳用のファイルをダウンロードする
  • UI のボタンのテキストなどをロケールIDに合わせて翻訳する

コマンドラインツールを UI に対応する

  • OS のコマンドラインツール(mkdir など)

Bash コンパイラ

  • シェルスクリプトを効率的に記述するための Kozmik IDE が使用するソフトウェア
  • 現在開発する必要はない
  • 機能
    • apt install, yum install, brew install の省略
    • apt installsudo を自動で追加
  • シェルスクリプトを解析
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment