<feed xmlns='http://www.w3.org/2005/Atom'>
<title>mirrors/nitrocli, branch devel-20210110</title>
<subtitle>A command line tool for interacting with Nitrokey devices (GitHub mirror)
</subtitle>
<id>https://git.ireas.org/mirrors/nitrocli/atom?h=devel-20210110</id>
<link rel='self' href='https://git.ireas.org/mirrors/nitrocli/atom?h=devel-20210110'/>
<link rel='alternate' type='text/html' href='https://git.ireas.org/mirrors/nitrocli/'/>
<updated>2020-12-01T03:50:27Z</updated>
<entry>
<title>Rename intra_doc_link_resolution_failure lint</title>
<updated>2020-12-01T03:50:27Z</updated>
<author>
<name>Daniel Mueller</name>
<email>deso@posteo.net</email>
</author>
<published>2020-12-01T03:50:27Z</published>
<link rel='alternate' type='text/html' href='https://git.ireas.org/mirrors/nitrocli/commit/?id=64dc5bcbcc703d72fc57f0675492b13ac7aeaba9'/>
<id>urn:sha1:64dc5bcbcc703d72fc57f0675492b13ac7aeaba9</id>
<content type='text'>
The intra_doc_link_resolution_failure lint has been renamed to
broken_intra_doc_links in recent versions of Rust. With this change we
update it accordingly in our list of lints to use for the crate. Because
our CI tests against the minimum supported Rust version, which does not
yet understand the new lint, we configure it to allow unknown lints.
</content>
</entry>
<entry>
<title>Display available extensions in the help text</title>
<updated>2020-10-12T00:07:08Z</updated>
<author>
<name>Daniel Mueller</name>
<email>deso@posteo.net</email>
</author>
<published>2020-10-04T16:46:31Z</published>
<link rel='alternate' type='text/html' href='https://git.ireas.org/mirrors/nitrocli/commit/?id=f65b150049ec9dc5ff2500d7e54c464d530f2e66'/>
<id>urn:sha1:f65b150049ec9dc5ff2500d7e54c464d530f2e66</id>
<content type='text'>
With recent changes we are able to execute user-provided extensions
through the program. However, discoverability is arguably lacking,
because nitrocli provides no insight into what extensions are available
to begin with.
This patch changes this state of affairs by listing available extensions
in the help text.
</content>
</entry>
<entry>
<title>Introduce support for user-provided extensions</title>
<updated>2020-10-12T00:07:07Z</updated>
<author>
<name>Daniel Mueller</name>
<email>deso@posteo.net</email>
</author>
<published>2020-08-26T02:04:50Z</published>
<link rel='alternate' type='text/html' href='https://git.ireas.org/mirrors/nitrocli/commit/?id=8cf63c6790192c30c81294e7a940d470bf061cbf'/>
<id>urn:sha1:8cf63c6790192c30c81294e7a940d470bf061cbf</id>
<content type='text'>
This change introduces support for discovering and executing
user-provided extensions to the program. Extensions are useful for
allowing users to provide additional functionality on top of the
nitrocli proper. Implementation wise we stick to an approach similar to
git or cargo subcommands in nature: we search the directories listed in
the PATH environment variable for a file that starts with "nitrocli-",
followed by the extension name. This file is then executed. It is
assumed that the extension recognizes (or at least not prohibits) the
following arguments: --nitrocli (providing the path to the nitrocli
binary), --model (with the model passed to the main program), and
--verbosity (the verbosity level).
</content>
</entry>
<entry>
<title>Subdivide environment variable section in manual</title>
<updated>2020-09-26T21:01:25Z</updated>
<author>
<name>Daniel Mueller</name>
<email>deso@posteo.net</email>
</author>
<published>2020-09-26T21:01:25Z</published>
<link rel='alternate' type='text/html' href='https://git.ireas.org/mirrors/nitrocli/commit/?id=330142e68cac0116babbf2fd64fc9ff0fde132c0'/>
<id>urn:sha1:330142e68cac0116babbf2fd64fc9ff0fde132c0</id>
<content type='text'>
This change reorders and subdivides the Environment section we have in
the manual. The first subsection in it is about variables pertaining the
program configuration and the second one about those influencing
password &amp; PIN entry. Having these dedicated subsections will
subsequently allow us to reference them in follow up changes. The
reordering is meant to reflect the more general applicability that
configuration variables have.
</content>
</entry>
<entry>
<title>Rename numlock, capslock, scrollock options</title>
<updated>2020-10-11T23:26:54Z</updated>
<author>
<name>Robin Krahl</name>
<email>robin.krahl@ireas.org</email>
</author>
<published>2020-09-29T17:18:56Z</published>
<link rel='alternate' type='text/html' href='https://git.ireas.org/mirrors/nitrocli/commit/?id=aaf0286994fcffa8dc81a2569ad70ec6fd7c9b90'/>
<id>urn:sha1:aaf0286994fcffa8dc81a2569ad70ec6fd7c9b90</id>
<content type='text'>
This patch renames the options for the config set command:
	--numlock	==&gt;	--num-lock
	--capslock	==&gt;	--caps-lock
	--scrolllock	==&gt;	--scroll-lock
	--no-numlock	==&gt;	--no-num-lock
	--no-capslock	==&gt;	--no-caps-lock
	--no-scrolllock	==&gt;	--no-scroll-lock

