sysetup 1.3.3__tar.gz → 1.3.4__tar.gz
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.
- {sysetup-1.3.3/src/sysetup.egg-info → sysetup-1.3.4}/PKG-INFO +2 -2
- {sysetup-1.3.3 → sysetup-1.3.4}/pyproject.toml +2 -2
- {sysetup-1.3.3 → sysetup-1.3.4}/src/sysetup/main/files/assets.py +1 -0
- {sysetup-1.3.3 → sysetup-1.3.4}/src/sysetup/main/installations.py +18 -9
- {sysetup-1.3.3 → sysetup-1.3.4}/src/sysetup/main/packages.py +18 -12
- {sysetup-1.3.3 → sysetup-1.3.4/src/sysetup.egg-info}/PKG-INFO +2 -2
- {sysetup-1.3.3 → sysetup-1.3.4}/src/sysetup.egg-info/requires.txt +1 -1
- {sysetup-1.3.3 → sysetup-1.3.4}/LICENSE +0 -0
- {sysetup-1.3.3 → sysetup-1.3.4}/README.md +0 -0
- {sysetup-1.3.3 → sysetup-1.3.4}/bin/pw +0 -0
- {sysetup-1.3.3 → sysetup-1.3.4}/bin/pw-askpass +0 -0
- {sysetup-1.3.3 → sysetup-1.3.4}/setup.cfg +0 -0
- {sysetup-1.3.3 → sysetup-1.3.4}/src/sysetup/__init__.py +0 -0
- {sysetup-1.3.3 → sysetup-1.3.4}/src/sysetup/cli/__init__.py +0 -0
- {sysetup-1.3.3 → sysetup-1.3.4}/src/sysetup/cli/entry_point.py +0 -0
- {sysetup-1.3.3 → sysetup-1.3.4}/src/sysetup/context/__init__.py +0 -0
- {sysetup-1.3.3 → sysetup-1.3.4}/src/sysetup/context/context.py +0 -0
- {sysetup-1.3.3 → sysetup-1.3.4}/src/sysetup/main/__init__.py +0 -0
- {sysetup-1.3.3 → sysetup-1.3.4}/src/sysetup/main/environment.py +0 -0
- {sysetup-1.3.3 → sysetup-1.3.4}/src/sysetup/main/files/__init__.py +0 -0
- {sysetup-1.3.3 → sysetup-1.3.4}/src/sysetup/main/files/permissions.py +0 -0
- {sysetup-1.3.3 → sysetup-1.3.4}/src/sysetup/main/files/settings.py +0 -0
- {sysetup-1.3.3 → sysetup-1.3.4}/src/sysetup/main/files/setup.py +0 -0
- {sysetup-1.3.3 → sysetup-1.3.4}/src/sysetup/main/main.py +0 -0
- {sysetup-1.3.3 → sysetup-1.3.4}/src/sysetup/models/__init__.py +0 -0
- {sysetup-1.3.3 → sysetup-1.3.4}/src/sysetup/models/action.py +0 -0
- {sysetup-1.3.3 → sysetup-1.3.4}/src/sysetup/models/options.py +0 -0
- {sysetup-1.3.3 → sysetup-1.3.4}/src/sysetup/models/path.py +0 -0
- {sysetup-1.3.3 → sysetup-1.3.4}/src/sysetup/py.typed +0 -0
- {sysetup-1.3.3 → sysetup-1.3.4}/src/sysetup/utils/__init__.py +0 -0
- {sysetup-1.3.3 → sysetup-1.3.4}/src/sysetup/utils/download.py +0 -0
- {sysetup-1.3.3 → sysetup-1.3.4}/src/sysetup.egg-info/SOURCES.txt +0 -0
- {sysetup-1.3.3 → sysetup-1.3.4}/src/sysetup.egg-info/dependency_links.txt +0 -0
- {sysetup-1.3.3 → sysetup-1.3.4}/src/sysetup.egg-info/entry_points.txt +0 -0
- {sysetup-1.3.3 → sysetup-1.3.4}/src/sysetup.egg-info/top_level.txt +0 -0
- {sysetup-1.3.3 → sysetup-1.3.4}/tests/test_background.py +0 -0
- {sysetup-1.3.3 → sysetup-1.3.4}/tests/test_cli_entry_point.py +0 -0
- {sysetup-1.3.3 → sysetup-1.3.4}/tests/test_installer.py +0 -0
- {sysetup-1.3.3 → sysetup-1.3.4}/tests/test_main.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: sysetup
|
|
3
|
-
Version: 1.3.
|
|
3
|
+
Version: 1.3.4
|
|
4
4
|
Summary: Personal system setup
|
|
5
5
|
Author-email: Quinten Roets <qdr2104@columbia.edu>
|
|
6
6
|
License: MIT
|
|
@@ -8,7 +8,7 @@ Project-URL: Source Code, https://github.com/quintenroets/sysetup
|
|
|
8
8
|
Requires-Python: >=3.10
|
|
9
9
|
Description-Content-Type: text/markdown
|
|
10
10
|
License-File: LICENSE
|
|
11
|
-
Requires-Dist: backupmaster<2,>=1.2.
|
|
11
|
+
Requires-Dist: backupmaster<2,>=1.2.21
|
|
12
12
|
Requires-Dist: dbus-next<1,>=0.2.3
|
|
13
13
|
Requires-Dist: package-utils[context]<1,>=0.6.1
|
|
14
14
|
Requires-Dist: powercli<1,>=0.3.1
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = "sysetup"
|
|
3
|
-
version = "1.3.
|
|
3
|
+
version = "1.3.4"
|
|
4
4
|
description = "Personal system setup"
|
|
5
5
|
authors = [{name = "Quinten Roets", email = "qdr2104@columbia.edu"}]
|
|
6
6
|
license = {text = "MIT"}
|
|
7
7
|
readme = "README.md"
|
|
8
8
|
requires-python = ">=3.10"
|
|
9
9
|
dependencies = [
|
|
10
|
-
"backupmaster >=1.2.
|
|
10
|
+
"backupmaster >=1.2.21, <2",
|
|
11
11
|
"dbus-next >=0.2.3, <1",
|
|
12
12
|
"package-utils[context] >=0.6.1, <1",
|
|
13
13
|
"powercli >=0.3.1, <1",
|
|
@@ -9,6 +9,8 @@ from sysetup.models import Path
|
|
|
9
9
|
def setup() -> None:
|
|
10
10
|
install_chromium()
|
|
11
11
|
install_keyd()
|
|
12
|
+
enable_service("ydotoold")
|
|
13
|
+
enable_service("ssh")
|
|
12
14
|
install_language_support()
|
|
13
15
|
install_linter_env()
|
|
14
16
|
install_personal_git_repositories()
|
|
@@ -19,10 +21,10 @@ def install_personal_git_repositories() -> None:
|
|
|
19
21
|
token = os.getenv("GITHUB", None)
|
|
20
22
|
if token is not None:
|
|
21
23
|
base_url = base_url.replace("github.com", f"{token}@github.com")
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
24
|
+
if not Path.extensions.exists():
|
|
25
|
+
command = f"git clone {base_url}/extensions.git"
|
|
26
|
+
cli.run(command, Path.extensions)
|
|
27
|
+
cli.run(f"pip install git+{base_url}/system.git")
|
|
26
28
|
|
|
27
29
|
|
|
28
30
|
def install_language_support() -> None:
|
|
@@ -61,15 +63,22 @@ def install_linter_env() -> None:
|
|
|
61
63
|
|
|
62
64
|
|
|
63
65
|
def install_keyd() -> None:
|
|
64
|
-
install_repository("keyd", "quintenroets/keyd")
|
|
65
|
-
|
|
66
|
+
install_repository("keyd", "quintenroets/keyd", branch="support-scroll-mapping")
|
|
67
|
+
enable_service("keyd")
|
|
68
|
+
|
|
69
|
+
|
|
70
|
+
def enable_service(name: str) -> None:
|
|
66
71
|
if not context.is_running_in_test:
|
|
67
|
-
|
|
72
|
+
command = f"systemctl enable --now {name}"
|
|
73
|
+
cli.run(command, root=True)
|
|
68
74
|
|
|
69
75
|
|
|
70
|
-
def install_repository(name: str, repository: str) -> None:
|
|
76
|
+
def install_repository(name: str, repository: str, branch: str | None = None) -> None:
|
|
71
77
|
if not cli.capture_output("which", name, check=False):
|
|
72
78
|
url = f"https://github.com/{repository}"
|
|
79
|
+
command: tuple[str, ...] = "git clone", url
|
|
80
|
+
if branch is not None:
|
|
81
|
+
command = (*command, "-b", branch)
|
|
73
82
|
with Path.tempdir() as directory:
|
|
74
|
-
cli.run(
|
|
83
|
+
cli.run(*command, directory)
|
|
75
84
|
cli.run_commands("make", "sudo make install", cwd=directory)
|
|
@@ -19,6 +19,13 @@ def install_packages() -> None:
|
|
|
19
19
|
packages: list[str] = path.yaml
|
|
20
20
|
cli.install(*packages, install_command=command)
|
|
21
21
|
|
|
22
|
+
if not context.apt_is_installed:
|
|
23
|
+
commands = (
|
|
24
|
+
"sudo pacman -S --noconfirm python-pip base-devel",
|
|
25
|
+
"pip install wheel",
|
|
26
|
+
)
|
|
27
|
+
cli.run_commands(*commands)
|
|
28
|
+
|
|
22
29
|
|
|
23
30
|
def update_package_manager() -> None:
|
|
24
31
|
if context.apt_is_installed:
|
|
@@ -28,10 +35,10 @@ def update_package_manager() -> None:
|
|
|
28
35
|
|
|
29
36
|
|
|
30
37
|
def update_apt() -> None:
|
|
31
|
-
|
|
32
|
-
"
|
|
33
|
-
"select true | sudo debconf-set-selections"
|
|
38
|
+
value = (
|
|
39
|
+
"ttf-mscorefonts-installer msttcorefonts/accepted-mscorefonts-eula select true"
|
|
34
40
|
)
|
|
41
|
+
agree_eula_command = f'echo "{value}" | sudo debconf-set-selections'
|
|
35
42
|
commands = ["sudo apt-get update", agree_eula_command]
|
|
36
43
|
cli.run_commands_in_shell(*commands)
|
|
37
44
|
if not Path("/snap").exists():
|
|
@@ -39,16 +46,15 @@ def update_apt() -> None:
|
|
|
39
46
|
|
|
40
47
|
|
|
41
48
|
def cleanup_after_install() -> None:
|
|
42
|
-
|
|
43
|
-
"sudo apt-get autoremove -y"
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
"
|
|
49
|
+
if context.apt_is_installed:
|
|
50
|
+
cli.run("sudo apt-get autoremove -y")
|
|
51
|
+
cli.run("tlp start", root=True)
|
|
52
|
+
if cli.completes_successfully("which qdbus"):
|
|
53
|
+
commands = (
|
|
54
|
+
"rm /usr/bin/qdbus",
|
|
55
|
+
"ls -s /usr/lib/qt6/bin/qdbus /usr/bin/qdbus",
|
|
48
56
|
)
|
|
49
|
-
|
|
50
|
-
cli.run_commands_in_shell(after_install_command, "sudo tlp start")
|
|
51
|
-
cli.run("systemctl enable ssh", root=True) # start ssh server before log in
|
|
57
|
+
cli.run_commands(*commands, root=True)
|
|
52
58
|
delete = "apt purge -y" if context.apt_is_installed else "pacman -R --noconfirm"
|
|
53
59
|
commands = (
|
|
54
60
|
"auto-cpufreq --install", # Fails on VM
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: sysetup
|
|
3
|
-
Version: 1.3.
|
|
3
|
+
Version: 1.3.4
|
|
4
4
|
Summary: Personal system setup
|
|
5
5
|
Author-email: Quinten Roets <qdr2104@columbia.edu>
|
|
6
6
|
License: MIT
|
|
@@ -8,7 +8,7 @@ Project-URL: Source Code, https://github.com/quintenroets/sysetup
|
|
|
8
8
|
Requires-Python: >=3.10
|
|
9
9
|
Description-Content-Type: text/markdown
|
|
10
10
|
License-File: LICENSE
|
|
11
|
-
Requires-Dist: backupmaster<2,>=1.2.
|
|
11
|
+
Requires-Dist: backupmaster<2,>=1.2.21
|
|
12
12
|
Requires-Dist: dbus-next<1,>=0.2.3
|
|
13
13
|
Requires-Dist: package-utils[context]<1,>=0.6.1
|
|
14
14
|
Requires-Dist: powercli<1,>=0.3.1
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|