Commit Graph

96 Commits

Author SHA1 Message Date
renovate[bot] d389db4a54
chore(deps): update actions/setup-python digest to a26af69 (#3401)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-04-26 19:57:00 +10:00
Anton Hvornum a29a48f452
Swapping to python-uv for building and distribution (#3407)
* Swapping to python-uv for building archinstall

* Tweaked UV parameters to not use a venv

* Tweaking uv to not resolve/install any dependencies during installation.

* Added remaining dependencies to the build runner

* Swapped to uv for publishing, using pypi 'trusted publisher' instead of token access

* Installing uv and dependencies for publishing

* Swapped to uv in the building of the test ISO
2025-04-26 11:55:19 +02:00
renovate[bot] cb42003b2b
chore(deps): update actions/setup-python digest to 8d9ed9a (#3300)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-03-25 23:05:05 +11:00
renovate[bot] 4d37212a9a
chore(deps): pin dependencies (#3295)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-03-23 10:16:59 +11:00
correctmost 083194f0e8
Pin astral-sh/ruff-action to a specific commit (#3265)
The GitHub docs recommend pinning third-party actions to specific
commits for security hardening purposes.
2025-03-23 10:14:05 +11:00
correctmost fb3dd7da4c
Use the official ruff GitHub action instead of custom code (#3156)
This speeds up PR checks and reduces network I/O.
2025-02-01 17:04:28 +11:00
Daniel Girtler fc63d45fe6
Remove deprecated swiss config (#3042)
* Remove deprecated swiss config

* Update
2025-01-21 12:42:31 +01:00
correctmost 60842bd1cf
Enable bare-except linter rules and fix warnings (#2988) 2024-12-01 18:34:51 +11:00
correctmost 45bc9c2e65
Use the ruff version specified in pyproject.toml for CI checks (#2960)
Previously, the ruff system package was used, which could lag
behind the PyPI version.
2024-11-30 19:58:10 +11:00
correctmost e49a679fb8
Enable pytest test runs on CI (#2947)
This commit also fixes fixture and test issues that caused failures.
2024-11-27 17:42:22 +11:00
correctmost 9cabc981b2
Remove python-simple-term-menu installations from CI workflows (#2932)
The dependency is no longer needed as of 0f2e0095.
2024-11-25 08:26:09 +01:00
correctmost 2408b597be
Enable the E128 flake8 rule for all code except for __init__.py (#2827)
This commit also fixes a few files that had non-uniform indentation.
2024-11-16 19:34:29 +11:00
correctmost 6102a08c6d
Enable the W504 binary operator rule in flake8 (#2825) 2024-11-16 18:57:08 +11:00
correctmost c682ddf391
Enable the E123 closing bracket rule in flake8 (#2812) 2024-11-16 18:23:52 +11:00
Daniel Girtler 88b91ae201
Integrate new curses menu (#2663)
* Edit text menu

* Fix alignment

* Scroll functionality

* Fix flake8

* Migrate locales menu

* Fix language translation

* Fix interrupt

* Fix flake8

* Edit mode preset

* Convert print to tui prints

* Fix mypy

* Fix cycling through long menu

* Fix profile view

* Fix scrolling

* Fix scrolling

* Fix mypy

* Fix swiss script

* Display asterisk for passwords

* Corrected a variable usage in the local mirror parsing

* Made sure that curses menu selection on mirrors use url object from mirror.url instead of the class instance

* Fixed mypy type on mirror list

---------

Co-authored-by: Torxed <torxed@archlinux.org>
2024-11-15 08:23:22 +01:00
correctmost aecf3ea553
Add Pylint support and enable Pylint CI checks (#2658) 2024-11-04 14:30:28 +01:00
Rafael Fontenelle 92079b0e8e
Do not try to update github-pages on pull_request (#2711) 2024-10-02 07:25:15 +10:00
correctmost 6ba0e5c441
Fix minor copy/paste errors in GitHub workflow configs (#2672) 2024-09-08 08:08:55 +10:00
correctmost 8391668a2e
Add ruff linting support (#2654) 2024-08-29 13:51:12 +02:00
correctmost 35c8eb3394
Fix unnecessary f-strings and enable flake8 rule (#2653) 2024-08-29 03:01:55 +10:00
correctmost 62b4099c8d
Fix whitespace issues detected by flake8 (#2652)
This commit also removes exclusions that are no longer needed.
2024-08-29 01:40:53 +10:00
correctmost 7b5f1f72f9
Expand mypy checks to include more files and more checks (#2651)
This commit also centralizes the mypy configuration in one spot.
2024-08-29 00:39:22 +10:00
Anton Hvornum 98518e444a
Use `/mirrors/status/json/` instead of `/mirrorlist/` to get mirror lists (#2599)
* Using JSON endpoint instead of ASCII endpoint for mirror listing, as the JSON endpoint is cached and easier to parse

* Added a TODO to handle unknown regional mirrors (which lacks info in the backend)

* Filtered out 'bad' mirrors. Also added a sorting mechanism that uses the mirrors 'score' rather than just the URL name. This will emulate the reflector.service/rankmirrors behavior and thus reducing the need to re-rank the mirrors.

* Added the ability to sort mirrors via latency or download speed using sorted(mirror_list, key=lambda mirror: (mirror.score, mirror.speed)) - but I have not implemented the sorting via the menu yet, and I have not integrated the new MirrorStatus model into the handling of URL's. I still need to figure out where the {region: [url, url]} is being used, so that i can convert to {region: [mirror.url, mirror.url]} logic.

* Converting MirrorStatus model to {mirror: [url, url]}

* Added debug information for /var/log/archinstall/install.log

* Fixing flake8

* Fixed issue where 'dead' mirrors have no score, and thus can't be round():ed

* Forgot to return model validation data after validation

* Improving debug/info output

* Reverting change in #2350 - Writing over instead of appending to mirrorlist

* Mirror URL's reported by the JSON endpoint does not contain the repo format, only the base location for the mirror. So we have to adjust for this.

* pydantic did not honor 'private' variables in 'before' model validator, had to change to 'after' instead.

* Sorted out mypy typing matching the new MirrorStatus model

* Added pydantic as a dependency, it's time!

* Updated workflow to include pydantic

* Added return values from model @property decorators.
2024-08-02 15:24:44 +02:00
Daniel Girtler aa87fb1db5
Strict mypy - Phase 1 (#2533)
* Strict mypy for examples/
2024-06-13 21:35:54 +02:00
renovate[bot] 3f4fbed7b7
chore(deps): update peaceiris/actions-gh-pages action to v4 (#2451)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-16 19:00:55 +10:00
Brock Vojkovic 4505f6febb
Switch from weekly official to daily official image (https://github.com/archlinux/archinstall/issues/2443) (#2453) 2024-04-11 07:33:00 +02:00
renovate[bot] 214f82d43e
chore(deps): update actions/upload-artifact action to v4 (#2369)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-07 15:07:14 +01:00
renovate[bot] 9ae1048262
chore(deps): update actions/setup-python action to v5 (#2289)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-07 15:06:19 +01:00
Mário Victor Ribeiro Silva 8885d92485
build(gh-pages): change rule to docs build (#2269) 2023-11-27 13:41:34 +01:00
renovate[bot] 03c1989270
Update actions/setup-python action to v4 (#2236)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-11-24 08:13:41 +01:00
renovate[bot] 64c91cdbcb
Update actions/checkout action to v4 (#2235)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-11-23 18:14:41 +01:00
Anton Hvornum 922f6082b5
Added a CNAME file, as well as removed some debugging (#2240) 2023-11-21 23:56:39 +01:00
Anton Hvornum e73ac39a7e
It appears jekyll might be needed? (#2239)
* It appears jekyll might be needed? https://github.com/peaceiris/actions-gh-pages#%EF%B8%8F-enable-built-in-jekyll-enable_jekyll

* Added some debugging

* Maybe jekyll is not needed?
2023-11-21 23:45:55 +01:00
Anton Hvornum 349c21d7a2
GitHub pages improvement (#2237)
* Moved to arch container

* Swapped branch for testing

* Removed publish if condition for now

* I think I got it this time, publish_branch has to be separate in order for the runner to create it and have access to pushing things?

* Missing 'git' depndency, to work with git heh
2023-11-21 23:02:47 +01:00
Anton Hvornum f02af54356
Testing github pages (#2234)
* Testing github pages

* Adding libparted-dev to the ubuntu machine (I'd like to move away from ubuntu, but the runner recommended it)

* Debugging

* changed to master branch
2023-11-21 22:27:10 +01:00
Daniel Girtler 1e296b2637
Fix 2118 (#2119)
* Update locales generation

* Update README

* Disable translation check

---------

Co-authored-by: Daniel Girtler <girtler.daniel@gmail.com>
2023-09-28 08:44:18 +10:00
K.B.Dharun Krishna abd5aeba6a
po: update Tamil translation (#2096)
* po: update Tamil translation

* Update translation workflow check

* Update translation workflow check

* Update translation workflow check

* Update translation files

* Update translation workflow check

---------

Co-authored-by: Daniel Girtler <girtler.daniel@gmail.com>
2023-09-24 11:03:04 +10:00
Daniel Girtler 91c2906f3c
Fix broken action check (#2060)
* Fix broken action check
2023-09-17 22:12:34 +10:00
Daniel Girtler be7ffbdd7e Update 2023-09-05 21:38:56 +10:00
Daniel Girtler bcf1eb3e36 Update 2023-09-05 21:32:30 +10:00
Daniel Girtler d93bf84e59 Fix github action 2023-09-05 21:21:08 +10:00
Anton Hvornum 10fca1611d
Added some debug output to see why the locales check errors out on no bash script (#1931) 2023-07-17 09:34:10 +02:00
codefiles 0785b35eb4
Bump Python in workflow (#1863)
* Bump Python in workflow

* Attempting fix to build runner failing

* Appended --break-system-packages since the new changes was introduced in Arch

---------

Co-authored-by: Anton Hvornum <anton@hvornum.se>
2023-06-28 14:51:07 +02:00
Daniel Girtler 21bf87f234
Fix workflows and checks (#1872)
* Update translation workflow

* Fix broken checks

---------

Co-authored-by: Daniel Girtler <girtler.daniel@gmail.com>
2023-06-21 09:50:28 +02:00
Daniel Girtler 92b0d0f833
Fixes 1861 (#1870)
* Fix translation files

* Add github action

* Update

* Update

---------

Co-authored-by: Daniel Girtler <girtler.daniel@gmail.com>
2023-06-14 00:26:15 +02:00
Daniel Girtler 89cefb9a1c
Cleanup imports and unused code (#1801)
* Cleanup imports and unused code

* Update build check

* Keep deprecation exception

* Simplify logging

---------

Co-authored-by: Daniel Girtler <girtler.daniel@gmail.com>
2023-05-11 18:30:09 +02:00
Daniel Girtler ec4ecbcb7a
Full mypy compliance and small fixes (#1777)
* Fix mypy compliance

---------

Co-authored-by: Daniel Girtler <girtler.daniel@gmail.com>
2023-05-03 16:36:46 +02:00
Daniel Girtler 00b0ae7ba4
PyParted and a large rewrite of the underlying partitioning (#1604)
* Invert mypy files

* Add optional pre-commit hooks

* New profile structure

* Serialize profiles

* Use profile instead of classmethod

* Custom profile setup

* Separator between back

* Support profile import via url

* Move profiles module

* Refactor files

* Remove symlink

* Add user to docker group

* Update schema description

* Handle list services

* mypy fixes

* mypy fixes

* Rename profilesv2 to profiles

* flake8

* mypy again

* Support selecting DM

* Fix mypy

* Cleanup

* Update greeter setting

* Update schema

* Revert toml changes

* Poc external dependencies

* Dependency support

* New encryption menu

* flake8

* Mypy and flake8

* Unify lsblk command

* Update bootloader configuration

* Git hooks

* Fix import

* Pyparted

* Remove custom font setting

* flake8

* Remove default preview

* Manual partitioning menu

* Update structure

* Disk configuration

* Update filesystem

* luks2 encryption

* Everything works until installation

* Btrfsutil

* Btrfs handling

* Update btrfs

* Save encryption config

* Fix pipewire issue

* Update mypy version

* Update all pre-commit

* Update package versions

* Revert audio/pipewire

* Merge master PRs

* Add master changes

* Merge master changes

* Small renaming

* Pull master changes

* Reset disk enc after disk config change

* Generate locals

* Update naming

* Fix imports

* Fix broken sync

* Fix pre selection on table menu

* Profile menu

* Update profile

* Fix post_install

* Added python-pyparted to PKGBUILD, this requires [testing] to be enabled in order to run makepkg. Package still works via python -m build etc.

* Swaped around some setuptools logic in pyproject

Since we define `package-data` and `packages` there should be no need for:
```
[tool.setuptools.packages.find]
where = ["archinstall", "archinstall.*"]
```

* Removed pyproject collisions. Duplicate definitions.

* Made sure pyproject.toml includes languages

* Add example and update README

* Fix pyproject issues

* Generate locale

* Refactor imports

* Simplify imports

* Add profile description and package examples

* Align code

* Fix mypy

* Simplify imports

* Fix saving config

* Fix wrong luks merge

* Refactor installation

* Fix cdrom device loading

* Fix wrongly merged code

* Fix imports and greeter

* Don't terminate on partprobe error

* Use specific path on partprobe from luks

* Update archinstall/lib/disk/device_model.py

Co-authored-by: codefiles <11915375+codefiles@users.noreply.github.com>

* Update archinstall/lib/disk/device_model.py

Co-authored-by: codefiles <11915375+codefiles@users.noreply.github.com>

* Update github workflow to test archinstall installation

* Update sway merge

* Generate locales

* Update workflow

---------

Co-authored-by: Daniel Girtler <girtler.daniel@gmail.com>
Co-authored-by: Anton Hvornum <anton@hvornum.se>
Co-authored-by: Anton Hvornum <anton.feeds+github@gmail.com>
Co-authored-by: codefiles <11915375+codefiles@users.noreply.github.com>
2023-04-19 12:55:42 +02:00
Anton Hvornum 2a17ba9833
Replacing flit (#1655)
* Replacing flit

* Removed python-flit as a dependency

* Removed note about flit

* Removed flit references in pyproject.toml
2023-02-27 23:51:22 +01:00
Daniel Girtler c3862c5779
New encryption menu (#1520)
* New encryption menu

Co-authored-by: Daniel Girtler <girtler.daniel@gmail.com>
Co-authored-by: Anton Hvornum <anton@hvornum.se>
2022-11-11 09:40:05 +01:00