Compare commits

...

1 commit

Author SHA1 Message Date
Rebecca Turner ed8781699a
Use em dashes when appropriate 2024-05-06 09:48:50 -07:00
7 changed files with 36 additions and 36 deletions

View file

@ -11,11 +11,11 @@ packages that can be used for anything from **putting configuration files into p
**declaratively managing an entire system**. **declaratively managing an entire system**.
That means that, with a few well-written Nix expressions, one That means that, with a few well-written Nix expressions, one
can easily configure a system into a known state -- and the packages that are created this can easily configure a system into a known state --- and the packages that are created this
way are guaranteed to run _exactly the same way_ on any system of the same architecture. way are guaranteed to run _exactly the same way_ on any system of the same architecture.
As a fork of CppNix, Lix is designed to be fully compatible with the original CppNix As a fork of CppNix, Lix is designed to be fully compatible with the original CppNix
implementation -- but also designed to allow evolution of the language and tooling, so implementation --- but also designed to allow evolution of the language and tooling, so
its developers can improve usability and ergonomics without sacrificing correctness. its developers can improve usability and ergonomics without sacrificing correctness.
### Why use Nix? ### Why use Nix?
@ -31,21 +31,21 @@ to clusters of critical infrastructure. With this in mind, the Lix team has been
provide a collection of necessary improvements over CppNix: provide a collection of necessary improvements over CppNix:
- **Built for a community, not for a corporation.** - **Built for a community, not for a corporation.**
Lix is built by a team of open-source volunteers -- and exists to provide a alternative to the Lix is built by a team of open-source volunteers --- and exists to provide a alternative to the
commercial interests that have long plagued both upstream CppNix and corporate-authored forks. commercial interests that have long plagued both upstream CppNix and corporate-authored forks.
We're proud to stand by our open [conflict of interest statements](/team#conflict-of-interest-statements), We're proud to stand by our open [conflict of interest statements](/team#conflict-of-interest-statements),
and proud to listen to community voices on issues of sponsorship, direction, and moderation. and proud to listen to community voices on issues of sponsorship, direction, and moderation.
- **A safe community for developers of all backgrounds.** - **A safe community for developers of all backgrounds.**
Lix is developed by a diverse group of users -- and accordingly is committed to providing a Lix is developed by a diverse group of users --- and accordingly is committed to providing a
space that's safe for users and developers typically underrepresented in technical projects. space that's safe for users and developers typically underrepresented in technical projects.
We take moderation seriously, and are committed to preventing bad actors from driving out We take moderation seriously, and are committed to preventing bad actors from driving out
marginalized groups. marginalized groups.
- **A correct implementation of the Nix language.** - **A correct implementation of the Nix language.**
Recent versions of the CppNix project have introduced significant regressions -- so much so Recent versions of the CppNix project have introduced significant regressions --- so much so
that the upstream [Nixpkgs](https://github.com/nixos/nixpkgs) team has opted to remain several that the upstream [Nixpkgs](https://github.com/nixos/nixpkgs) team has opted to remain several
versions behind. Lix is forked from the last truly-stable version of CppNix -- but has both versions behind. Lix is forked from the last truly-stable version of CppNix --- but has both
introduced new features and backported a number of features from newer versions without introduced new features and backported a number of features from newer versions without
sacrificing correctness. sacrificing correctness.
@ -53,12 +53,12 @@ provide a collection of necessary improvements over CppNix:
Lix is designed for evolution of its codebase. Lix already uses the more modern Lix is designed for evolution of its codebase. Lix already uses the more modern
[meson build system](https://mesonbuild.com/), which improves developer usability and decreases build times. [meson build system](https://mesonbuild.com/), which improves developer usability and decreases build times.
Plans include a gradual, piecewise introduction of the memory-safe [Rust](https://www.rust-lang.org/) Plans include a gradual, piecewise introduction of the memory-safe [Rust](https://www.rust-lang.org/)
programming language -- to both supplement and replace sections of the current C++ codebase. programming language --- to both supplement and replace sections of the current C++ codebase.
- **A language with room to grow.** - **A language with room to grow.**
Unlike upstream Nix, Lix intends to be an evolving language -- a robust language versioning Unlike upstream Nix, Lix intends to be an evolving language --- a robust language versioning
system will allow the language to grow and evolve without sacrificing backwards-compatibility or correctness. system will allow the language to grow and evolve without sacrificing backwards-compatibility or correctness.
And room to grow means room for **usability and ergonomics improvements** -- both in the langauge and in And room to grow means room for **usability and ergonomics improvements** --- both in the langauge and in
tooling. tooling.

View file

@ -176,7 +176,7 @@ great time to check out some of the [community's resources on Nix](/resources).
## Having Trouble? ## Having Trouble?
**One quick thing to check:** have you set `nix.package` anywhere in your configuration? **One quick thing to check:** have you set `nix.package` anywhere in your configuration?
If so, your configuration option will override the Lix module. You'll want to remove it, first -- If so, your configuration option will override the Lix module. You'll want to remove it, first ---
or, if you're feeling savvy, point it to the provided Lix package. or, if you're feeling savvy, point it to the provided Lix package.
**Otherwise:** If you're having difficulty installing Lix, don't panic! Hop on over to our **Otherwise:** If you're having difficulty installing Lix, don't panic! Hop on over to our

View file

@ -5,8 +5,8 @@ date: "2024-04-27"
author: "Lix Team" author: "Lix Team"
--- ---
Lix exists **first and foremost for its community** -- and we very much hope that will include you! Lix exists **first and foremost for its community** --- and we very much hope that will include you!
If you're looking for help, have any questions, want to pitch in -- or just want to talk -- join us If you're looking for help, have any questions, want to pitch in --- or just want to talk --- join us
using [one of the venues below](#engaging-with-the-community) . using [one of the venues below](#engaging-with-the-community) .
## Community Standards ## Community Standards
@ -24,22 +24,22 @@ nor a small foundation board that governs the community. Instead, **we rely on t
and users to carry the burdens of maintenance and governance**. and users to carry the burdens of maintenance and governance**.
We're currently in the process of establishing a more full-fledged governance model, which we believe must We're currently in the process of establishing a more full-fledged governance model, which we believe must
be built on engagement with -- and feedback from -- our community. In the interim, decisions are made by be built on engagement with --- and feedback from --- our community. In the interim, decisions are made by
simple voting, with one vote held by each member of the "[core team](/team)", who are acting as interim simple voting, with one vote held by each member of the "[core team](/team)", who are acting as interim
governance. governance.
## Engaging with the Community ## Engaging with the Community
The best way to engage with the community currently is to **join our Matrix space** -- a decentralized The best way to engage with the community currently is to **join our Matrix space** --- a decentralized
chat platform commonly used among open-source projects. chat platform commonly used among open-source projects.
### Lix Matrix ### Lix Matrix
Joining is relatively straightforward -- you can find us on the `lix.systems` Matrix server. Joining is relatively straightforward --- you can find us on the `lix.systems` Matrix server.
The easiest way to connect with us is to join our [Matrix space](https://matrix.to/#/#space:lix.systems), The easiest way to connect with us is to join our [Matrix space](https://matrix.to/#/#space:lix.systems),
which will allow you to see previews of and join the most relevant community rooms. which will allow you to see previews of and join the most relevant community rooms.
Note that all community venues -- including our Matrix rooms -- are subject to our [community standards](/community-standards). Note that all community venues --- including our Matrix rooms --- are subject to our [community standards](/community-standards).
### Community Resources ### Community Resources

View file

@ -5,7 +5,7 @@ date: "2024-05-01"
author: "Lix Team" author: "Lix Team"
--- ---
These are the most common questions we get -- or anticipate getting. If you can't find the answer These are the most common questions we get --- or anticipate getting. If you can't find the answer
you're looking for, please feel free to ask over in the [community](/community). you're looking for, please feel free to ask over in the [community](/community).
<br/> <br/>
@ -20,31 +20,31 @@ Check out the [install page](/install) to see how to use Lix with your existing
#### Q: What are your plans for flakes? #### Q: What are your plans for flakes?
One of our primary goals is compatibility. While flakes are an experimental technology, their use is One of our primary goals is compatibility. While flakes are an experimental technology, their use is
widespread enough that they've become a de-facto part of the Nix ecosystem -- and thus we consider them widespread enough that they've become a de-facto part of the Nix ecosystem --- and thus we consider them
to be part of our compatibility guarantee. to be part of our compatibility guarantee.
That said, we're not tied to any particular flake implementation. As Lix develops, we plan on adding an That said, we're not tied to any particular flake implementation. As Lix develops, we plan on adding an
extension system for the tooling -- which will allow technologies like flakes, as well as new and different extension system for the tooling --- which will allow technologies like flakes, as well as new and different
extensions -- to seamlessly act with the Lix core without needing to reside long-term in the Lix tree. extensions --- to seamlessly act with the Lix core without needing to reside long-term in the Lix tree.
_Flakes are not the only way to write Nix language code in Lix, and we intend to provide a good experience _Flakes are not the only way to write Nix language code in Lix, and we intend to provide a good experience
to those using flakes -- while also improving the experience for those not using them -- to those using flakes --- while also improving the experience for those not using them ---
by evolving a compatible but more flexible flake-like abstraction in the periphery of the Lix system._ by evolving a compatible but more flexible flake-like abstraction in the periphery of the Lix system._
#### Q: What relation does Lix have to the Nix Foundation, and to related projects? #### Q: What relation does Lix have to the Nix Foundation, and to related projects?
Besides being a fork of CppNix and an implementation of the Nix language, Lix is the Besides being a fork of CppNix and an implementation of the Nix language, Lix is the
effort of a number of long-time Nix, Nixpkgs, NixOS, and Tvix contributors and maintainers -- and has effort of a number of long-time Nix, Nixpkgs, NixOS, and Tvix contributors and maintainers --- and has
been developed in partnership with a number of prolific Nix-documenters, bloggers, and users. been developed in partnership with a number of prolific Nix-documenters, bloggers, and users.
We welcome anyone who wants to develop for both Lix and another implementation -- including CppNix and Tvix, We welcome anyone who wants to develop for both Lix and another implementation --- including CppNix and Tvix,
and our open-source implementation absolutely allows any developer to integrate our code into any and our open-source implementation absolutely allows any developer to integrate our code into any
license-compatible project. license-compatible project.
However, ___Lix does not fall under the NixOS Foundation umbrella___, is funded independently of the foundation, However, ___Lix does not fall under the NixOS Foundation umbrella___, is funded independently of the foundation,
and is not in any way controlled by its leadership. With the recent reboot of the foundation's governance, and is not in any way controlled by its leadership. With the recent reboot of the foundation's governance,
we are in communication with -- and open to collaboration with -- the foundation. we are in communication with --- and open to collaboration with --- the foundation.
#### Q: How does Lix work? How can I contribute or help out? #### Q: How does Lix work? How can I contribute or help out?
@ -88,11 +88,11 @@ will gladly make you one manually.
#### Q: If Lix plans to adopt Rust, what makes it different from Tvix? #### Q: If Lix plans to adopt Rust, what makes it different from Tvix?
Unlike Lix, [Tvix](https://tvix.dev/) is a ground-up re-implementation of the Nix language in Rust, Unlike Lix, [Tvix](https://tvix.dev/) is a ground-up re-implementation of the Nix language in Rust,
which shares many of the same modernization goals as Lix -- but also has a long way to go before it can which shares many of the same modernization goals as Lix --- but also has a long way to go before it can
reach feature parity (and parity in correctness) with the CppNix and Lix implementations. reach feature parity (and parity in correctness) with the CppNix and Lix implementations.
Lix instead plans a _top-down_, _piecewise_ approach to our Rust extensions and replacements -- which means Lix instead plans a _top-down_, _piecewise_ approach to our Rust extensions and replacements --- which means
that Lix already has feature-parity with -- and correctness exceeding -- the original CppNix. that Lix already has feature-parity with --- and correctness exceeding --- the original CppNix.
#### Q: What does the name Lix stand for? How is it pronounced? #### Q: What does the name Lix stand for? How is it pronounced?
@ -100,5 +100,5 @@ that Lix already has feature-parity with -- and correctness exceeding -- the ori
Like Nix, Lix isn't really short for anything. The name originally derives from the term _Layered Nix_, Like Nix, Lix isn't really short for anything. The name originally derives from the term _Layered Nix_,
based on the premise of layering new language and tooling features atop a fully-compatible, rock-solid base. based on the premise of layering new language and tooling features atop a fully-compatible, rock-solid base.
Lix is pronounced like _licks_ -- i.e. what you might do if someone handed you a delicious ice cream cone; Lix is pronounced like _licks_ --- i.e. what you might do if someone handed you a delicious ice cream cone;
which may or may not be stacked up with lambdas. which may or may not be stacked up with lambdas.

View file

@ -9,7 +9,7 @@ Whether you're a new or returning user, **we're thrilled you've decided to pick
Lix works out-of-the-box on most Linux and MacOS systems, including with system management tools Lix works out-of-the-box on most Linux and MacOS systems, including with system management tools
such as [home-manager](https://github.com/nix-community/home-manager) and such as [home-manager](https://github.com/nix-community/home-manager) and
[nix-darwin](https://github.com/LnL7/nix-darwin) -- but, like any Nix-based system, some Nix background [nix-darwin](https://github.com/LnL7/nix-darwin) --- but, like any Nix-based system, some Nix background
knowledge is recommended before installation. knowledge is recommended before installation.
If you're new to the Nix ecosystem, you may want to check out some [community resources](/resources) If you're new to the Nix ecosystem, you may want to check out some [community resources](/resources)
@ -55,7 +55,7 @@ Open a terminal, and run the following command:
curl -sSf -L https://install.lix.systems/lix | sh -s -- install curl -sSf -L https://install.lix.systems/lix | sh -s -- install
``` ```
The installer will guide you through installing Lix -- and once it's finished, The installer will guide you through installing Lix --- and once it's finished,
you'll have a full, working installation. If you're not sure what to do, now is a you'll have a full, working installation. If you're not sure what to do, now is a
great time to check out some of the [community's resources on Nix](/resources). great time to check out some of the [community's resources on Nix](/resources).

View file

@ -5,7 +5,7 @@ date: "2024-04-27"
author: "Lix Team" author: "Lix Team"
--- ---
Lix doesn't exist in a vacuum -- but instead builds atop the incredible work of dozens of Lix doesn't exist in a vacuum --- but instead builds atop the incredible work of dozens of
NixOS community members. This page collects resources that have been recommended by members NixOS community members. This page collects resources that have been recommended by members
of the community. of the community.

View file

@ -13,7 +13,7 @@ and users to carry the burdens of maintenance and governance.
The **core team** are the developers most directly responsible for the Lix project. While the project The **core team** are the developers most directly responsible for the Lix project. While the project
is in its "soft-release" period, these folks are responsible for project governance. One of their main is in its "soft-release" period, these folks are responsible for project governance. One of their main
tasks is to establish a lasting governance model -- and other teams to handle things! tasks is to establish a lasting governance model --- and other teams to handle things!
Members (in alphabetical order): Members (in alphabetical order):
@ -44,7 +44,7 @@ Members (in alphabetical order):
- **puck ([@puckipedia](https://github.com/puckipedia), she/her [singular] or they/them [plural])** - **puck ([@puckipedia](https://github.com/puckipedia), she/her [singular] or they/them [plural])**
- **Qyriad ([@Qyriad](https://github.com/Qyriad), she/her [singular] or they/them [plural])** - **Qyriad ([@Qyriad](https://github.com/Qyriad), she/her [singular] or they/them [plural])**
Build system experts who delve way, way too deep into tooling -- so you don't have to. Build system experts who delve way, way too deep into tooling --- so you don't have to.
- **raito ([@RaitoBezarius](https://github.com/RaitoBezarius), he/him)** - **raito ([@RaitoBezarius](https://github.com/RaitoBezarius), he/him)**
Raito is working on nixpkgs packaging, infrastructure, and review in Lix. Raito is working on nixpkgs packaging, infrastructure, and review in Lix.
@ -55,12 +55,12 @@ Members (in alphabetical order):
<br/> <br/>
We all hang around in [community spaces](/community), including on Matrix. Feel free to pop into We all hang around in [community spaces](/community), including on Matrix. Feel free to pop into
the Lix channels and say hello -- we'd love to hear what you think of Lix! the Lix channels and say hello --- we'd love to hear what you think of Lix!
## Conflict of Interest Statements ## Conflict of Interest Statements
As a community project, it's important that project decisions are made **exclusively for the As a community project, it's important that project decisions are made **exclusively for the
benefit of the community**, and don't serve any other interests -- including personal or corporate gain. benefit of the community**, and don't serve any other interests --- including personal or corporate gain.
If a team member is unable to do so in any context, they are **required** to disclose the _conflict of interest_ If a team member is unable to do so in any context, they are **required** to disclose the _conflict of interest_
and to recuse themselves from any leadership decisions affected. and to recuse themselves from any leadership decisions affected.