問題: Software principles

Install-less software

+2  

The web is an install-less platform, but it only works for HTML/Javascript

YAML 発想

Theres no reason specifically why we can't ship non-Javascript code like how a browser ships HTML and Javascript. If you trust an application's sourcecode, you should be able to run an app by navigating to it.

In Android, we can bring up WiFi, Bluetooth and GPS by toggling it. Once a server side application is opened we can turn it on and off with a similar interface.

Register a data handler for magicapp:// in a browser and a hash to an app. The app is hosted on IPFS or equivalent.

The app is a bundle that incorporates source code for native apps, python or node js server and all dependencies.

Navigating to an app handles the download and installation in the background. No command line necessary..no starting of servers or migrations. That all happens automatically.

For compiled apps an estimated progress bar is displayed during compilation based on other users. The server will start automatifally and a browser will open the app.

See Cloudron, cPanel and other automated installers for how the install process would work. See web browsers for how easy it is to use an app.

chronological,


(通知しない) (不必要) ログインしてください。

アプリにサーバーコンポーネントがある場合、質問せずにブラウザにインストールする権限を与えるだけでよいということですか? Dockerのような孤立した環境にインストールされない限り、セキュリティリスクのように聞こえます。しかし、それはスペースとメモリを大量に消費しているように聞こえます。ローカルホストに実行可能ファイルをインストールするためのブラウザーアクセス許可を与えるには、ある程度のセキュリティエンジニアリングが必要ですが、一般に、ブラウザーですべてを仮想化しようとするよりも、このアイデアの方が実際に優れていると思います。 []

Do you mean that if an app has a server component, then we could simply give a browser the permissions to install it without asking? Sounds like a security risk, unless it gets installed into an isolted environment, like docker. However, that then sounds like a space and memory hog. Giving browser permissions to install executables on localhost would require some security engineering, but in general, I see this idea as actually better than trying to virtualize everything on a browser. [+]


アプリケーションマニフェストとインストール手順を理解する別のアプリケーションがあります。これは、存在しないため、マジックアプリと呼んでいます。

Magicapp:// infinityfamily / fh47fhr4838

セキュリティはこの概念の欠点です。リンクをクリックして「はい」と言ってから、完全にインストールされているソフトウェアを参照するというアイデアが好きです。 Magicアプリは、ネイティブソフトウェアをインストールしていることを警告するダイアログを表示します。

FTPingファイルなし、.exesの実行、apt get nginx php-fpmの実行、。/ configure

We would have a separate application that understands application manifests and installation instructions I call it magic app because it doesn't exist.

Magicapp://infinityfamily/fh47fhr4838

Security is the disadvantage of this concept. I just like the idea of clicking a link, saying yes, then browsing into the software fully installed. Magic app would show a dialog perhaps a warning that you are installing native software.

No FTPing files, running .exes, running apt get nginx php-fpm, ./configure && make && make install, npm run server, apt-get install postgresql-12

I would like a friendly pretty GUI of the compilation process. Perhaps showing a spinner and showing what file is being compiled.

It could do something smart like run Docker containers for some isolation security.

Flatpak and Canonical snaps try solve application packaging. JuJu tries to solve software configuration - I recommend giving it a look.



    :  -- 
    : Mindey
    :  -- 
    

chronological,

私はブラウザがそれをすることはないと思います。特別なアプリケーションブラウザか、ブラウザのハンドラとして登録するアプリである必要があります。

ソフトウェアのインストールは時代遅れでレガシーだと思います。明示的なステップである必要はありません。

I don't think the browser would ever do it. It would have to be a special application browser or an app that registers as a handler in a browser.

I think software installation is antiquated and legacy. it's just not necessary for it to be an explicit step.



    :  -- 
    : Mindey
    :  -- 
    

chronological,

ブラウザ拡張機能はローカルホストで実行されているHTTPサービスと通信できるため、ブラウザ拡張機能を作成することで、提案しているものの初期プロトタイプをすばやく作成することができます。したがって、ブラウザー拡張機能からのコマンドをリッスンするデーモンとしてアプリケーションインストーラーを実行すると、Infinityなどのアプリがyaml仕様のインストールを要求する可能性があります。試してみて、後でセキュリティについて考える価値があると思います。

We could try to quickly cook up an initial prototype of what you're proposing by making a browser extension, because browser extensions can communicate with an HTTP service running on localhost. So, if you run an application installer as a daemon that listens for commands from browser extension, then an app like Infinity could ask it to install a yaml spec. I think it's worth trying out, and thinking of security later.



    : chronological
    :  -- 
    :  -- 
    

Mindey,

しかし、考えてみると、ブラウザはW3Cによって定義された単なるUIプロトコルであり、主な機能はブラウザではなく、アドレスフィールドです。あなたのアイデアは、Addresser Appの関連するアイデアに影響を与えました。

When you think about it though, browser is just a UI Protocol, defined by W3C, and the main feature is not the browser, but the address field! Your idea has inspired a related idea of Addresser App.