Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

Enrolling fido2 mid install

Open Beginner friendly
#4,603 0 comments 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 1 day

Nobody has claimed this yet.

Assessment

Difficulty
2/5
Estimated time
1-3 hours
Newbie friendliness
72/100
Issue type
Feature
Clarity
Clearly specified
Activity status
Quiet
Tech stack
python

Research direction

Start at the fido2_enroll entry point shown in the issue and inspect how SysCommandWorker currently handles the passphrase and security-token prompts. The work is done when enrollment pauses for explicit confirmation before proceeding and the user-presence requirement is clearly visible during installation.

Written by the indexing model from the issue text.

Description

Basically currently when using fido2 to enroll:

I believe we should add a small input pause before...

	@staticmethod
	def fido2_enroll(hsm_device: Fido2Device, dev_path: Path, password: Password) -> None:
		worker = SysCommandWorker(f'systemd-cryptenroll --fido2-device={hsm_device.path} {dev_path}', peek_output=True)
		pw_inputted = False
		pin_inputted = False

		info('You might need to touch the FIDO2 device to unlock it if no prompt comes up after 3 seconds')

		while worker.is_alive():
			if pw_inputted is False:
				if bytes(f'please enter current passphrase for disk {dev_path}', 'UTF-8') in worker._trace_log.lower():
					worker.write(bytes(password.plaintext, 'UTF-8'))
					pw_inputted = True
			elif pin_inputted is False:
				if bytes('please enter security token pin', 'UTF-8') in worker._trace_log.lower():
					worker.write(bytes(getpass.getpass(' '), 'UTF-8'))
					pin_inputted = True

Instead would prompt: ready to enroll {hsm_device.path} ? press any key to continue...
First that could reduce the while usage which is fragile, and also make it explicit since user presense is needed at this stage of the automated install (easy to miss in large output).

Dominant language
Python
Stars
8.5k
Forks
774
Avg merge
3d 21h
Merged PRs (30d)
30

Getting set up

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from archlinux/archinstall

All issues in archlinux/archinstall

Similar issues

More Python issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.