私はLinuxマシンにデプロイ/インストールされるアプリを設計しています(おそらくArchlinuxですが、どのディストリビューションでもかまいません。実際、可能な限り軽量でDebianファミリー内のものを好みます)。このマシンは、「汎用」または複数のアプリケーションマシンではありません。唯一の目的は、起動時にアプリを実行し、シャットダウン時にアプリを閉じることです。このマシンには他のエンドユーザーアプリはインストールされません。
私は次の方法を探しています:
したがって、エンドユーザーはマシンがLinux上で実行されていることを知ることはありません。彼らにとって、アプリはマシン上で「生きている」唯一のものです。
これはhas AndroidはLinuxの単なるラッパーであり、単一のデバイスを実行する他のデバイスが数千アプリとそれ以上のものはありません。
これは、実際のアプリとしてJavaデスクトップアプリケーションを起動するCバイナリである可能性があります。
上記の項目をどのように達成できるかについてのアイデアはありますか?
このタスクにはArchlinuxを強くお勧めします。デフォルトでごく少数の「エンドユーザー」アプリケーションをインストールすることと、それでも構築できる賢明なシステムを残すこととの間の微妙なバランスをとることができます。
目標を達成するための手順については、Archをインストールした後、起動時に実行するサービスを微調整します(頭から離れて、必要なようです ttysが少ない )。その後、 Xをインストールして構成します (そのリンクには、ログイン時にXを開始するためのリンクもあります。これは必要です)。起動時にスプラッシュ画面が必要な場合は、 Plymouth のように設定する必要があります。そして最後に、systemdは物理的なシャットダウン(たとえば、コンシューマーハードウェアの電源ボタンを1回押す)をかなり優雅に処理する傾向があります。ただし、実行するアプリにシャットダウン機能を追加することを検討する価値があるかもしれません。
きみの $HOME/.xinitrc
多くの機能を必要としない場合は、非常に基本的なことかもしれません。例えば。:
exec /path/to/your/program/here