Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Maintain same ownership when formatting #248

Merged
merged 1 commit into from
Sep 3, 2024
Merged

Maintain same ownership when formatting #248

merged 1 commit into from
Sep 3, 2024

Conversation

infinisil
Copy link
Member

@infinisil infinisil commented Aug 29, 2024

Fixes #73

$ cabal install --installdir=$PWD/bin
Wrote tarball sdist to
/home/tweagysil/src/nixfmt/dist-newstyle/sdist/nixfmt-0.6.0.tar.gz
Resolving dependencies...
Symlinking 'nixfmt' to '/home/tweagysil/src/nixfmt/bin/nixfmt'

$ echo '1  +  1' > a.nix
$ sudo chown root:root a.nix

$ bin/nixfmt a.nix
nixfmt: ./.a.nix357406-0.atomic: setOwnerAndGroup: permission denied (Operation not permitted)
$ cat a.nix
1  +  1
$ stat -c "%U:%G" a.nix
root:root

$ sudo bin/nixfmt a.nix
$ cat a.nix
1 + 1
$ stat -c "%U:%G" a.nix
root:root


This work is sponsored by Antithesis

Copy link

github-actions bot commented Aug 29, 2024

Nixpkgs diff

@infinisil infinisil merged commit 3e8eef7 into master Sep 3, 2024
2 checks passed
@infinisil infinisil deleted the atomic-chown branch September 3, 2024 18:31
@nixos-discourse
Copy link

This pull request has been mentioned on NixOS Discourse. There might be relevant details there:

https://discourse.nixos.org/t/formatting-team-meeting-2024-09-03/51584/1

infinisil added a commit to tweag/nixpkgs that referenced this pull request Nov 28, 2024
Changes:
- NixOS/nixfmt#233 and
  NixOS/nixfmt#257 fix the poor formatting of
  `mkRenamedOptionModule` code.
