Fix upgrade command
This commit is contained in:
parent
da29af2d40
commit
4139b4f3c0
@ -1 +1 @@
|
|||||||
0.3.0
|
0.3.7
|
||||||
|
|||||||
@ -1,6 +1,6 @@
|
|||||||
{application,zx,
|
{application,zx,
|
||||||
[{description,[]},
|
[{description,[]},
|
||||||
{vsn,"0.3.0"},
|
{vsn,"0.3.7"},
|
||||||
{applications,[stdlib,kernel]},
|
{applications,[stdlib,kernel]},
|
||||||
{modules,[zx,zx_auth,zx_conn,zx_conn_sup,zx_daemon,zx_key,
|
{modules,[zx,zx_auth,zx_conn,zx_conn_sup,zx_daemon,zx_key,
|
||||||
zx_lib,zx_local,zx_net,zx_peer,zx_peer_man,
|
zx_lib,zx_local,zx_net,zx_peer,zx_peer_man,
|
||||||
@ -24,7 +24,7 @@
|
|||||||
%%% @end
|
%%% @end
|
||||||
|
|
||||||
-module(zx).
|
-module(zx).
|
||||||
-vsn("0.3.0").
|
-vsn("0.3.7").
|
||||||
-behavior(application).
|
-behavior(application).
|
||||||
-author("Craig Everett <zxq9@zxq9.com>").
|
-author("Craig Everett <zxq9@zxq9.com>").
|
||||||
-copyright("Craig Everett <zxq9@zxq9.com>").
|
-copyright("Craig Everett <zxq9@zxq9.com>").
|
||||||
@ -742,19 +742,20 @@ upgrade() ->
|
|||||||
{ok, Meta} = zx_lib:read_project_meta(ZxDir),
|
{ok, Meta} = zx_lib:read_project_meta(ZxDir),
|
||||||
PackageID = {Realm, Name, Current} = maps:get(package_id, Meta),
|
PackageID = {Realm, Name, Current} = maps:get(package_id, Meta),
|
||||||
{ok, PackageString} = zx_lib:package_string(PackageID),
|
{ok, PackageString} = zx_lib:package_string(PackageID),
|
||||||
ok = tell("Current version: ~s~n", [PackageString]),
|
ok = tell("Current version: ~s", [PackageString]),
|
||||||
{ok, ID} = zx_daemon:latest({Realm, Name}),
|
{ok, ID} = zx_daemon:latest({Realm, Name}),
|
||||||
case zx_daemon:wait_result(ID) of
|
case zx_daemon:wait_result(ID) of
|
||||||
{ok, Current} ->
|
{ok, Current} ->
|
||||||
tell("Running latest version.~n");
|
tell("Running latest version.");
|
||||||
{ok, Latest} when Latest > Current ->
|
{ok, Latest} when Latest > Current ->
|
||||||
NewID = {Realm, Name, Latest},
|
NewID = {Realm, Name, Latest},
|
||||||
ok = acquire([NewID], [NewID]),
|
ok = acquire([NewID], [NewID]),
|
||||||
{ok, LatestString} = zx_lib:version_to_string(Latest),
|
{ok, LatestString} = zx_lib:version_to_string(Latest),
|
||||||
|
ok = tell(info, "Acquiring upgrade: ~s", [LatestString]),
|
||||||
VersionTxt = filename:join(zx_lib:path(etc), "version.txt"),
|
VersionTxt = filename:join(zx_lib:path(etc), "version.txt"),
|
||||||
ok = file:write_file(VersionTxt, LatestString),
|
ok = file:write_file(VersionTxt, LatestString),
|
||||||
{ok, NewString} = zx_lib:package_string(NewID),
|
{ok, NewString} = zx_lib:package_string(NewID),
|
||||||
tell("Upgraded to ~s~n.", [NewString]);
|
tell("Upgraded to ~s.", [NewString]);
|
||||||
{ok, Available} when Available < Current ->
|
{ok, Available} when Available < Current ->
|
||||||
{ok, AvailableString} = zx_lib:version_to_string(Available),
|
{ok, AvailableString} = zx_lib:version_to_string(Available),
|
||||||
Message = "Local version is newer than ~s. Nothing to do.~n",
|
Message = "Local version is newer than ~s. Nothing to do.~n",
|
||||||
@ -9,7 +9,7 @@
|
|||||||
%%% @end
|
%%% @end
|
||||||
|
|
||||||
-module(zx_auth).
|
-module(zx_auth).
|
||||||
-vsn("0.3.0").
|
-vsn("0.3.7").
|
||||||
-author("Craig Everett <zxq9@zxq9.com>").
|
-author("Craig Everett <zxq9@zxq9.com>").
|
||||||
-copyright("Craig Everett <zxq9@zxq9.com>").
|
-copyright("Craig Everett <zxq9@zxq9.com>").
|
||||||
-license("GPL-3.0").
|
-license("GPL-3.0").
|
||||||
@ -7,7 +7,7 @@
|
|||||||
%%% @end
|
%%% @end
|
||||||
|
|
||||||
-module(zx_conn).
|
-module(zx_conn).
|
||||||
-vsn("0.3.0").
|
-vsn("0.3.7").
|
||||||
-author("Craig Everett <zxq9@zxq9.com>").
|
-author("Craig Everett <zxq9@zxq9.com>").
|
||||||
-copyright("Craig Everett <zxq9@zxq9.com>").
|
-copyright("Craig Everett <zxq9@zxq9.com>").
|
||||||
-license("GPL-3.0").
|
-license("GPL-3.0").
|
||||||
@ -339,7 +339,7 @@ pong(Socket) ->
|
|||||||
|
|
||||||
fetch(Socket, ID, PackageID) ->
|
fetch(Socket, ID, PackageID) ->
|
||||||
PIDB = term_to_binary(PackageID),
|
PIDB = term_to_binary(PackageID),
|
||||||
Message = <<0:1, 9:7, PIDB/binary>>,
|
Message = <<0:1, 12:7, PIDB/binary>>,
|
||||||
ok = gen_tcp:send(Socket, Message),
|
ok = gen_tcp:send(Socket, Message),
|
||||||
case wait_hops(Socket, ID, PIDB) of
|
case wait_hops(Socket, ID, PIDB) of
|
||||||
ok ->
|
ok ->
|
||||||
@ -5,7 +5,7 @@
|
|||||||
%%% @end
|
%%% @end
|
||||||
|
|
||||||
-module(zx_conn_sup).
|
-module(zx_conn_sup).
|
||||||
-vsn("0.3.0").
|
-vsn("0.3.7").
|
||||||
-behavior(supervisor).
|
-behavior(supervisor).
|
||||||
-author("Craig Everett <zxq9@zxq9.com>").
|
-author("Craig Everett <zxq9@zxq9.com>").
|
||||||
-copyright("Craig Everett <zxq9@zxq9.com>").
|
-copyright("Craig Everett <zxq9@zxq9.com>").
|
||||||
@ -138,7 +138,7 @@
|
|||||||
%%% @end
|
%%% @end
|
||||||
|
|
||||||
-module(zx_daemon).
|
-module(zx_daemon).
|
||||||
-vsn("0.3.0").
|
-vsn("0.3.7").
|
||||||
-behavior(gen_server).
|
-behavior(gen_server).
|
||||||
-author("Craig Everett <zxq9@zxq9.com>").
|
-author("Craig Everett <zxq9@zxq9.com>").
|
||||||
-copyright("Craig Everett <zxq9@zxq9.com>").
|
-copyright("Craig Everett <zxq9@zxq9.com>").
|
||||||
@ -1228,7 +1228,9 @@ handle_fetch_result(ID, {done, Bin}, {Requestor, {fetch, R, N, V}}, Requests, MX
|
|||||||
Result =
|
Result =
|
||||||
case do_import_package(Bin) of
|
case do_import_package(Bin) of
|
||||||
ok ->
|
ok ->
|
||||||
ok = file:write_file(zx_lib:zsp_path({R, N, V}), Bin),
|
Path = zx_lib:zsp_path({R, N, V}),
|
||||||
|
ok = filelib:ensure_dir(Path),
|
||||||
|
ok = file:write_file(Path, Bin),
|
||||||
done;
|
done;
|
||||||
Error ->
|
Error ->
|
||||||
Error
|
Error
|
||||||
@ -8,7 +8,7 @@
|
|||||||
%%% @end
|
%%% @end
|
||||||
|
|
||||||
-module(zx_key).
|
-module(zx_key).
|
||||||
-vsn("0.3.0").
|
-vsn("0.3.7").
|
||||||
-author("Craig Everett <zxq9@zxq9.com>").
|
-author("Craig Everett <zxq9@zxq9.com>").
|
||||||
-copyright("Craig Everett <zxq9@zxq9.com>").
|
-copyright("Craig Everett <zxq9@zxq9.com>").
|
||||||
-license("GPL-3.0").
|
-license("GPL-3.0").
|
||||||
@ -10,7 +10,7 @@
|
|||||||
%%% @end
|
%%% @end
|
||||||
|
|
||||||
-module(zx_lib).
|
-module(zx_lib).
|
||||||
-vsn("0.3.0").
|
-vsn("0.3.7").
|
||||||
-author("Craig Everett <zxq9@zxq9.com>").
|
-author("Craig Everett <zxq9@zxq9.com>").
|
||||||
-copyright("Craig Everett <zxq9@zxq9.com>").
|
-copyright("Craig Everett <zxq9@zxq9.com>").
|
||||||
-license("GPL-3.0").
|
-license("GPL-3.0").
|
||||||
@ -206,7 +206,8 @@ get_prime(Realm) ->
|
|||||||
|
|
||||||
-spec read_project_meta() -> Result
|
-spec read_project_meta() -> Result
|
||||||
when Result :: {ok, zx_zsp:meta()}
|
when Result :: {ok, zx_zsp:meta()}
|
||||||
| {error, file:posix()}.
|
| {error, file:posix()}
|
||||||
|
| {error, file:posix(), non_neg_integer()}.
|
||||||
%% @private
|
%% @private
|
||||||
%% @equiv read_meta(".")
|
%% @equiv read_meta(".")
|
||||||
|
|
||||||
@ -6,7 +6,7 @@
|
|||||||
%%% @end
|
%%% @end
|
||||||
|
|
||||||
-module(zx_local).
|
-module(zx_local).
|
||||||
-vsn("0.3.0").
|
-vsn("0.3.7").
|
||||||
-author("Craig Everett <zxq9@zxq9.com>").
|
-author("Craig Everett <zxq9@zxq9.com>").
|
||||||
-copyright("Craig Everett <zxq9@zxq9.com>").
|
-copyright("Craig Everett <zxq9@zxq9.com>").
|
||||||
-license("GPL-3.0").
|
-license("GPL-3.0").
|
||||||
@ -1089,15 +1089,20 @@ version_up(patch, {Realm, Name, OldVersion = {Major, Minor, Patch}}, OldMeta) ->
|
|||||||
|
|
||||||
package(TargetDir) ->
|
package(TargetDir) ->
|
||||||
ok = tell("Packaging ~ts", [TargetDir]),
|
ok = tell("Packaging ~ts", [TargetDir]),
|
||||||
{ok, Meta} = zx_lib:read_project_meta(TargetDir),
|
case zx_lib:read_project_meta(TargetDir) of
|
||||||
|
{ok, Meta} -> package2(TargetDir, Meta);
|
||||||
|
Error -> Error
|
||||||
|
end.
|
||||||
|
|
||||||
|
package2(TargetDir, Meta) ->
|
||||||
{Realm, _, _} = maps:get(package_id, Meta),
|
{Realm, _, _} = maps:get(package_id, Meta),
|
||||||
UserName = select_user(Realm),
|
UserName = select_user(Realm),
|
||||||
case select_private_key({Realm, UserName}) of
|
case select_private_key({Realm, UserName}) of
|
||||||
{ok, Key} -> package2(TargetDir, Key);
|
{ok, Key} -> package3(TargetDir, Key);
|
||||||
error -> {error, "User has no private keys on the local system.", 1}
|
error -> {error, "User has no private keys on the local system.", 1}
|
||||||
end.
|
end.
|
||||||
|
|
||||||
package2(TargetDir, Key) ->
|
package3(TargetDir, Key) ->
|
||||||
case zx_zsp:pack(TargetDir, Key) of
|
case zx_zsp:pack(TargetDir, Key) of
|
||||||
{ok, Path} -> tell("Wrote archive ~ts", [Path]);
|
{ok, Path} -> tell("Wrote archive ~ts", [Path]);
|
||||||
{error, eexists} -> {error, "Package file already exists. Aborting", 17};
|
{error, eexists} -> {error, "Package file already exists. Aborting", 17};
|
||||||
@ -5,7 +5,7 @@
|
|||||||
%%% @end
|
%%% @end
|
||||||
|
|
||||||
-module(zx_net).
|
-module(zx_net).
|
||||||
-vsn("0.3.0").
|
-vsn("0.3.7").
|
||||||
-author("Craig Everett <zxq9@zxq9.com>").
|
-author("Craig Everett <zxq9@zxq9.com>").
|
||||||
-copyright("Craig Everett <zxq9@zxq9.com>").
|
-copyright("Craig Everett <zxq9@zxq9.com>").
|
||||||
-license("GPL-3.0").
|
-license("GPL-3.0").
|
||||||
@ -8,7 +8,7 @@
|
|||||||
%%% @end
|
%%% @end
|
||||||
|
|
||||||
-module(zx_peer).
|
-module(zx_peer).
|
||||||
-vsn("0.3.0").
|
-vsn("0.3.7").
|
||||||
-author("Craig Everett <zxq9@zxq9.com>").
|
-author("Craig Everett <zxq9@zxq9.com>").
|
||||||
-copyright("Craig Everett <zxq9@zxq9.com>").
|
-copyright("Craig Everett <zxq9@zxq9.com>").
|
||||||
-license("GPL-3.0").
|
-license("GPL-3.0").
|
||||||
@ -158,26 +158,30 @@ handle_message(<<Command:8, Bin/binary>>) ->
|
|||||||
1 -> zx_daemon:subscribe(Payload);
|
1 -> zx_daemon:subscribe(Payload);
|
||||||
2 -> zx_daemon:unsubscribe(Payload);
|
2 -> zx_daemon:unsubscribe(Payload);
|
||||||
3 -> deferred(fun list/1, Payload);
|
3 -> deferred(fun list/1, Payload);
|
||||||
4 -> deferred(fun zx_daemon:latest/1, Payload);
|
4 -> deferred(fun list/1, Payload);
|
||||||
5 -> deferred(fun provides/1, Payload);
|
5 -> deferred(fun zx_daemon:latest/1, Payload);
|
||||||
6 -> deferred(fun zx_daemon:list_deps/1, Payload);
|
6 -> deferred(fun zx_daemon:describe/1, Payload);
|
||||||
7 -> deferred(fun zx_daemon:list_sysops/1, Payload);
|
7 -> deferred(fun zx_daemon:tags/1, Payload);
|
||||||
8 -> deferred(fun zx_daemon:fetch/1, Payload);
|
8 -> deferred(fun provides/1, Payload);
|
||||||
9 -> zx_daemon:install(Payload);
|
9 -> deferred(fun zx_daemon:search/1, Payload);
|
||||||
10 -> zx_daemon:build(Payload);
|
10 -> deferred(fun zx_daemon:list_deps/1, Payload);
|
||||||
11 -> zx_daemon:list_mirrors();
|
11 -> deferred(fun zx_daemon:list_sysops/1, Payload);
|
||||||
12 -> zx_daemon:add_mirror(Payload);
|
12 -> zx_daemon:fetch(Payload);
|
||||||
13 -> zx_daemon:drop_mirror(Payload);
|
13 -> zx_daemon:keychain(Payload);
|
||||||
14 -> register_key(Payload);
|
14 -> zx_daemon:install(Payload);
|
||||||
15 -> get_key(Payload);
|
15 -> zx_daemon:build(Payload);
|
||||||
16 -> keybin(Payload);
|
16 -> zx_daemon:list_mirrors();
|
||||||
17 -> zx_daemon:find_keypair(Payload);
|
17 -> zx_daemon:add_mirror(Payload);
|
||||||
18 -> have_key(Payload);
|
18 -> zx_daemon:drop_mirror(Payload);
|
||||||
19 -> list_keys(Payload);
|
19 -> register_key(Payload);
|
||||||
20 -> zx_daemon:takeover(Payload);
|
20 -> get_key(Payload);
|
||||||
21 -> zx_daemon:abdicate(Payload);
|
21 -> keybin(Payload);
|
||||||
22 -> zx_daemon:drop_realm(Payload);
|
22 -> zx_daemon:find_keypair(Payload);
|
||||||
23 -> deferred(fun zx_daemon:keychain/1, Payload)
|
23 -> have_key(Payload);
|
||||||
|
24 -> list_keys(Payload);
|
||||||
|
25 -> zx_daemon:takeover(Payload);
|
||||||
|
26 -> zx_daemon:abdicate(Payload);
|
||||||
|
27 -> zx_daemon:drop_realm(Payload)
|
||||||
end,
|
end,
|
||||||
pack(Result).
|
pack(Result).
|
||||||
|
|
||||||
@ -9,7 +9,7 @@
|
|||||||
%%% @end
|
%%% @end
|
||||||
|
|
||||||
-module(zx_peer_man).
|
-module(zx_peer_man).
|
||||||
-vsn("0.3.0").
|
-vsn("0.3.7").
|
||||||
-behavior(gen_server).
|
-behavior(gen_server).
|
||||||
-author("Craig Everett <zxq9@zxq9.com>").
|
-author("Craig Everett <zxq9@zxq9.com>").
|
||||||
-copyright("Craig Everett <zxq9@zxq9.com>").
|
-copyright("Craig Everett <zxq9@zxq9.com>").
|
||||||
@ -6,7 +6,7 @@
|
|||||||
%%% @end
|
%%% @end
|
||||||
|
|
||||||
-module(zx_peer_sup).
|
-module(zx_peer_sup).
|
||||||
-vsn("0.3.0").
|
-vsn("0.3.7").
|
||||||
-behaviour(supervisor).
|
-behaviour(supervisor).
|
||||||
-author("Craig Everett <zxq9@zxq9.com>").
|
-author("Craig Everett <zxq9@zxq9.com>").
|
||||||
-copyright("Craig Everett <zxq9@zxq9.com>").
|
-copyright("Craig Everett <zxq9@zxq9.com>").
|
||||||
@ -10,7 +10,7 @@
|
|||||||
%%% @end
|
%%% @end
|
||||||
|
|
||||||
-module(zx_peers).
|
-module(zx_peers).
|
||||||
-vsn("0.3.0").
|
-vsn("0.3.7").
|
||||||
-behavior(supervisor).
|
-behavior(supervisor).
|
||||||
-author("Craig Everett <zxq9@zxq9.com>").
|
-author("Craig Everett <zxq9@zxq9.com>").
|
||||||
-copyright("Craig Everett <zxq9@zxq9.com>").
|
-copyright("Craig Everett <zxq9@zxq9.com>").
|
||||||
@ -5,7 +5,7 @@
|
|||||||
%%% @end
|
%%% @end
|
||||||
|
|
||||||
-module(zx_proxy).
|
-module(zx_proxy).
|
||||||
-vsn("0.3.0").
|
-vsn("0.3.7").
|
||||||
-author("Craig Everett <zxq9@zxq9.com>").
|
-author("Craig Everett <zxq9@zxq9.com>").
|
||||||
-copyright("Craig Everett <zxq9@zxq9.com>").
|
-copyright("Craig Everett <zxq9@zxq9.com>").
|
||||||
-license("GPL-3.0").
|
-license("GPL-3.0").
|
||||||
@ -137,31 +137,36 @@ loop(Parent, Debug, State = #s{socket = Socket}) ->
|
|||||||
|
|
||||||
dispatch(Socket, Action) ->
|
dispatch(Socket, Action) ->
|
||||||
case Action of
|
case Action of
|
||||||
{list, R} -> make_query(Socket, 3, R);
|
{list, R} -> make_query(Socket, 3, R);
|
||||||
{list, R, N} -> make_query(Socket, 3, {R, N});
|
{list, R, N} -> make_query(Socket, 4, {R, N});
|
||||||
{list, R, N, V} -> make_query(Socket, 3, {R, N, V});
|
{list, R, N, V} -> make_query(Socket, 4, {R, N, V});
|
||||||
{latest, R, N} -> make_query(Socket, 4, {R, N});
|
{latest, R, N} -> make_query(Socket, 5, {R, N});
|
||||||
{latest, R, N, V} -> make_query(Socket, 4, {R, N, V});
|
{latest, R, N, V} -> make_query(Socket, 5, {R, N, V});
|
||||||
{provides, R, M} -> make_query(Socket, 5, {R, M});
|
{describe, R, N} -> make_query(Socket, 6, {R, N});
|
||||||
{list_deps, R, N, V} -> make_query(Socket, 6, {R, N, V});
|
{describe, R, N, V} -> make_query(Socket, 6, {R, N, V});
|
||||||
{list_sysops, R} -> make_query(Socket, 7, R);
|
{tags, R, N} -> make_query(Socket, 7, {R, N});
|
||||||
|
{tags, R, N, V} -> make_query(Socket, 7, {R, N, V});
|
||||||
|
{provides, R, M} -> make_query(Socket, 8, {R, M});
|
||||||
|
{search, R, String} -> make_query(Socket, 9, {R, String});
|
||||||
|
{list_deps, R, N, V} -> make_query(Socket, 10, {R, N, V});
|
||||||
|
{list_sysops, R} -> make_query(Socket, 11, R);
|
||||||
% {fetch, R, N, V} -> fetch(Socket, {R, N, V});
|
% {fetch, R, N, V} -> fetch(Socket, {R, N, V});
|
||||||
{fetch, R, N, V} -> make_query(Socket, 8, {R, N, V});
|
{fetch, R, N, V} -> make_query(Socket, 12, {R, N, V});
|
||||||
{install, R, N, V} -> make_query(Socket, 9, {R, N, V});
|
{keychain, R, K} -> make_query(Socket, 13, {R, K});
|
||||||
{build, R, N, V} -> make_query(Socket, 10, {R, N, V});
|
{install, R, N, V} -> make_query(Socket, 14, {R, N, V});
|
||||||
{list_mirrors} -> make_query(Socket, 11, none);
|
{build, R, N, V} -> make_query(Socket, 15, {R, N, V});
|
||||||
{add_mirror, Host} -> make_query(Socket, 12, Host);
|
{list_mirrors} -> make_query(Socket, 16, none);
|
||||||
{drop_mirror, Host} -> make_query(Socket, 13, Host);
|
{add_mirror, Host} -> make_query(Socket, 17, Host);
|
||||||
{register_key, Data} -> make_query(Socket, 14, Data);
|
{drop_mirror, Host} -> make_query(Socket, 18, Host);
|
||||||
{get_key, KeyID} -> make_query(Socket, 15, KeyID);
|
{register_key, Data} -> make_query(Socket, 19, Data);
|
||||||
{keybin, KeyID} -> make_query(Socket, 16, KeyID);
|
{get_key, KeyID} -> make_query(Socket, 20, KeyID);
|
||||||
{find_keypair, KeyID} -> make_query(Socket, 17, KeyID);
|
{keybin, KeyID} -> make_query(Socket, 21, KeyID);
|
||||||
{have_key, Type, KID} -> make_query(Socket, 18, {Type, KID});
|
{find_keypair, KeyID} -> make_query(Socket, 22, KeyID);
|
||||||
{list_keys, R} -> make_query(Socket, 19, R);
|
{have_key, Type, KID} -> make_query(Socket, 23, {Type, KID});
|
||||||
{takeover, R} -> make_query(Socket, 20, R);
|
{list_keys, R} -> make_query(Socket, 24, R);
|
||||||
{abdicate, R} -> make_query(Socket, 21, R);
|
{takeover, R} -> make_query(Socket, 25, R);
|
||||||
{drop_realm, R} -> make_query(Socket, 22, R);
|
{abdicate, R} -> make_query(Socket, 26, R);
|
||||||
{keychain, R, K} -> make_query(Socket, 23, {R, K});
|
{drop_realm, R} -> make_query(Socket, 27, R);
|
||||||
Unexpected ->
|
Unexpected ->
|
||||||
Message = "Received unexpected request action. Action: ~200tp",
|
Message = "Received unexpected request action. Action: ~200tp",
|
||||||
ok = log(warning, Message, [Unexpected]),
|
ok = log(warning, Message, [Unexpected]),
|
||||||
@ -5,7 +5,7 @@
|
|||||||
%%% @end
|
%%% @end
|
||||||
|
|
||||||
-module(zx_sup).
|
-module(zx_sup).
|
||||||
-vsn("0.3.0").
|
-vsn("0.3.7").
|
||||||
-behavior(supervisor).
|
-behavior(supervisor).
|
||||||
-author("Craig Everett <zxq9@zxq9.com>").
|
-author("Craig Everett <zxq9@zxq9.com>").
|
||||||
-copyright("Craig Everett <zxq9@zxq9.com>").
|
-copyright("Craig Everett <zxq9@zxq9.com>").
|
||||||
@ -6,7 +6,7 @@
|
|||||||
%%% @end
|
%%% @end
|
||||||
|
|
||||||
-module(zx_tty).
|
-module(zx_tty).
|
||||||
-vsn("0.3.0").
|
-vsn("0.3.7").
|
||||||
-author("Craig Everett <zxq9@zxq9.com>").
|
-author("Craig Everett <zxq9@zxq9.com>").
|
||||||
-copyright("Craig Everett <zxq9@zxq9.com>").
|
-copyright("Craig Everett <zxq9@zxq9.com>").
|
||||||
-license("GPL-3.0").
|
-license("GPL-3.0").
|
||||||
@ -5,7 +5,7 @@
|
|||||||
%%% @end
|
%%% @end
|
||||||
|
|
||||||
-module(zx_userconf).
|
-module(zx_userconf).
|
||||||
-vsn("0.3.0").
|
-vsn("0.3.7").
|
||||||
-author("Craig Everett <zxq9@zxq9.com>").
|
-author("Craig Everett <zxq9@zxq9.com>").
|
||||||
-copyright("Craig Everett <zxq9@zxq9.com>").
|
-copyright("Craig Everett <zxq9@zxq9.com>").
|
||||||
-license("GPL-3.0").
|
-license("GPL-3.0").
|
||||||
@ -7,7 +7,7 @@
|
|||||||
%%% @end
|
%%% @end
|
||||||
|
|
||||||
-module(zx_zsp).
|
-module(zx_zsp).
|
||||||
-vsn("0.3.0").
|
-vsn("0.3.7").
|
||||||
-author("Craig Everett <zxq9@zxq9.com>").
|
-author("Craig Everett <zxq9@zxq9.com>").
|
||||||
-copyright("Craig Everett <zxq9@zxq9.com>").
|
-copyright("Craig Everett <zxq9@zxq9.com>").
|
||||||
-license("GPL-3.0").
|
-license("GPL-3.0").
|
||||||
@ -181,7 +181,11 @@ blithely_extract(ZspBin, lib) ->
|
|||||||
install(<<SS:24, _:SS/binary, MS:24, _:MS/binary, TarGZ/binary>>, Path) ->
|
install(<<SS:24, _:SS/binary, MS:24, _:MS/binary, TarGZ/binary>>, Path) ->
|
||||||
ok = filelib:ensure_dir(Path),
|
ok = filelib:ensure_dir(Path),
|
||||||
ok = zx_lib:rm_rf(Path),
|
ok = zx_lib:rm_rf(Path),
|
||||||
ok = file:make_dir(Path),
|
ok =
|
||||||
|
case filelib:is_dir(Path) of
|
||||||
|
true -> ok;
|
||||||
|
false -> file:make_dir(Path)
|
||||||
|
end,
|
||||||
erl_tar:extract({binary, TarGZ}, [{cwd, Path}, compressed]).
|
erl_tar:extract({binary, TarGZ}, [{cwd, Path}, compressed]).
|
||||||
|
|
||||||
|
|
||||||
@ -8,7 +8,7 @@
|
|||||||
{license,[]}.
|
{license,[]}.
|
||||||
{modules,[]}.
|
{modules,[]}.
|
||||||
{name,[]}.
|
{name,[]}.
|
||||||
{package_id,{"otpr","zx",{0,3,0}}}.
|
{package_id,{"otpr","zx",{0,3,7}}}.
|
||||||
{prefix,"zx_"}.
|
{prefix,"zx_"}.
|
||||||
{repo_url,[]}.
|
{repo_url,[]}.
|
||||||
{tags,[]}.
|
{tags,[]}.
|
||||||
Loading…
x
Reference in New Issue
Block a user