The original naming was based on a typo in nitrokey-rs (scrollock vs.
scrolllock). Also, the typical spelling for the keys is Num Lock, Caps
Lock and Scroll Lock, so using a hyphen is a more natural.
</content>
</entry>
<entry>
<title>Remove DeviceModel::as_user_facing_str</title>
<updated>2020-10-11T22:02:49Z</updated>
<author>
<name>Robin Krahl</name>
<email>robin.krahl@ireas.org</email>
</author>
<published>2020-09-29T17:07:05Z</published>
<link rel='alternate' type='text/html' href='https://git.ireas.org/mirrors/nitrocli/commit/?id=6be92c8425dd5285c16a1722aa95683ea146cf46'/>
<id>urn:sha1:6be92c8425dd5285c16a1722aa95683ea146cf46</id>
<content type='text'>
This patch removes the unused DeviceModel::as_user_facing_str method.
The device model is only used for the argument handling.  When printing
messages for the user, we always use nitrokey::Model.  Its Display
implementation already prints the model in an appropriate format.
</content>
</entry>
<entry>
<title>Support Librem Key</title>
<updated>2020-10-11T22:02:46Z</updated>
<author>
<name>Robin Krahl</name>
<email>robin.krahl@ireas.org</email>
</author>
<published>2020-09-25T00:09:18Z</published>
<link rel='alternate' type='text/html' href='https://git.ireas.org/mirrors/nitrocli/commit/?id=23f455ab2e36a019ec62450c5b40949663395963'/>
<id>urn:sha1:23f455ab2e36a019ec62450c5b40949663395963</id>
<content type='text'>
This patch adds the librem device model for the Librem Key.
</content>
</entry>
<entry>
<title>Update nitrokey to v0.8.0</title>
<updated>2020-10-11T21:58:35Z</updated>
<author>
<name>Robin Krahl</name>
<email>robin.krahl@ireas.org</email>
</author>
<published>2020-09-25T00:06:00Z</published>
<link rel='alternate' type='text/html' href='https://git.ireas.org/mirrors/nitrocli/commit/?id=6fce98ec044241abd1d0f54dca307af6cd9f648f'/>
<id>urn:sha1:6fce98ec044241abd1d0f54dca307af6cd9f648f</id>
<content type='text'>
This patch updates the nitrokey dependency to version 0.8.0 and applies
all breaking changes (Config fields renaming, DeviceWrapper and Model
non-exhaustiveness, changed Display implementation for Model).
</content>
</entry>
<entry>
<title>Update man page after change to base32 default OTP format</title>
<updated>2020-10-04T13:51:10Z</updated>
<author>
<name>Daniel Mueller</name>
<email>deso@posteo.net</email>
</author>
<published>2020-10-04T13:51:10Z</published>
<link rel='alternate' type='text/html' href='https://git.ireas.org/mirrors/nitrocli/commit/?id=dc99d8ffabcd51bc549981998c5d53b1fba789e9'/>
<id>urn:sha1:dc99d8ffabcd51bc549981998c5d53b1fba789e9</id>
<content type='text'>
When we switched the default OTP format from hexadecimal to base32 we
missed that the manual was providing examples of the otp set command
that were implicitly making use of the default format -- leading to a
mismatch between what the example is meant to do and what it actually
does.
This change fixes this oversight in the manual by adjusting the examples
accordingly.
</content>
</entry>
<entry>
<title>Shorten some error handling paths</title>
<updated>2020-09-30T03:31:50Z</updated>
<author>
<name>Daniel Mueller</name>
<email>deso@posteo.net</email>
</author>
<published>2020-09-30T03:31:50Z</published>
<link rel='alternate' type='text/html' href='https://git.ireas.org/mirrors/nitrocli/commit/?id=1229dd36306ac43480fcf2bfb91aa47d41ea5e77'/>
<id>urn:sha1:1229dd36306ac43480fcf2bfb91aa47d41ea5e77</id>
<content type='text'>
When we originally switched over to using anyhow for error handling, we
evidently missed to take advantage of its context support in a couple of
error paths. The result was that we ended up with rather long winded
  &gt; result.ok_or_else(|| anyhow::anyhow!(...))
constructs.
This change shortens them, making use of the anyhow::Context trait.
</content>
</entry>
</feed>