- NixOS/nixfmt#240 deprecates passing
  directories as CLI args, instead using
  [treefmt](https://github.com/numtide/treefmt) is recommended.
- NixOS/nixfmt#246 fixes some problems with
  floats.
- NixOS/nixfmt#247 fixes trailing spaces not
  always being stripped.
- NixOS/nixfmt#248 ensures that the ownership of
  files isn't changed when formatting them.
- NixOS/nixfmt#249 fixes some poor formatting of
  some attribute selections.
- NixOS/nixfmt#262 ensures that 64-bit integers
  don't get trimmed on 32-bit platforms.
- NixOS/nixfmt#264 adds a `--filename` flag to
  allow setting the filename in error messages when formatting standard input.
- NixOS/nixfmt#243 added
  [installation and integration docs](https://github.com/NixOS/nixfmt?tab=readme-ov-file#installation-and-usage-instructions).
- NixOS/nixfmt#238 created a
  [`.pre-commit-hooks.yaml`](https://github.com/NixOS/nixfmt/blob/master/.pre-commit-hooks.yaml)
  for integration with [pre-commit](https://pre-commit.com/)
dasJ pushed a commit to NixOS/nixpkgs that referenced this pull request Nov 28, 2024
Changes:
- NixOS/nixfmt#233 and
  NixOS/nixfmt#257 fix the poor formatting of
  `mkRenamedOptionModule` code.
- NixOS/nixfmt#240 deprecates passing
  directories as CLI args, instead using
  [treefmt](https://github.com/numtide/treefmt) is recommended.
- NixOS/nixfmt#246 fixes some problems with
  floats.
- NixOS/nixfmt#247 fixes trailing spaces not
  always being stripped.
- NixOS/nixfmt#248 ensures that the ownership of
  files isn't changed when formatting them.
- NixOS/nixfmt#249 fixes some poor formatting of
  some attribute selections.
- NixOS/nixfmt#262 ensures that 64-bit integers
  don't get trimmed on 32-bit platforms.
- NixOS/nixfmt#264 adds a `--filename` flag to
  allow setting the filename in error messages when formatting standard input.
- NixOS/nixfmt#243 added
  [installation and integration docs](https://github.com/NixOS/nixfmt?tab=readme-ov-file#installation-and-usage-instructions).
- NixOS/nixfmt#238 created a
  [`.pre-commit-hooks.yaml`](https://github.com/NixOS/nixfmt/blob/master/.pre-commit-hooks.yaml)
  for integration with [pre-commit](https://pre-commit.com/)
github-actions bot pushed a commit to NixOS/nixpkgs that referenced this pull request Nov 28, 2024
Changes:
- NixOS/nixfmt#233 and
  NixOS/nixfmt#257 fix the poor formatting of
  `mkRenamedOptionModule` code.
- NixOS/nixfmt#240 deprecates passing
  directories as CLI args, instead using
  [treefmt](https://github.com/numtide/treefmt) is recommended.
- NixOS/nixfmt#246 fixes some problems with
  floats.
- NixOS/nixfmt#247 fixes trailing spaces not
  always being stripped.
- NixOS/nixfmt#248 ensures that the ownership of
  files isn't changed when formatting them.
- NixOS/nixfmt#249 fixes some poor formatting of
  some attribute selections.
- NixOS/nixfmt#262 ensures that 64-bit integers
  don't get trimmed on 32-bit platforms.
- NixOS/nixfmt#264 adds a `--filename` flag to
  allow setting the filename in error messages when formatting standard input.
- NixOS/nixfmt#243 added
  [installation and integration docs](https://github.com/NixOS/nixfmt?tab=readme-ov-file#installation-and-usage-instructions).
- NixOS/nixfmt#238 created a
  [`.pre-commit-hooks.yaml`](https://github.com/NixOS/nixfmt/blob/master/.pre-commit-hooks.yaml)
  for integration with [pre-commit](https://pre-commit.com/)

(cherry picked from commit edd47f7)
mkg20001 pushed a commit to mkg20001/nixpkgs that referenced this pull request Nov 30, 2024
Changes:
- NixOS/nixfmt#233 and
  NixOS/nixfmt#257 fix the poor formatting of
  `mkRenamedOptionModule` code.
- NixOS/nixfmt#240 deprecates passing
  directories as CLI args, instead using
  [treefmt](https://github.com/numtide/treefmt) is recommended.
- NixOS/nixfmt#246 fixes some problems with
  floats.
- NixOS/nixfmt#247 fixes trailing spaces not
  always being stripped.
- NixOS/nixfmt#248 ensures that the ownership of
  files isn't changed when formatting them.
- NixOS/nixfmt#249 fixes some poor formatting of
  some attribute selections.
- NixOS/nixfmt#262 ensures that 64-bit integers
  don't get trimmed on 32-bit platforms.
- NixOS/nixfmt#264 adds a `--filename` flag to
  allow setting the filename in error messages when formatting standard input.
- NixOS/nixfmt#243 added
  [installation and integration docs](https://github.com/NixOS/nixfmt?tab=readme-ov-file#installation-and-usage-instructions).
- NixOS/nixfmt#238 created a
  [`.pre-commit-hooks.yaml`](https://github.com/NixOS/nixfmt/blob/master/.pre-commit-hooks.yaml)
  for integration with [pre-commit](https://pre-commit.com/)
mkg20001 pushed a commit to mkg20001/nixpkgs that referenced this pull request Dec 2, 2024
Changes:
- NixOS/nixfmt#233 and
  NixOS/nixfmt#257 fix the poor formatting of
  `mkRenamedOptionModule` code.
- NixOS/nixfmt#240 deprecates passing
  directories as CLI args, instead using
  [treefmt](https://github.com/numtide/treefmt) is recommended.
- NixOS/nixfmt#246 fixes some problems with
  floats.
- NixOS/nixfmt#247 fixes trailing spaces not
  always being stripped.
- NixOS/nixfmt#248 ensures that the ownership of
  files isn't changed when formatting them.
- NixOS/nixfmt#249 fixes some poor formatting of
  some attribute selections.
- NixOS/nixfmt#262 ensures that 64-bit integers
  don't get trimmed on 32-bit platforms.
- NixOS/nixfmt#264 adds a `--filename` flag to
  allow setting the filename in error messages when formatting standard input.
- NixOS/nixfmt#243 added
  [installation and integration docs](https://github.com/NixOS/nixfmt?tab=readme-ov-file#installation-and-usage-instructions).
- NixOS/nixfmt#238 created a
  [`.pre-commit-hooks.yaml`](https://github.com/NixOS/nixfmt/blob/master/.pre-commit-hooks.yaml)
  for integration with [pre-commit](https://pre-commit.com/)
mkg20001 pushed a commit to mkg20001/nixpkgs that referenced this pull request Dec 4, 2024
Changes:
- NixOS/nixfmt#233 and
  NixOS/nixfmt#257 fix the poor formatting of
  `mkRenamedOptionModule` code.
- NixOS/nixfmt#240 deprecates passing
  directories as CLI args, instead using
  [treefmt](https://github.com/numtide/treefmt) is recommended.
- NixOS/nixfmt#246 fixes some problems with
  floats.
- NixOS/nixfmt#247 fixes trailing spaces not
  always being stripped.
- NixOS/nixfmt#248 ensures that the ownership of
  files isn't changed when formatting them.
- NixOS/nixfmt#249 fixes some poor formatting of
  some attribute selections.
- NixOS/nixfmt#262 ensures that 64-bit integers
  don't get trimmed on 32-bit platforms.
- NixOS/nixfmt#264 adds a `--filename` flag to
  allow setting the filename in error messages when formatting standard input.
- NixOS/nixfmt#243 added
  [installation and integration docs](https://github.com/NixOS/nixfmt?tab=readme-ov-file#installation-and-usage-instructions).
- NixOS/nixfmt#238 created a
  [`.pre-commit-hooks.yaml`](https://github.com/NixOS/nixfmt/blob/master/.pre-commit-hooks.yaml)
  for integration with [pre-commit](https://pre-commit.com/)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: Done
Development

Successfully merging this pull request may close these issues.

Nixfmt does not persist file ownership
4 participants