<feed xmlns='http://www.w3.org/2005/Atom'>
<title>deploy-rs/src, branch master</title>
<subtitle>forked from https://github.com/serokell/deploy-rs/
</subtitle>
<link rel='alternate' type='text/html' href='https://stuebinm.eu/git/deploy-rs/'/>
<entry>
<title>[#201] Deduce profile directory during activation</title>
<updated>2023-09-12T10:00:17+00:00</updated>
<author>
<name>Roman Melnikov</name>
</author>
<published>2023-09-06T12:54:22+00:00</published>
<link rel='alternate' type='text/html' href='https://stuebinm.eu/git/deploy-rs/commit/?id=f26e888c41d28107de9dbc5b4e1553c1dfcf83db'/>
<id>f26e888c41d28107de9dbc5b4e1553c1dfcf83db</id>
<content type='text'>
Problem: Since https://github.com/NixOS/nix/pull/5226 nix profiles for
users are stored in 'XDG_STATE_HOME' or 'HOME' directory. However,
'deploy-rs' still expects profiles to be present in
'/nix/var/nix/profiles/per-user'. As a result, an attempt to deploy a
profile with newer nix may fail with an error about non-existing files.

Solution: Instead of deducing the profile path prior to ssh'ing and
actual activation, deduce the path to the profile during as a part of
'activate-rs' invocation.

Now if the profile path is not specified explicitly as an attribute in
profile within the deploy flake, the path to the profile is determined
based on the user to which the profile belongs and on the values of
'XDG_STATE_HOME' and 'HOME' variables.
Additionally, if the old profile directory (in
'/nix/var/nix/profiles/per-user') for a given user already exists, it is
used instead for the sake of backward compatibility.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Problem: Since https://github.com/NixOS/nix/pull/5226 nix profiles for
users are stored in 'XDG_STATE_HOME' or 'HOME' directory. However,
'deploy-rs' still expects profiles to be present in
'/nix/var/nix/profiles/per-user'. As a result, an attempt to deploy a
profile with newer nix may fail with an error about non-existing files.

Solution: Instead of deducing the profile path prior to ssh'ing and
actual activation, deduce the path to the profile during as a part of
'activate-rs' invocation.

Now if the profile path is not specified explicitly as an attribute in
profile within the deploy flake, the path to the profile is determined
based on the user to which the profile belongs and on the values of
'XDG_STATE_HOME' and 'HOME' variables.
Additionally, if the old profile directory (in
'/nix/var/nix/profiles/per-user') for a given user already exists, it is
used instead for the sake of backward compatibility.
</pre>
</div>
</content>
</entry>
<entry>
<title>actually merge confirm_timeout into merged_settings</title>
<updated>2023-06-08T08:33:01+00:00</updated>
<author>
<name>Artemis Everfree</name>
</author>
<published>2023-06-08T08:33:01+00:00</published>
<link rel='alternate' type='text/html' href='https://stuebinm.eu/git/deploy-rs/commit/?id=f28f8c6063dfdee3720a8841cc857df2c911dec8'/>
<id>f28f8c6063dfdee3720a8841cc857df2c911dec8</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge pull request #203 from serokell/rvem/#202-add-workaround-for-derivations-store-paths-interpolation</title>
<updated>2023-05-08T03:05:03+00:00</updated>
<author>
<name>Roman Melnikov</name>
</author>
<published>2023-05-08T03:05:03+00:00</published>
<link rel='alternate' type='text/html' href='https://stuebinm.eu/git/deploy-rs/commit/?id=64160276cd6569694131ed8864d4d35470a84ec3'/>
<id>64160276cd6569694131ed8864d4d35470a84ec3</id>
<content type='text'>
[#202] Provide '^out' suffix for deriver on newer nix</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
[#202] Provide '^out' suffix for deriver on newer nix</pre>
</div>
</content>
</entry>
<entry>
<title>fixup! [#202] Provide '^out' suffix for deriver on newer nix</title>
<updated>2023-05-05T07:04:26+00:00</updated>
<author>
<name>Roman Melnikov</name>
</author>
<published>2023-05-05T07:04:26+00:00</published>
<link rel='alternate' type='text/html' href='https://stuebinm.eu/git/deploy-rs/commit/?id=c17d71fadf9a124ad6dd6af91944dbc2f0a60496'/>
<id>c17d71fadf9a124ad6dd6af91944dbc2f0a60496</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>[#202] Provide '^out' suffix for deriver on newer nix</title>
<updated>2023-05-05T06:57:31+00:00</updated>
<author>
<name>Roman Melnikov</name>
</author>
<published>2023-04-18T07:28:39+00:00</published>
<link rel='alternate' type='text/html' href='https://stuebinm.eu/git/deploy-rs/commit/?id=e3bc066bd8f2bcf8433616b7610ef59ba04b679e'/>
<id>e3bc066bd8f2bcf8433616b7610ef59ba04b679e</id>
<content type='text'>
Problem: Since 2.15 nix no longer reference '.drv' as derivation
outputs. At the same time, nix before '2.13' doesn't support '.drv'
special suffix handling.

Solution: Provide '^out' suffix for the profile deriver in case
'nix path-info &lt;...&gt;.drv' returns the same '&lt;...&gt;.drv' path.
In other cases either an error about the build result not being present
in the /nix/store is returned or an actual build result path is
returned.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Problem: Since 2.15 nix no longer reference '.drv' as derivation
outputs. At the same time, nix before '2.13' doesn't support '.drv'
special suffix handling.

Solution: Provide '^out' suffix for the profile deriver in case
'nix path-info &lt;...&gt;.drv' returns the same '&lt;...&gt;.drv' path.
In other cases either an error about the build result not being present
in the /nix/store is returned or an actual build result path is
returned.
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge pull request #205 from serokell/rvem/improve-temp-path-handling</title>
<updated>2023-05-05T02:53:03+00:00</updated>
<author>
<name>Roman Melnikov</name>
</author>
<published>2023-05-05T02:53:03+00:00</published>
<link rel='alternate' type='text/html' href='https://stuebinm.eu/git/deploy-rs/commit/?id=6b0b6a1c2527e8b1ef370a308b6ef8903004ac47'/>
<id>6b0b6a1c2527e8b1ef370a308b6ef8903004ac47</id>
<content type='text'>
[Chore] Handle 'temp_path' as an actual 'Path' instead of 'String'</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
[Chore] Handle 'temp_path' as an actual 'Path' instead of 'String'</pre>
</div>
</content>
</entry>
<entry>
<title>[Chore] Handle 'temp_path' as an actual 'Path' instead of 'String'</title>
<updated>2023-04-20T07:13:13+00:00</updated>
<author>
<name>Roman Melnikov</name>
</author>
<published>2023-04-19T09:46:43+00:00</published>
<link rel='alternate' type='text/html' href='https://stuebinm.eu/git/deploy-rs/commit/?id=784e9ee24d977c99dcb5ba5aef81dae48cb899fb'/>
<id>784e9ee24d977c99dcb5ba5aef81dae48cb899fb</id>
<content type='text'>
Problem: 'temp_path' and 'lock_path' are handled as 'String'.
This can be a problem when the 'temp_path' directory is a symlink
on the target system, e.g. this is the case with the default
'/tmp' and macOS, where this directory is actually a symlink to '/private/tmp'.

Solution: Handle 'temp_path' and 'lock_path' as actual Paths.
Also, canonicalize 'temp_path' to avoid canary file path mismatches when checking
filesystem events.

As a side effect, also update the 'notify' dependency to the latest stable version.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Problem: 'temp_path' and 'lock_path' are handled as 'String'.
This can be a problem when the 'temp_path' directory is a symlink
on the target system, e.g. this is the case with the default
'/tmp' and macOS, where this directory is actually a symlink to '/private/tmp'.

Solution: Handle 'temp_path' and 'lock_path' as actual Paths.
Also, canonicalize 'temp_path' to avoid canary file path mismatches when checking
filesystem events.

As a side effect, also update the 'notify' dependency to the latest stable version.
</pre>
</div>
</content>
</entry>
<entry>
<title>[#197] Fix hostname overriding for remote builds</title>
<updated>2023-04-14T05:44:09+00:00</updated>
<author>
<name>Roman Melnikov</name>
</author>
<published>2023-04-14T05:44:09+00:00</published>
<link rel='alternate' type='text/html' href='https://stuebinm.eu/git/deploy-rs/commit/?id=55aac55cfafec93938e19a6b475142d81110b3d4'/>
<id>55aac55cfafec93938e19a6b475142d81110b3d4</id>
<content type='text'>
Problem: '--hostname' is ignored when used with '--remote-build'.

Solution: Account for 'data.deploy_data.cmd_overrides.hostname' when
building a profile remotely.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Problem: '--hostname' is ignored when used with '--remote-build'.

Solution: Account for 'data.deploy_data.cmd_overrides.hostname' when
building a profile remotely.
</pre>
</div>
</content>
</entry>
<entry>
<title>Build every profile first, then push (#158)</title>
<updated>2022-12-29T15:19:59+00:00</updated>
<author>
<name>2xsaiko</name>
</author>
<published>2022-12-29T15:19:59+00:00</published>
<link rel='alternate' type='text/html' href='https://stuebinm.eu/git/deploy-rs/commit/?id=a5619f5660a00f58c2b7c16d89058e92327ac9b8'/>
<id>a5619f5660a00f58c2b7c16d89058e92327ac9b8</id>
<content type='text'>
Try to build everything first before pushing to remotes. Since the build
is more likely to fail than the upload, if there is an error the deployment
will fail sooner and before uploading any potentially unusable configuration.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Try to build everything first before pushing to remotes. Since the build
is more likely to fail than the upload, if there is an error the deployment
will fail sooner and before uploading any potentially unusable configuration.</pre>
</div>
</content>
</entry>
<entry>
<title>Merge pull request #176 from Ma27/activate-boot</title>
<updated>2022-12-29T14:25:47+00:00</updated>
<author>
<name>Alexander Bantyev</name>
</author>
<published>2022-12-29T14:25:47+00:00</published>
<link rel='alternate' type='text/html' href='https://stuebinm.eu/git/deploy-rs/commit/?id=3878dd40f622d327ee912e9b4077909834261772'/>
<id>3878dd40f622d327ee912e9b4077909834261772</id>
<content type='text'>
Add new activation strategy `boot` as equivalent to `nixos-rebuild boot`</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Add new activation strategy `boot` as equivalent to `nixos-rebuild boot`</pre>
</div>
</content>
</entry>
</feed>
