mirror of
https://github.com/lollipopkit/flutter_server_box.git
synced 2025-12-17 07:14:28 +01:00
@@ -586,7 +586,7 @@
|
||||
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
|
||||
CLANG_ENABLE_MODULES = YES;
|
||||
CODE_SIGN_ENTITLEMENTS = Runner/Runner.entitlements;
|
||||
CURRENT_PROJECT_VERSION = 643;
|
||||
CURRENT_PROJECT_VERSION = 644;
|
||||
DEVELOPMENT_TEAM = BA88US33G6;
|
||||
ENABLE_BITCODE = NO;
|
||||
INFOPLIST_FILE = "Runner/Info-$(CONFIGURATION).plist";
|
||||
@@ -596,7 +596,7 @@
|
||||
"$(inherited)",
|
||||
"@executable_path/Frameworks",
|
||||
);
|
||||
MARKETING_VERSION = 1.0.643;
|
||||
MARKETING_VERSION = 1.0.644;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = com.lollipopkit.toolbox;
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h";
|
||||
@@ -720,7 +720,7 @@
|
||||
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
|
||||
CLANG_ENABLE_MODULES = YES;
|
||||
CODE_SIGN_ENTITLEMENTS = Runner/Runner.entitlements;
|
||||
CURRENT_PROJECT_VERSION = 643;
|
||||
CURRENT_PROJECT_VERSION = 644;
|
||||
DEVELOPMENT_TEAM = BA88US33G6;
|
||||
ENABLE_BITCODE = NO;
|
||||
INFOPLIST_FILE = "Runner/Info-$(CONFIGURATION).plist";
|
||||
@@ -730,7 +730,7 @@
|
||||
"$(inherited)",
|
||||
"@executable_path/Frameworks",
|
||||
);
|
||||
MARKETING_VERSION = 1.0.643;
|
||||
MARKETING_VERSION = 1.0.644;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = com.lollipopkit.toolbox;
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h";
|
||||
@@ -748,7 +748,7 @@
|
||||
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
|
||||
CLANG_ENABLE_MODULES = YES;
|
||||
CODE_SIGN_ENTITLEMENTS = Runner/Runner.entitlements;
|
||||
CURRENT_PROJECT_VERSION = 643;
|
||||
CURRENT_PROJECT_VERSION = 644;
|
||||
DEVELOPMENT_TEAM = BA88US33G6;
|
||||
ENABLE_BITCODE = NO;
|
||||
INFOPLIST_FILE = "Runner/Info-$(CONFIGURATION).plist";
|
||||
@@ -758,7 +758,7 @@
|
||||
"$(inherited)",
|
||||
"@executable_path/Frameworks",
|
||||
);
|
||||
MARKETING_VERSION = 1.0.643;
|
||||
MARKETING_VERSION = 1.0.644;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = com.lollipopkit.toolbox;
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h";
|
||||
@@ -779,7 +779,7 @@
|
||||
CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
|
||||
CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
|
||||
CODE_SIGN_STYLE = Automatic;
|
||||
CURRENT_PROJECT_VERSION = 643;
|
||||
CURRENT_PROJECT_VERSION = 644;
|
||||
DEVELOPMENT_TEAM = BA88US33G6;
|
||||
GCC_C_LANGUAGE_STANDARD = gnu11;
|
||||
GENERATE_INFOPLIST_FILE = YES;
|
||||
@@ -792,7 +792,7 @@
|
||||
"@executable_path/Frameworks",
|
||||
"@executable_path/../../Frameworks",
|
||||
);
|
||||
MARKETING_VERSION = 1.0.643;
|
||||
MARKETING_VERSION = 1.0.644;
|
||||
MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
|
||||
MTL_FAST_MATH = YES;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = com.lollipopkit.toolbox.StatusWidget;
|
||||
@@ -818,7 +818,7 @@
|
||||
CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
|
||||
CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
|
||||
CODE_SIGN_STYLE = Automatic;
|
||||
CURRENT_PROJECT_VERSION = 643;
|
||||
CURRENT_PROJECT_VERSION = 644;
|
||||
DEVELOPMENT_TEAM = BA88US33G6;
|
||||
GCC_C_LANGUAGE_STANDARD = gnu11;
|
||||
GENERATE_INFOPLIST_FILE = YES;
|
||||
@@ -831,7 +831,7 @@
|
||||
"@executable_path/Frameworks",
|
||||
"@executable_path/../../Frameworks",
|
||||
);
|
||||
MARKETING_VERSION = 1.0.643;
|
||||
MARKETING_VERSION = 1.0.644;
|
||||
MTL_FAST_MATH = YES;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = com.lollipopkit.toolbox.StatusWidget;
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
@@ -854,7 +854,7 @@
|
||||
CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
|
||||
CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
|
||||
CODE_SIGN_STYLE = Automatic;
|
||||
CURRENT_PROJECT_VERSION = 643;
|
||||
CURRENT_PROJECT_VERSION = 644;
|
||||
DEVELOPMENT_TEAM = BA88US33G6;
|
||||
GCC_C_LANGUAGE_STANDARD = gnu11;
|
||||
GENERATE_INFOPLIST_FILE = YES;
|
||||
@@ -867,7 +867,7 @@
|
||||
"@executable_path/Frameworks",
|
||||
"@executable_path/../../Frameworks",
|
||||
);
|
||||
MARKETING_VERSION = 1.0.643;
|
||||
MARKETING_VERSION = 1.0.644;
|
||||
MTL_FAST_MATH = YES;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = com.lollipopkit.toolbox.StatusWidget;
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
@@ -890,7 +890,7 @@
|
||||
CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
|
||||
CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
|
||||
CODE_SIGN_STYLE = Automatic;
|
||||
CURRENT_PROJECT_VERSION = 643;
|
||||
CURRENT_PROJECT_VERSION = 644;
|
||||
DEVELOPMENT_ASSET_PATHS = "";
|
||||
DEVELOPMENT_TEAM = BA88US33G6;
|
||||
ENABLE_PREVIEWS = YES;
|
||||
@@ -902,7 +902,7 @@
|
||||
"$(inherited)",
|
||||
"@executable_path/Frameworks",
|
||||
);
|
||||
MARKETING_VERSION = 1.0.643;
|
||||
MARKETING_VERSION = 1.0.644;
|
||||
MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
|
||||
MTL_FAST_MATH = YES;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = com.lollipopkit.toolbox.WatchEnd;
|
||||
@@ -931,7 +931,7 @@
|
||||
CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
|
||||
CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
|
||||
CODE_SIGN_STYLE = Automatic;
|
||||
CURRENT_PROJECT_VERSION = 643;
|
||||
CURRENT_PROJECT_VERSION = 644;
|
||||
DEVELOPMENT_ASSET_PATHS = "";
|
||||
DEVELOPMENT_TEAM = BA88US33G6;
|
||||
ENABLE_PREVIEWS = YES;
|
||||
@@ -943,7 +943,7 @@
|
||||
"$(inherited)",
|
||||
"@executable_path/Frameworks",
|
||||
);
|
||||
MARKETING_VERSION = 1.0.643;
|
||||
MARKETING_VERSION = 1.0.644;
|
||||
MTL_FAST_MATH = YES;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = com.lollipopkit.toolbox.WatchEnd;
|
||||
PRODUCT_NAME = ServerBox;
|
||||
@@ -969,7 +969,7 @@
|
||||
CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
|
||||
CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
|
||||
CODE_SIGN_STYLE = Automatic;
|
||||
CURRENT_PROJECT_VERSION = 643;
|
||||
CURRENT_PROJECT_VERSION = 644;
|
||||
DEVELOPMENT_ASSET_PATHS = "";
|
||||
DEVELOPMENT_TEAM = BA88US33G6;
|
||||
ENABLE_PREVIEWS = YES;
|
||||
@@ -981,7 +981,7 @@
|
||||
"$(inherited)",
|
||||
"@executable_path/Frameworks",
|
||||
);
|
||||
MARKETING_VERSION = 1.0.643;
|
||||
MARKETING_VERSION = 1.0.644;
|
||||
MTL_FAST_MATH = YES;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = com.lollipopkit.toolbox.WatchEnd;
|
||||
PRODUCT_NAME = ServerBox;
|
||||
|
||||
@@ -9,7 +9,7 @@ const _homeVar = '\$HOME';
|
||||
|
||||
enum ShellFunc {
|
||||
status,
|
||||
docker,
|
||||
//docker,
|
||||
process,
|
||||
shutdown,
|
||||
reboot,
|
||||
@@ -45,8 +45,8 @@ chmod +x $_installShellPath
|
||||
switch (this) {
|
||||
case ShellFunc.status:
|
||||
return 's';
|
||||
case ShellFunc.docker:
|
||||
return 'd';
|
||||
// case ShellFunc.docker:
|
||||
// return 'd';
|
||||
case ShellFunc.process:
|
||||
return 'p';
|
||||
case ShellFunc.shutdown:
|
||||
@@ -64,10 +64,10 @@ chmod +x $_installShellPath
|
||||
switch (this) {
|
||||
case ShellFunc.status:
|
||||
return 'status';
|
||||
case ShellFunc.docker:
|
||||
// `dockeR` -> avoid conflict with `docker` command
|
||||
// 以防止循环递归
|
||||
return 'dockeR';
|
||||
// case ShellFunc.docker:
|
||||
// // `dockeR` -> avoid conflict with `docker` command
|
||||
// // 以防止循环递归
|
||||
// return 'dockeR';
|
||||
case ShellFunc.process:
|
||||
return 'process';
|
||||
case ShellFunc.shutdown:
|
||||
@@ -88,14 +88,14 @@ if [ "\$macSign" = "" ] && [ "\$bsdSign" = "" ]; then
|
||||
else
|
||||
\t${_bsdStatusCmd.join(_cmdDivider)}
|
||||
fi''';
|
||||
case ShellFunc.docker:
|
||||
return '''
|
||||
result=\$(docker version 2>&1 | grep "permission denied")
|
||||
if [ "\$result" != "" ]; then
|
||||
\t${_dockerCmds.join(_cmdDivider)}
|
||||
else
|
||||
\t${_dockerCmds.map((e) => "sudo -S $e").join(_cmdDivider)}
|
||||
fi''';
|
||||
// case ShellFunc.docker:
|
||||
// return '''
|
||||
// result=\$(docker version 2>&1 | grep "permission denied")
|
||||
// if [ "\$result" != "" ]; then
|
||||
// \t${_dockerCmds.join(_cmdDivider)}
|
||||
// else
|
||||
// \t${_dockerCmds.map((e) => "sudo -S $e").join(_cmdDivider)}
|
||||
// fi''';
|
||||
case ShellFunc.process:
|
||||
return '''
|
||||
if [ "\$macSign" = "" ] && [ "\$bsdSign" = "" ]; then
|
||||
@@ -225,14 +225,22 @@ enum DockerCmdType {
|
||||
//stats,
|
||||
images,
|
||||
;
|
||||
|
||||
String get exec {
|
||||
switch (this) {
|
||||
case DockerCmdType.version:
|
||||
return 'docker version';
|
||||
case DockerCmdType.ps:
|
||||
return 'docker ps -a';
|
||||
// case DockerCmdType.stats:
|
||||
// return 'docker stats --no-stream';
|
||||
case DockerCmdType.images:
|
||||
return 'docker image ls';
|
||||
}
|
||||
}
|
||||
|
||||
const _dockerCmds = [
|
||||
'docker version',
|
||||
'docker ps -a',
|
||||
//'docker stats --no-stream',
|
||||
'docker image ls',
|
||||
];
|
||||
static final execAll = values.map((e) => e.exec).join(_cmdDivider);
|
||||
}
|
||||
|
||||
enum BSDStatusCmdType {
|
||||
echo,
|
||||
|
||||
@@ -48,8 +48,8 @@ class DockerProvider extends ChangeNotifier {
|
||||
|
||||
Future<void> refresh() async {
|
||||
var raw = '';
|
||||
await client!.execWithPwd(
|
||||
ShellFunc.docker.exec,
|
||||
await client?.execWithPwd(
|
||||
_wrap(DockerCmdType.execAll),
|
||||
context: context,
|
||||
onStdout: (data, _) => raw = '$raw$data',
|
||||
);
|
||||
@@ -171,13 +171,16 @@ class DockerProvider extends ChangeNotifier {
|
||||
return null;
|
||||
}
|
||||
|
||||
// judge whether to use DOCKER_HOST
|
||||
// wrap cmd with `docker host & sudo`
|
||||
String _wrap(String cmd) {
|
||||
final dockerHost = Stores.docker.fetch(hostId!);
|
||||
cmd = 'export LANG=en_US.UTF-8 && $cmd';
|
||||
if (dockerHost == null || dockerHost.isEmpty) {
|
||||
return cmd;
|
||||
if (userName != 'root') {
|
||||
return 'sudo $cmd';
|
||||
}
|
||||
return 'export DOCKER_HOST=$dockerHost && $cmd';
|
||||
} else {
|
||||
cmd = 'export DOCKER_HOST=$dockerHost && $cmd';
|
||||
}
|
||||
return 'export LANG=en_US.UTF-8 && $cmd';
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,9 +2,9 @@
|
||||
|
||||
class BuildData {
|
||||
static const String name = "ServerBox";
|
||||
static const int build = 643;
|
||||
static const int build = 644;
|
||||
static const String engine = "3.16.0";
|
||||
static const String buildAt = "2023-11-19 14:47:41";
|
||||
static const int modifications = 1;
|
||||
static const String buildAt = "2023-11-20 11:49:47";
|
||||
static const int modifications = 4;
|
||||
static const int script = 26;
|
||||
}
|
||||
|
||||
@@ -355,7 +355,7 @@ class _DockerManagePageState extends State<DockerManagePage> {
|
||||
Widget _buildMoreBtn(DockerPsItem dItem) {
|
||||
return PopupMenu(
|
||||
items: DockerMenuType.items(dItem.running).map((e) => e.widget).toList(),
|
||||
onSelected: (DockerMenuType item) async {
|
||||
onSelected: (item) async {
|
||||
switch (item) {
|
||||
case DockerMenuType.rm:
|
||||
context.showRoundDialog(
|
||||
@@ -464,7 +464,7 @@ class _DockerManagePageState extends State<DockerManagePage> {
|
||||
await context.showRoundDialog(
|
||||
title: Text(l10n.dockerEditHost),
|
||||
child: Input(
|
||||
maxLines: 1,
|
||||
maxLines: 2,
|
||||
controller: ctrl,
|
||||
onSubmitted: _onSaveDockerHost,
|
||||
),
|
||||
|
||||
@@ -126,7 +126,8 @@ class _ServerEditPageState extends State<ServerEditPage> {
|
||||
'${l10n.delete} ${l10n.server}(${widget.spi!.name})',
|
||||
)),
|
||||
UIs.height13,
|
||||
if (widget.spi?.server?.canViewDetails ?? false) Row(
|
||||
if (widget.spi?.server?.canViewDetails ?? false)
|
||||
Row(
|
||||
children: [
|
||||
Checkbox(
|
||||
value: delScripts,
|
||||
|
||||
Reference in New Issue
Block a user