1
0
Fork 0
mirror of https://github.com/LnL7/nix-darwin.git synced 2025-03-05 16:27:03 +00:00
Commit graph

349 commits

Author SHA1 Message Date
Samuel Tam
4141697ed2
checks.nix: disable verifyBuildUsers for auto-allocate-uids 2024-06-23 15:14:48 +08:00
Emily
36a15e8c6c write-text: remove support for copy
This is a huge anti‐declarative footgun; `copy` files cannot
distinguish if a previous version is managed by nix-darwin, so they
can’t check the hash, so they’re prone to destroying data, and
copied files are not deleted when they’re removed from the system
configuration, which led to a security bug. Nothing else in‐tree
was using this functionality, so let’s make sure it doesn’t
cause any more bugs.
2024-06-15 12:15:13 +01:00
Emily
b833d4a32d ssh: use symlinks for authorizedKeys options
As explained in the changelog and activation check, the previous
implementation had a nasty security bug that made removing a user’s
authorized keys effectively a no‐op.
2024-06-15 12:15:13 +01:00
jonny
cb198382c2
feat: add defaults screencapture show-thumbnail option 2024-06-06 17:40:24 +01:00
Henrique Goncalves
9639c5509b
Update modules/system/defaults/NSGlobalDomain.nix
Co-authored-by: Michael Hoang <Enzime@users.noreply.github.com>
2024-05-25 03:14:18 -03:00
Henrique Goncalves
2e0f9a9e50
Update NSGlobalDomain.nix 2024-05-23 16:56:43 -03:00
Henrique Goncalves
0e5fc0028b
Update NSGlobalDomain.nix 2024-05-23 16:50:15 -03:00
Henrique Goncalves
120e085d1a
Update NSGlobalDomain.nix 2024-05-23 16:42:31 -03:00
Henrique Goncalves
6cbe6bc2da
Update trackpad.nix 2024-05-23 16:40:17 -03:00
Ricardo Pinto
93913d14a3
Add file or directory tile to Dock persistent others 2024-05-15 07:49:00 +01:00
techknowlogick
de20ea4882
remove final lib.mddoc 2024-05-16 12:48:56 -04:00
Ricardo Pinto
457a5d9952
Add persistent others to dock 2024-05-13 13:46:54 +01:00
Michael Hoang
9e7c20ffd0
Merge pull request #932 from wegank/mddoc-remove
treewide: remove lib.mdDoc
2024-04-20 02:24:36 +10:00
Weijia Wang
def1e23be8 treewide: remove lib.mdDoc 2024-04-19 04:05:50 +02:00
Jefferson Bledsoe
81f7aab5ed
Update ShowDate in menuExtraClock 2024-04-18 13:53:30 +00:00
Malo Bourgon
398510f601 Add nix.optimise module 2024-03-27 12:50:04 -07:00
Dylan Frankland
5c65cfb656 Add support for persistent-apps in dock 2024-03-03 21:32:17 -08:00
Dylan Frankland
b620e32a76 fix writing values with containers
Complex container values like `-array` have their own DSL which does not
allow specifying all data types. Instead of using the DSL use plist
fragments instead.
2024-03-02 22:29:56 -08:00
Michael Hoang
8a15cb36ff
Merge pull request #892 from Samasaur1/startup-chime
`system.startup.chime`: init
2024-03-02 13:57:42 +11:00
Sam
ee53e5785c
system.startup.chime: init 2024-02-29 22:23:40 -08:00
Sam
0363c18c37
system.nvram: init (internal) 2024-02-29 22:20:04 -08:00
Moritz Rumpf
ad98aebc0f Fix doc render problem
This fixes:
```
RuntimeError: can't render html in the presence of docbook
```
2024-02-29 08:45:54 +01:00
Moritz Rumpf
2ffb75f942 defaults: Add options for dragOnGesture feature
This is just a rebased version of https://github.com/LnL7/nix-darwin/pull/513

Credit to @2gn
2024-02-29 08:45:54 +01:00
Michael Hoang
0dd382b70c
Merge pull request #820 from mhumeSF/reduce-motion
Add `universalaccess.reduceMotion` option
2024-01-03 10:28:40 +00:00
Austin Horstman
f6cf46f7bc
GlobalPreferences: fix mouse scaling example 2023-12-29 14:09:38 -06:00
fortuneteller2k
9acb5b1adc Use native floats for mouse scaling 2023-12-27 11:30:04 +08:00
Michael Hoang
850eabce44 etc: add known hash for /etc/shells 2023-12-23 22:41:58 +11:00
Mike Hume
6c40798934 Adding reduce motion option 2023-12-01 15:10:10 -05:00
Felix Scheinost
39a412d47d Fix unbound variable etcProblems
I have another activationScript which traps errors. Currently `etcProblems` can be unbound.
2023-11-09 12:44:10 +01:00
Domen Kožar
8caf3af927
Create $out/darwin-version
This fixes backwards compatibility with code that expects it.
2023-09-19 09:54:27 +01:00
zowoq
b671517f28 finder: types.string -> types.str
`string` was changed from deprecation warning to error in c59c6b1c57
2023-08-10 13:46:47 +10:00
Michael Hoang
a96987cef4
Merge pull request #713 from pik694/master
Dock icon magnification settings
2023-07-26 09:44:43 +10:00
Piotr Żelazko
7ff10017ed
chore: apply CR suggestions 2023-07-25 18:40:30 +02:00
Piotr Żelazko
640331dfba docs: add magnification values range 2023-07-24 21:16:04 +02:00
Michael Hoang
0f9058e739
Merge pull request #733 from Enzime/version
Add `darwin-version` command
2023-07-23 18:16:13 +10:00
Emily
4eb1c549a9 etc: check for existing files during checks stage
This ensures that activation fails early if there are any `/etc` files
with unexpected state, rather than leaving the system half-activated.
2023-07-16 12:15:07 +01:00
Emily
c91c351943 etc: rename activation script variables 2023-07-16 12:13:27 +01:00
Michael Hoang
0dafe2170d Add darwin-version command 2023-07-14 23:06:46 +10:00
Michael Hoang
63af129cb5 etc: use .before-nix-darwin instead of .orig 2023-07-12 08:35:36 +10:00
Michael Hoang
cad8954f75 etc: fail if we can't add a file
Fixes #598
2023-07-11 18:59:05 +10:00
Michael Hoang
22620845fe readme: update with new flaky instructions 2023-07-11 18:59:05 +10:00
Michael Hoang
5288a72354 Allow flaky installation with darwin-rebuild 2023-07-11 18:59:05 +10:00
Marco Rebhan
b70656affa Add system.systemBuilderCommands and systemBuilderArgs
These are the equivalents of the
NixOS options with the same name, introduced in
d3ac0938a7.
Allows running extra commands while building the system configuration
output, for example to add extra files into the output directory,
and passing arguments to the system builder's mkDerivation.
2023-07-10 16:05:55 +02:00
Emily
f9724c4543 eval-config: rationalize handling of Nixpkgs
This is a big change that disentangles a lot of mistaken assumptions
about mixing multiple versions of Nixpkgs, treating external flake
inputs as gospel for the source of Nixpkgs and nix-darwin, etc.;
the end result should be much simpler conceptually, but it will be a
breaking change for anyone using `eval-config.nix` directly. Hopefully
that shouldn't be a big issue, as it is more of an internal API and
it's quite likely that existing uses may have been broken in the same
way the internal ones were.

