1// Copyright 2013 The Chromium Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5#ifndef CHROME_BROWSER_SXS_LINUX_H_
6#define CHROME_BROWSER_SXS_LINUX_H_
7
8#include "base/compiler_specific.h"
9
10namespace base {
11class FilePath;
12}
13
14namespace sxs_linux {
15
16// Records channel of the running browser in user data dir. This is needed
17// to support a seamless and automatic upgrade from non-side-by-side
18// to side-by-side Linux packages (the latter use different default data dirs).
19// Must be run on a blocking thread pool.
20void AddChannelMarkToUserDataDir();
21
22// Returns true if user data dir migration has been requested.
23bool ShouldMigrateUserDataDir() WARN_UNUSED_RESULT;
24
25// Migrates user data dir to a side-by-side-compatible one.
26// Returns exit code - caller should make the process exit with that code.
27int MigrateUserDataDir() WARN_UNUSED_RESULT;
28
29}  // namespace sxs_linux
30
31#endif  // CHROME_BROWSER_SXS_LINUX_H_
32