machineconfig 5.18__py3-none-any.whl → 5.19__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of machineconfig might be problematic. Click here for more details.
- machineconfig/scripts/python/devops.py +23 -16
- machineconfig/scripts/python/interactive.py +1 -1
- {machineconfig-5.18.dist-info → machineconfig-5.19.dist-info}/METADATA +1 -1
- {machineconfig-5.18.dist-info → machineconfig-5.19.dist-info}/RECORD +7 -7
- {machineconfig-5.18.dist-info → machineconfig-5.19.dist-info}/WHEEL +0 -0
- {machineconfig-5.18.dist-info → machineconfig-5.19.dist-info}/entry_points.txt +0 -0
- {machineconfig-5.18.dist-info → machineconfig-5.19.dist-info}/top_level.txt +0 -0
|
@@ -1,33 +1,32 @@
|
|
|
1
1
|
"""devops with emojis"""
|
|
2
2
|
|
|
3
|
-
import machineconfig.utils.installer_utils.installer as installer_entry_point
|
|
4
3
|
import machineconfig.scripts.python.share_terminal as share_terminal
|
|
5
4
|
import machineconfig.scripts.python.repos as repos
|
|
6
|
-
|
|
7
|
-
import machineconfig.profile.create_frontend as create_frontend
|
|
5
|
+
from machineconfig.jobs.installer.package_groups import PACKAGE_GROUPS
|
|
8
6
|
# import machineconfig.scripts.python.dotfile as dotfile_module
|
|
9
7
|
import typer
|
|
10
|
-
from typing import Literal, Annotated
|
|
8
|
+
from typing import Literal, Annotated, Optional, get_args
|
|
11
9
|
|
|
12
10
|
|
|
13
11
|
app = typer.Typer(help="🛠️ DevOps operations", no_args_is_help=True)
|
|
14
|
-
app.command(
|
|
15
|
-
|
|
12
|
+
@app.command(no_args_is_help=True)
|
|
13
|
+
def install( which: Optional[str] = typer.Option(None, "--which", "-w", help="Comma-separated list of program names to install."),
|
|
14
|
+
group: Optional[PACKAGE_GROUPS] = typer.Option(None, "--group", "-g", help=f"Group name (one of {list(get_args(PACKAGE_GROUPS))})"),
|
|
15
|
+
interactive: bool = typer.Option(False, "--interactive", "-ia", help="Interactive selection of programs to install."),
|
|
16
|
+
) -> None:
|
|
17
|
+
"""📦 Install essential packages"""
|
|
18
|
+
import machineconfig.utils.installer_utils.installer as installer_entry_point
|
|
19
|
+
installer_entry_point.main(which=which, group=group, interactive=interactive)
|
|
16
20
|
|
|
17
21
|
|
|
22
|
+
app.add_typer(repos.app, name="repos", help="📁 Manage git repositories")
|
|
18
23
|
config_apps = typer.Typer(help="⚙️ Configuration subcommands", no_args_is_help=True)
|
|
19
24
|
app.add_typer(config_apps, name="config")
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
25
|
app_data = typer.Typer(help="💾 Data subcommands", no_args_is_help=True)
|
|
24
26
|
app.add_typer(app_data, name="data")
|
|
25
|
-
|
|
26
27
|
nw_apps = typer.Typer(help="🔐 Network subcommands", no_args_is_help=True)
|
|
27
28
|
nw_apps.command(name="share-terminal", help="📡 Share terminal via web browser")(share_terminal.main)
|
|
28
29
|
app.add_typer(nw_apps, name="network")
|
|
29
|
-
|
|
30
|
-
|
|
31
30
|
self_app = typer.Typer(help="🔄 SELF operations subcommands", no_args_is_help=True)
|
|
32
31
|
app.add_typer(self_app, name="self")
|
|
33
32
|
|
|
@@ -49,14 +48,22 @@ def status():
|
|
|
49
48
|
|
|
50
49
|
|
|
51
50
|
@config_apps.command(no_args_is_help=True)
|
|
52
|
-
def private()
|
|
51
|
+
def private(method: Literal["symlink", "copy"] = typer.Option(..., help="Method to use for linking files"),
|
|
52
|
+
on_conflict: Literal["throwError", "overwriteSelfManaged", "backupSelfManaged", "overwriteDefaultPath", "backupDefaultPath"] = typer.Option("throwError", help="Action to take on conflict"),
|
|
53
|
+
which: Optional[str] = typer.Option(None, help="Specific items to process"),
|
|
54
|
+
interactive: bool = typer.Option(False, help="Run in interactive mode")):
|
|
53
55
|
"""🔗 Manage private configuration files."""
|
|
54
|
-
create_frontend
|
|
56
|
+
import machineconfig.profile.create_frontend as create_frontend
|
|
57
|
+
create_frontend.main_private_from_parser(method=method, on_conflict=on_conflict, which=which, interactive=interactive)
|
|
55
58
|
|
|
56
59
|
@config_apps.command(no_args_is_help=True)
|
|
57
|
-
def public()
|
|
60
|
+
def public(method: Literal["symlink", "copy"] = typer.Option(..., help="Method to use for setting up the config file."),
|
|
61
|
+
on_conflict: Literal["throwError", "overwriteDefaultPath", "backupDefaultPath"] = typer.Option(..., help="Action to take on conflict"),
|
|
62
|
+
which: Optional[str] = typer.Option(None, help="Specific items to process"),
|
|
63
|
+
interactive: bool = typer.Option(False, help="Run in interactive mode")):
|
|
58
64
|
"""🔗 Manage public configuration files."""
|
|
59
|
-
create_frontend
|
|
65
|
+
import machineconfig.profile.create_frontend as create_frontend
|
|
66
|
+
create_frontend.main_public_from_parser(method=method, on_conflict=on_conflict, which=which, interactive=interactive)
|
|
60
67
|
|
|
61
68
|
# @config_apps.command(no_args_is_help=True)
|
|
62
69
|
# def dotfile():
|
|
@@ -142,7 +142,7 @@ Set-Service -Name sshd -StartupType 'Automatic'"""
|
|
|
142
142
|
console.print("🔧 Configuring shell profile", style="bold cyan")
|
|
143
143
|
try:
|
|
144
144
|
from machineconfig.profile.shell import create_default_shell_profile
|
|
145
|
-
create_default_shell_profile()
|
|
145
|
+
create_default_shell_profile(method="copy")
|
|
146
146
|
console.print("✅ Shell profile configured successfully", style="bold green")
|
|
147
147
|
except Exception as e:
|
|
148
148
|
console.print(f"❌ Error configuring shell profile: {e}", style="bold red")
|
|
@@ -146,7 +146,7 @@ machineconfig/scripts/python/cloud_sync.py,sha256=RWGpAfJ9fnN18yNBSgN44dzA38Hmd4
|
|
|
146
146
|
machineconfig/scripts/python/count_lines.py,sha256=ZexMRsV70pe9fhLbGuens9EP5gCf078EwTDRHRZo5A0,15960
|
|
147
147
|
machineconfig/scripts/python/count_lines_frontend.py,sha256=HlzPLU9_oJYqPNbnoQ0Hm4CuYy1UUlkZPcE5tFBSEbo,545
|
|
148
148
|
machineconfig/scripts/python/croshell.py,sha256=zHUhOqWG81AOTeawZoDkpURnV1fAisY2lyZ0apvlmVY,6547
|
|
149
|
-
machineconfig/scripts/python/devops.py,sha256=
|
|
149
|
+
machineconfig/scripts/python/devops.py,sha256=OB6Ww1DxL7Z8dqh3ri9fxt-lqUDB-71G6WvrA8dwYSk,6186
|
|
150
150
|
machineconfig/scripts/python/devops_add_identity.py,sha256=wvjNgqsLmqD2SxbNCW_usqfp0LI-TDvcJJKGOWt2oFw,3775
|
|
151
151
|
machineconfig/scripts/python/devops_add_ssh_key.py,sha256=BXB-9RvuSZO0YTbnM2azeABW2ngLW4SKhhAGAieMzfw,6873
|
|
152
152
|
machineconfig/scripts/python/devops_backup_retrieve.py,sha256=JLJHmi8JmZ_qVTeMW-qBEAYGt1fmfWXzZ7Gm-Q-GDcU,5585
|
|
@@ -163,7 +163,7 @@ machineconfig/scripts/python/fire_jobs_streamlit_helper.py,sha256=47DEQpj8HBSa-_
|
|
|
163
163
|
machineconfig/scripts/python/ftpx.py,sha256=QfQTp-6jQP6yxfbLc5sKxiMtTgAgc8sjN7d17_uLiZc,9400
|
|
164
164
|
machineconfig/scripts/python/get_zellij_cmd.py,sha256=e35-18hoXM9N3PFbvbizfkNY_-63iMicieWE3TbGcCQ,576
|
|
165
165
|
machineconfig/scripts/python/gh_models.py,sha256=3BLfW25mBRiPO5VKtVm-nMlKLv-PaZDw7mObajq6F6M,5538
|
|
166
|
-
machineconfig/scripts/python/interactive.py,sha256=
|
|
166
|
+
machineconfig/scripts/python/interactive.py,sha256=_b07DEFgoL1y879ay1iNiZ037cM8TKrBGrVsUDvIFaw,10138
|
|
167
167
|
machineconfig/scripts/python/mount_nfs.py,sha256=aECrL64j9g-9rF49sVJAjGmzaoGgcMnl3g9v17kQF4c,3239
|
|
168
168
|
machineconfig/scripts/python/mount_nw_drive.py,sha256=iru6AtnTyvyuk6WxlK5R4lDkuliVpPV5_uBTVVhXtjQ,1550
|
|
169
169
|
machineconfig/scripts/python/mount_ssh.py,sha256=k2fKq3f5dKq_7anrFOlqvJoI_3U4EWNHLRZ1o3Lsy6M,2268
|
|
@@ -417,8 +417,8 @@ machineconfig/utils/schemas/fire_agents/fire_agents_input.py,sha256=pTxvLzIpD5RF
|
|
|
417
417
|
machineconfig/utils/schemas/installer/installer_types.py,sha256=QClRY61QaduBPJoSpdmTIdgS9LS-RvE-QZ-D260tD3o,1214
|
|
418
418
|
machineconfig/utils/schemas/layouts/layout_types.py,sha256=TcqlZdGVoH8htG5fHn1KWXhRdPueAcoyApppZsPAPto,2020
|
|
419
419
|
machineconfig/utils/schemas/repos/repos_types.py,sha256=ECVr-3IVIo8yjmYmVXX2mnDDN1SLSwvQIhx4KDDQHBQ,405
|
|
420
|
-
machineconfig-5.
|
|
421
|
-
machineconfig-5.
|
|
422
|
-
machineconfig-5.
|
|
423
|
-
machineconfig-5.
|
|
424
|
-
machineconfig-5.
|
|
420
|
+
machineconfig-5.19.dist-info/METADATA,sha256=IBQPKh6okuleljYDH17NoNqg_J3v8rMJjovcQF_eShk,8030
|
|
421
|
+
machineconfig-5.19.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
422
|
+
machineconfig-5.19.dist-info/entry_points.txt,sha256=2afE1mw-o4MUlfxyX73SV02XaQI4SV_LdL2r6_CzhPU,1074
|
|
423
|
+
machineconfig-5.19.dist-info/top_level.txt,sha256=porRtB8qms8fOIUJgK-tO83_FeH6Bpe12oUVC670teA,14
|
|
424
|
+
machineconfig-5.19.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|