Create a launcher icon for Crostini setup flow. This icon should change to some sort of terminal icon once the flow is complete. Its new behavior should then be to launch a terminal within Crostini.
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/ccd825980cab5b931e65bfa2a24eac430d9d19fb commit ccd825980cab5b931e65bfa2a24eac430d9d19fb Author: Nicholas Verne <nverne@chromium.org> Date: Thu Feb 22 01:22:04 2018 First checkin of Crostini app model builder and related classes. This is placeholder only and the button doesn't yet connect to any action. Bug: 813699 Change-Id: Idc84916be75ee25ac1f570a5917af8363f6f5655 Reviewed-on: https://chromium-review.googlesource.com/925921 Commit-Queue: Nicholas Verne <nverne@chromium.org> Reviewed-by: James Cook <jamescook@chromium.org> Reviewed-by: calamity <calamity@chromium.org> Reviewed-by: Ben Wells <benwells@chromium.org> Cr-Commit-Position: refs/heads/master@{#538296} [modify] https://crrev.com/ccd825980cab5b931e65bfa2a24eac430d9d19fb/ash/resources/ash_resources.grd [add] https://crrev.com/ccd825980cab5b931e65bfa2a24eac430d9d19fb/ash/resources/default_100_percent/cros/crostini/logo_crostini_terminal.png [add] https://crrev.com/ccd825980cab5b931e65bfa2a24eac430d9d19fb/ash/resources/default_200_percent/cros/crostini/logo_crostini_terminal.png [modify] https://crrev.com/ccd825980cab5b931e65bfa2a24eac430d9d19fb/chrome/browser/about_flags.cc [modify] https://crrev.com/ccd825980cab5b931e65bfa2a24eac430d9d19fb/chrome/browser/flag_descriptions.cc [modify] https://crrev.com/ccd825980cab5b931e65bfa2a24eac430d9d19fb/chrome/browser/flag_descriptions.h [modify] https://crrev.com/ccd825980cab5b931e65bfa2a24eac430d9d19fb/chrome/browser/ui/BUILD.gn [modify] https://crrev.com/ccd825980cab5b931e65bfa2a24eac430d9d19fb/chrome/browser/ui/app_list/DEPS [modify] https://crrev.com/ccd825980cab5b931e65bfa2a24eac430d9d19fb/chrome/browser/ui/app_list/app_list_syncable_service.cc [modify] https://crrev.com/ccd825980cab5b931e65bfa2a24eac430d9d19fb/chrome/browser/ui/app_list/app_list_syncable_service.h [add] https://crrev.com/ccd825980cab5b931e65bfa2a24eac430d9d19fb/chrome/browser/ui/app_list/crostini/crostini_app_item.cc [add] https://crrev.com/ccd825980cab5b931e65bfa2a24eac430d9d19fb/chrome/browser/ui/app_list/crostini/crostini_app_item.h [add] https://crrev.com/ccd825980cab5b931e65bfa2a24eac430d9d19fb/chrome/browser/ui/app_list/crostini/crostini_app_model_builder.cc [add] https://crrev.com/ccd825980cab5b931e65bfa2a24eac430d9d19fb/chrome/browser/ui/app_list/crostini/crostini_app_model_builder.h [add] https://crrev.com/ccd825980cab5b931e65bfa2a24eac430d9d19fb/chrome/browser/ui/app_list/crostini/crostini_util.cc [add] https://crrev.com/ccd825980cab5b931e65bfa2a24eac430d9d19fb/chrome/browser/ui/app_list/crostini/crostini_util.h [modify] https://crrev.com/ccd825980cab5b931e65bfa2a24eac430d9d19fb/chrome/common/chrome_features.cc [modify] https://crrev.com/ccd825980cab5b931e65bfa2a24eac430d9d19fb/chrome/common/chrome_features.h [modify] https://crrev.com/ccd825980cab5b931e65bfa2a24eac430d9d19fb/tools/metrics/histograms/enums.xml [modify] https://crrev.com/ccd825980cab5b931e65bfa2a24eac430d9d19fb/ui/chromeos/resources/ui_chromeos_resources.grd
WIP set-up flow screenshots attached (for crrev.com/c/930503)
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/74cf13c2db47229941ba4a19f54e0bb8b521bfc6 commit 74cf13c2db47229941ba4a19f54e0bb8b521bfc6 Author: Timothy Loh <timloh@chromium.org> Date: Thu Mar 01 06:56:24 2018 Implement basic Crostini install flow UI This patch implements the basic Crostini install flow UI, for now just a dialog with an install and cancel button. The message strings are just placeholders. As the actual install is not ready yet, naturally the install button doesn't do anything. BUG= 813699 Change-Id: I89b36e0a773e1b6968dd250719202ec2fc45afe9 Reviewed-on: https://chromium-review.googlesource.com/930503 Commit-Queue: Timothy Loh <timloh@chromium.org> Reviewed-by: Trent Apted <tapted@chromium.org> Reviewed-by: calamity <calamity@chromium.org> Cr-Commit-Position: refs/heads/master@{#540074} [modify] https://crrev.com/74cf13c2db47229941ba4a19f54e0bb8b521bfc6/chrome/app/chromeos_strings.grdp [modify] https://crrev.com/74cf13c2db47229941ba4a19f54e0bb8b521bfc6/chrome/browser/ui/BUILD.gn [modify] https://crrev.com/74cf13c2db47229941ba4a19f54e0bb8b521bfc6/chrome/browser/ui/app_list/crostini/crostini_app_item.cc [add] https://crrev.com/74cf13c2db47229941ba4a19f54e0bb8b521bfc6/chrome/browser/ui/app_list/crostini/crostini_installer_view.cc [add] https://crrev.com/74cf13c2db47229941ba4a19f54e0bb8b521bfc6/chrome/browser/ui/app_list/crostini/crostini_installer_view.h [add] https://crrev.com/74cf13c2db47229941ba4a19f54e0bb8b521bfc6/chrome/browser/ui/app_list/crostini/crostini_installer_view_browsertest.cc [modify] https://crrev.com/74cf13c2db47229941ba4a19f54e0bb8b521bfc6/chrome/browser/ui/browser_dialogs.h [modify] https://crrev.com/74cf13c2db47229941ba4a19f54e0bb8b521bfc6/chrome/test/BUILD.gn
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/platform/system_api/+/8dd9af05f32325ff3dae28ce126860b99b6d04f6 commit 8dd9af05f32325ff3dae28ce126860b99b6d04f6 Author: Nicholas Verne <nverne@chromium.org> Date: Thu Mar 08 06:08:21 2018 Added Start/StopVmConcierge to debugd dbus constants. This is needed for the crostini setup flow to start the concierge service. Bug: 813699 Change-Id: Ibd115b06517835025dd8f7d96a8addff481e2053 Reviewed-on: https://chromium-review.googlesource.com/954302 Commit-Ready: Nicholas Verne <nverne@chromium.org> Tested-by: Nicholas Verne <nverne@chromium.org> Reviewed-by: Chirantan Ekbote <chirantan@chromium.org> Reviewed-by: Mike Frysinger <vapier@chromium.org> [modify] https://crrev.com/8dd9af05f32325ff3dae28ce126860b99b6d04f6/dbus/debugd/dbus-constants.h
To clarify the description, for now we should use the Terminal icon both before & after Crostini has been set up.
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/1ccdac4afa1d98f721ed3e16f89ee48a05d1603c commit 1ccdac4afa1d98f721ed3e16f89ee48a05d1603c Author: Nicholas Verne <nverne@chromium.org> Date: Mon Mar 19 08:23:08 2018 Roll src/third_party/cros_system_api/ 1e83c2514..72bfdd343 (4 commits) https://chromium.googlesource.com/chromiumos/platform/system_api.git/+log/1e83c2514884..72bfdd343136 $ git log 1e83c2514..72bfdd343 --date=short --no-merges --format='%ad %ae %s' 2018-03-07 amoylan Add DBus service constants for ML Service 2018-03-13 jkardatzke Add StartContainer D-Bus call for vm_concierge 2018-03-09 derat system_api: Delete power_manager::kBrightnessChangedSignal. 2018-03-07 allenvic smbprovider: Add GetSharesOptionsProto Created with: roll-dep src/third_party/cros_system_api Bug: 813699 Change-Id: I2079dbd81a3dd3ee0e6ba0e89b0f4b1c12e0fe7d Reviewed-on: https://chromium-review.googlesource.com/967982 Reviewed-by: Timothy Loh <timloh@chromium.org> Commit-Queue: Nicholas Verne <nverne@chromium.org> Cr-Commit-Position: refs/heads/master@{#543989} [modify] https://crrev.com/1ccdac4afa1d98f721ed3e16f89ee48a05d1603c/DEPS
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/0e1449fd8ccc57db3d67d297ecf80321dc648b24 commit 0e1449fd8ccc57db3d67d297ecf80321dc648b24 Author: Renee Wright <rjwright@chromium.org> Date: Wed Mar 28 00:21:40 2018 Create a Concierge client in browser process and add basic methods The Concierge dbus service provides commands to start and stop a Termina VM. Previously the only client consuming these members was a command line tool. We need to expose these members to ChromeOS UI, so I have added a client for it in the main browser process. I've added CreateDiskImage, StartTerminaVM and StopVM methods. Bug: 813699 Change-Id: I8caa988fc56244a70743d7c41721c1d214b9e664 Reviewed-on: https://chromium-review.googlesource.com/954162 Commit-Queue: Renée Wright <rjwright@chromium.org> Reviewed-by: Xiyuan Xia <xiyuan@chromium.org> Reviewed-by: Steven Bennetts <stevenjb@chromium.org> Reviewed-by: Ryo Hashimoto <hashimoto@chromium.org> Reviewed-by: Nicholas Verne <nverne@chromium.org> Cr-Commit-Position: refs/heads/master@{#546331} [modify] https://crrev.com/0e1449fd8ccc57db3d67d297ecf80321dc648b24/chrome/browser/chromeos/BUILD.gn [add] https://crrev.com/0e1449fd8ccc57db3d67d297ecf80321dc648b24/chrome/browser/chromeos/crostini/crostini_manager.cc [add] https://crrev.com/0e1449fd8ccc57db3d67d297ecf80321dc648b24/chrome/browser/chromeos/crostini/crostini_manager.h [add] https://crrev.com/0e1449fd8ccc57db3d67d297ecf80321dc648b24/chrome/browser/chromeos/crostini/crostini_manager_unittest.cc [modify] https://crrev.com/0e1449fd8ccc57db3d67d297ecf80321dc648b24/chromeos/BUILD.gn [add] https://crrev.com/0e1449fd8ccc57db3d67d297ecf80321dc648b24/chromeos/dbus/concierge_client.cc [add] https://crrev.com/0e1449fd8ccc57db3d67d297ecf80321dc648b24/chromeos/dbus/concierge_client.h [modify] https://crrev.com/0e1449fd8ccc57db3d67d297ecf80321dc648b24/chromeos/dbus/dbus_clients_browser.cc [modify] https://crrev.com/0e1449fd8ccc57db3d67d297ecf80321dc648b24/chromeos/dbus/dbus_clients_browser.h [modify] https://crrev.com/0e1449fd8ccc57db3d67d297ecf80321dc648b24/chromeos/dbus/dbus_thread_manager.cc [modify] https://crrev.com/0e1449fd8ccc57db3d67d297ecf80321dc648b24/chromeos/dbus/dbus_thread_manager.h [modify] https://crrev.com/0e1449fd8ccc57db3d67d297ecf80321dc648b24/chromeos/dbus/dbus_thread_manager_unittest.cc [modify] https://crrev.com/0e1449fd8ccc57db3d67d297ecf80321dc648b24/chromeos/dbus/debug_daemon_client.cc [modify] https://crrev.com/0e1449fd8ccc57db3d67d297ecf80321dc648b24/chromeos/dbus/debug_daemon_client.h [add] https://crrev.com/0e1449fd8ccc57db3d67d297ecf80321dc648b24/chromeos/dbus/fake_concierge_client.cc [add] https://crrev.com/0e1449fd8ccc57db3d67d297ecf80321dc648b24/chromeos/dbus/fake_concierge_client.h [modify] https://crrev.com/0e1449fd8ccc57db3d67d297ecf80321dc648b24/chromeos/dbus/fake_debug_daemon_client.cc [modify] https://crrev.com/0e1449fd8ccc57db3d67d297ecf80321dc648b24/chromeos/dbus/fake_debug_daemon_client.h
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/7555a5458900a8aa2d587ba5fb0b43b3a8679d97 commit 7555a5458900a8aa2d587ba5fb0b43b3a8679d97 Author: Nicholas Verne <nverne@chromium.org> Date: Thu Mar 29 05:20:24 2018 Initial end-to-end install flow for Crostini. CrostiniInstallerView downloads the cros-termina component, then uses CrostiniManager to start the concierge service and then a termina vm, then a container. If the above steps are successful, a new window running crosh connected to the container is opened. Bug: 813699 Change-Id: I459220b0481d46956b3f3ba5b5abdae063baa3bb Reviewed-on: https://chromium-review.googlesource.com/967961 Commit-Queue: Nicholas Verne <nverne@chromium.org> Reviewed-by: calamity <calamity@chromium.org> Reviewed-by: Ben Wells <benwells@chromium.org> Reviewed-by: Timothy Loh <timloh@chromium.org> Cr-Commit-Position: refs/heads/master@{#546735} [modify] https://crrev.com/7555a5458900a8aa2d587ba5fb0b43b3a8679d97/chrome/app/chromeos_strings.grdp [modify] https://crrev.com/7555a5458900a8aa2d587ba5fb0b43b3a8679d97/chrome/browser/ui/app_list/crostini/crostini_app_item.cc [modify] https://crrev.com/7555a5458900a8aa2d587ba5fb0b43b3a8679d97/chrome/browser/ui/app_list/crostini/crostini_installer_view.cc [modify] https://crrev.com/7555a5458900a8aa2d587ba5fb0b43b3a8679d97/chrome/browser/ui/app_list/crostini/crostini_installer_view.h [modify] https://crrev.com/7555a5458900a8aa2d587ba5fb0b43b3a8679d97/chrome/browser/ui/app_list/crostini/crostini_util.h [modify] https://crrev.com/7555a5458900a8aa2d587ba5fb0b43b3a8679d97/chrome/browser/ui/extensions/application_launch.cc [modify] https://crrev.com/7555a5458900a8aa2d587ba5fb0b43b3a8679d97/chrome/browser/ui/extensions/application_launch.h
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/f193ff99bed7f70f467c094673abf1ac918ef52a commit f193ff99bed7f70f467c094673abf1ac918ef52a Author: Nicholas Verne <nverne@chromium.org> Date: Wed Apr 11 04:50:24 2018 Concierge's StartContainer works in async mode. Because StartContainer is a long running DBus method, if used in sync mode it would tie up its interface for too long. Instead we make an async call, listen for a DBus Signal indicating completion. Refactored the terminal launching code out of the install flow and into CrostiniManager. A future CL will add calls to restart the VM and container if needed before a terminal app is launched. This is needed for the post-install operation of Crostini. Bug: 813699 Change-Id: I2b6a2e6b77e80a44f3dfe0c2f2f075c3a4a04d33 Reviewed-on: https://chromium-review.googlesource.com/995052 Reviewed-by: Ryo Hashimoto <hashimoto@chromium.org> Reviewed-by: calamity <calamity@chromium.org> Reviewed-by: Timothy Loh <timloh@chromium.org> Commit-Queue: Nicholas Verne <nverne@chromium.org> Cr-Commit-Position: refs/heads/master@{#549764} [modify] https://crrev.com/f193ff99bed7f70f467c094673abf1ac918ef52a/chrome/browser/chromeos/crostini/crostini_manager.cc [modify] https://crrev.com/f193ff99bed7f70f467c094673abf1ac918ef52a/chrome/browser/chromeos/crostini/crostini_manager.h [modify] https://crrev.com/f193ff99bed7f70f467c094673abf1ac918ef52a/chrome/browser/chromeos/crostini/crostini_manager_unittest.cc [modify] https://crrev.com/f193ff99bed7f70f467c094673abf1ac918ef52a/chrome/browser/ui/app_list/crostini/crostini_installer_view.cc [modify] https://crrev.com/f193ff99bed7f70f467c094673abf1ac918ef52a/chrome/browser/ui/app_list/crostini/crostini_installer_view.h [modify] https://crrev.com/f193ff99bed7f70f467c094673abf1ac918ef52a/chromeos/dbus/concierge_client.cc [modify] https://crrev.com/f193ff99bed7f70f467c094673abf1ac918ef52a/chromeos/dbus/concierge_client.h [modify] https://crrev.com/f193ff99bed7f70f467c094673abf1ac918ef52a/chromeos/dbus/fake_concierge_client.cc [modify] https://crrev.com/f193ff99bed7f70f467c094673abf1ac918ef52a/chromeos/dbus/fake_concierge_client.h
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/35f76eb0753be8beaa21a5734162f6c70bd8d136 commit 35f76eb0753be8beaa21a5734162f6c70bd8d136 Author: Nicholas Verne <nverne@chromium.org> Date: Thu Apr 12 09:28:35 2018 The Crostini terminal window now has a corresponding item in the shelf. This is achieved by setting an extension in it AppLaunchParams. Bug: 813699 Change-Id: Id519c61a8974ba7aa69b982d9c594b71828425c2 Reviewed-on: https://chromium-review.googlesource.com/1009513 Reviewed-by: Ben Wells <benwells@chromium.org> Commit-Queue: Nicholas Verne <nverne@chromium.org> Cr-Commit-Position: refs/heads/master@{#550112} [modify] https://crrev.com/35f76eb0753be8beaa21a5734162f6c70bd8d136/chrome/browser/chromeos/crostini/crostini_manager.cc
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/ef786057bdd3289e245693913b2421ddaf03e19c commit ef786057bdd3289e245693913b2421ddaf03e19c Author: Renee Wright <rjwright@chromium.org> Date: Fri Apr 20 04:26:03 2018 Move CrostiniRegistryService into namespace crostini Bug: 813699 Change-Id: I1f185d555dfcc519f46f6f26c8bf6f6aba961b7f Reviewed-on: https://chromium-review.googlesource.com/981335 Commit-Queue: Renée Wright <rjwright@chromium.org> Reviewed-by: Xiyuan Xia <xiyuan@chromium.org> Reviewed-by: Bernhard Bauer <bauerb@chromium.org> Cr-Commit-Position: refs/heads/master@{#552259} [modify] https://crrev.com/ef786057bdd3289e245693913b2421ddaf03e19c/chrome/browser/chromeos/crostini/crostini_registry_service.cc [modify] https://crrev.com/ef786057bdd3289e245693913b2421ddaf03e19c/chrome/browser/chromeos/crostini/crostini_registry_service.h [modify] https://crrev.com/ef786057bdd3289e245693913b2421ddaf03e19c/chrome/browser/chromeos/crostini/crostini_registry_service_factory.cc [modify] https://crrev.com/ef786057bdd3289e245693913b2421ddaf03e19c/chrome/browser/chromeos/crostini/crostini_registry_service_factory.h [modify] https://crrev.com/ef786057bdd3289e245693913b2421ddaf03e19c/chrome/browser/chromeos/crostini/crostini_registry_service_unittest.cc [modify] https://crrev.com/ef786057bdd3289e245693913b2421ddaf03e19c/chrome/browser/chromeos/dbus/vm_applications_service_provider_delegate.cc [modify] https://crrev.com/ef786057bdd3289e245693913b2421ddaf03e19c/chrome/browser/prefs/browser_prefs.cc [modify] https://crrev.com/ef786057bdd3289e245693913b2421ddaf03e19c/chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc [modify] https://crrev.com/ef786057bdd3289e245693913b2421ddaf03e19c/chrome/browser/ui/app_list/crostini/crostini_app_item.cc [modify] https://crrev.com/ef786057bdd3289e245693913b2421ddaf03e19c/chrome/browser/ui/app_list/crostini/crostini_app_model_builder.cc [modify] https://crrev.com/ef786057bdd3289e245693913b2421ddaf03e19c/chrome/browser/ui/app_list/crostini/crostini_app_model_builder.h
@nverne, can this bug be closed? Issue 822507 tracks the setup flow specifically.
The following revision refers to this bug: https://chromium.googlesource.com/apps/libapps/+/9d2bd1d3f8fa1089ebffe2a440d9afdb1e01e7b7 commit 9d2bd1d3f8fa1089ebffe2a440d9afdb1e01e7b7 Author: Nicholas Verne <nverne@chromium.org> Date: Wed Apr 25 03:09:57 2018 nassh: Adds the crostini terminal icon to use with crosh. BUG= chromium:813699 TEST=manual testing Change-Id: Ic1dc5f319d782baab4c93a2e8a2d317cee1ece0e Reviewed-on: https://chromium-review.googlesource.com/1025241 Reviewed-by: Mike Frysinger <vapier@chromium.org> Tested-by: Nicholas Verne <nverne@chromium.org> [add] https://crrev.com/9d2bd1d3f8fa1089ebffe2a440d9afdb1e01e7b7/nassh/images/dev/crostini-fullsize.webp [add] https://crrev.com/9d2bd1d3f8fa1089ebffe2a440d9afdb1e01e7b7/nassh/images/dev/crostini-192.webp [add] https://crrev.com/9d2bd1d3f8fa1089ebffe2a440d9afdb1e01e7b7/nassh/images/dev/crostini.svg
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/1359098289ea0710b3f8f365b0114cf8c2a017ae commit 1359098289ea0710b3f8f365b0114cf8c2a017ae Author: Nicholas Verne <nverne@chromium.org> Date: Thu Apr 26 01:51:09 2018 Adds icons section in crosh_builtin manifest. The icon itself lives in //third_party/libapps/nassh/images/dev and is only used in chromeos. We allow chromeos to scale the icon from 192 to the device-appropriate size. Bug: 813699 Cq-Include-Trybots: master.tryserver.chromium.linux:closure_compilation Change-Id: I01385219919686915abbfddbc7032adff6aab3a0 Reviewed-on: https://chromium-review.googlesource.com/1025470 Reviewed-by: calamity <calamity@chromium.org> Commit-Queue: Nicholas Verne <nverne@chromium.org> Cr-Commit-Position: refs/heads/master@{#553874} [modify] https://crrev.com/1359098289ea0710b3f8f365b0114cf8c2a017ae/chrome/browser/resources/chromeos/crosh_builtin/manifest.json
Chrome: 72.0.3626.30 Chrome OS: 11316.36.0 Verify there is a terminal icon in Linux Apps
Comment 1 by nverne@chromium.org
, Feb 20 2018