It was previously easy to get into a state where your `lib` comes
from nix-darwin's `nixpkgs` input or a global channel and your
`pkgs` comes from another major version of Nixpkgs. This is pretty
fundamentally broken due to the coupling of `pkgs` to its corresponding
`lib`, but the brokenness was hidden much of the time until something
surfaced it. Now there is exactly one mandatory `lib` input to system
evaluation, and the handling of various additional options like `pkgs`
and `system` can be done modularly; maintaining backwards compatibility
with the previous calling convention is punted to the `default.nix`
and `lib.darwinSystem` entry points. `inputs` is no longer read by
nix-darwin or special in any way, merely a convention for user code,
and the argument is retained in the entry points only for backwards
compatibility.

All correct invocations of the entry points should keep working
after this change, and some previously-broken ones should be fixed
too. The documentation and template have been adjusted to show the
newly-recommended modular way of specifying various things, but no
deprecation warnings have been introduced yet by this change.

There is one potential, mostly cosmetic regression:
`system.nixpkgsRevision` and related options are less likely to be
set than before, in cases where it is not possible to determine the
origin of the package set. Setting `nixpkgs.source` explicitly will
make this work again, and I hope to look into sending changes upstream
to Nixpkgs to make `lib.trivial.revisionWithDefault` behave properly
under flakes, which would fix this regression and potentially allow
reducing some of the complexity.

Fixes: #669
2023-07-09 11:21:40 +01:00
Emily
51ba5e614a version: rewrite Git revision logic
We trust the version information from `nixpkgs.source` when `pkgs` was
constructed by the `nixpkgs` module or `nixpkgs.source` was explicitly
set by the configuration. Otherwise, we rely on Nixpkgs to report its
own version, which handles the same cases as the old logic and opens
the door to Nixpkgs automatically reporting the correct revision when
using flakes.
2023-07-09 07:26:23 +01:00
Emily
72b7e8668c version: default Git revision options to null
This allows for more uniform handling in the documentation generator,
and avoids lying about the Git reference being `master` internally.
2023-07-09 07:26:00 +01:00
Piotr Żelazko
8c1c48c87a
feat: add dock icon magnification settings 2023-06-27 16:44:16 +02:00
Emily
e65131e69c treewide: convert all option docs to Markdown
This process was automated by [my fork of `nix-doc-munge`]; thanks
to @pennae for writing this tool! It automatically checks that the
resulting documentation doesn't change, although my fork loosens
this a little to ignore some irrelevant whitespace and typographical
differences.

As of this commit there is no DocBook remaining in the options
documentation.

You can play along at home if you want to reproduce this commit:

    $ NIX_PATH=nixpkgs=flake:nixpkgs/c1bca7fe84c646cfd4ebf3482c0e6317a0b13f22 \
      nix shell nixpkgs#coreutils \
      -c find . -name '*.nix' \
      -exec nix run github:emilazy/nix-doc-munge/0a7190f600027bf7baf6cb7139e4d69ac2f51062 \
      {} +

[my fork of `nix-doc-munge`]: https://github.com/emilazy/nix-doc-munge
2023-06-24 10:48:55 +01:00
Emily
efe314cdba treewide: manually convert some docs to Markdown
These all use DocBook markup too complex for `nix-doc-munge` to handle,
have syntax that clashes with Markdown, or already contain Markdown
syntax that currently isn't rendering correctly.

Converting DocBook list syntax makes me think that maybe Markdown
isn't so bad after all.
2023-06-24 10:48:55 +01:00
Emily
b97c235e37 treewide: tweak DocBook docs for conversion
These help `nix-munge-doc` automate more of the Markdown conversion
process. See the following nixpkgs commits for explanations of many
of these changes:

* 275a34e0d8
* 694d5b19d3
* f1d39b6d61
* 16102dce2f

I couldn't think of any particularly good way to format the
`system.defaults` breadcrumbs, so I just made them standalone
paragraphs. They weren't rendering correctly in DocBook anyway.
2023-06-24 10:48:55 +01:00