From 4d1b3a5e132b924ea6f945831ab0ee25407c996b Mon Sep 17 00:00:00 2001 From: Pacman99 Date: Tue, 8 Jun 2021 14:07:19 -0700 Subject: [PATCH 1/4] Merge pull request #311 from almostnobody/patch-1 override module doc: fix #310 --- doc/concepts/overrides.md | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/doc/concepts/overrides.md b/doc/concepts/overrides.md index 303108c..610fde0 100644 --- a/doc/concepts/overrides.md +++ b/doc/concepts/overrides.md @@ -27,10 +27,11 @@ You can also pull modules from other channels. All modules have access to the `modulesPath` for each channel as `ModulesPath`. And you can use `disabledModules` to remove modules from the current channel. -Pulling the zsh module from the `latest` channel: +To pull zsh module from the `latest` channel this code can be placed in any module, whether its your host file, a profile, or a module in ./modules etc: ```nix -{ latestModulesPath }: { - modules = [ "${latestModulesPath}/programs/zsh/zsh.nix" ]; +{ latestModulesPath }: +{ + imports = [ "${latestModulesPath}/programs/zsh/zsh.nix" ]; disabledModules = [ "programs/zsh/zsh.nix" ]; } ``` From 0e1947b6f03ca17b02a9b3a31f720fa17a5e21e1 Mon Sep 17 00:00:00 2001 From: David Arnold Date: Sun, 13 Jun 2021 12:27:20 -0500 Subject: [PATCH 2/4] add upstream issue report template --- .github/ISSUE_TEMPLATE/upstream_notice.md | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) create mode 100644 .github/ISSUE_TEMPLATE/upstream_notice.md diff --git a/.github/ISSUE_TEMPLATE/upstream_notice.md b/.github/ISSUE_TEMPLATE/upstream_notice.md new file mode 100644 index 0000000..4ada54e --- /dev/null +++ b/.github/ISSUE_TEMPLATE/upstream_notice.md @@ -0,0 +1,16 @@ +--- +name: Upstream notice (Issues or Changes) +about: Create an upstream notice to help our research +title: '[ ]: ' +labels: 'upstream' +assignees: '' + +--- + +## Link + + + +## Context + From 1a4b7d19c9faa6b90cd8db02bc345c3cc395b2f7 Mon Sep 17 00:00:00 2001 From: Timothy DeHerrera Date: Thu, 1 Jul 2021 23:40:55 -0600 Subject: [PATCH 3/4] README.md: rework --- README.md | 61 ++++++++++++++++--------------------------------------- 1 file changed, 18 insertions(+), 43 deletions(-) diff --git a/README.md b/README.md index f347f4a..b7cd887 100644 --- a/README.md +++ b/README.md @@ -1,61 +1,35 @@ -[![Bors enabled](https://bors.tech/images/badge_small.svg)](https://app.bors.tech/repositories/32678) -[![MIT License](https://img.shields.io/github/license/divnix/devos)][mit] [![NixOS](https://img.shields.io/badge/NixOS-unstable-blue.svg?style=flat&logo=NixOS&logoColor=white)](https://nixos.org) +[![MIT License](https://img.shields.io/github/license/divnix/devos)][mit] +[![Chat](https://img.shields.io/matrix/devos:nixos.org.svg?label=%23devos%3Anixos.org&logo=matrix&server_fqdn=matrix.org)][matrix] > #### ⚠ Advisory ⚠ > DevOS requires the [flakes][flakes] feature available via an _experimental_ -> branch of [nix][nix]. Until nix 3.0 is released, this project -> should be considered unstable, though quite usable as flakes have been -> maturing _well_ [for a while](https://github.com/divnix/devos/tree/17713c22d07c54525c728c62060a0428b76dee3b). +> branch of [nix][nix]. Until nix 2.4 is released, this project +> should be considered unstable. -# Introduction -DevOS grants a simple template to use, deploy and manage [NixOS][nixos] systems -for personal and productive use. A sane repository structure is provided, -integrating several popular projects like [home-manager][home-manager], +### Why? +Make an awesome template for NixOS users, with consideration for common tools like [home-manager][home-manager], [devshell][devshell], and [more](./doc/integrations). -Striving for ___nix firstβ„’___ solutions with unobstrusive implementations, -a [flake centric][flake-doc] approach is taken for useful conveniences such as -[automatic source updates](./pkgs#automatic-source-updates). +### No. Why _flakes_? +Flakes are a part of an explicit push to improve [Nix's UI](https://github.com/NixOS/nix/blob/master/doc/manual/src/contributing/cli-guideline.md), and have become an intergral part of that effort. -Skip the indeterminate nature of other systems, _and_ the perceived -tedium of bootstrapping Nix. It's easier than you think! +They also make [Nix expressions](https://nixos.org/manual/nix/unstable/expressions/expression-syntax.html) easier to distribute and reuse with convient [flake references](https://github.com/NixOS/nix/blob/master/src/nix/flake.md#flake-references) for building or using packages, modules, and whole systems. + +## Getting Started +Check out the [guide](https://devos.divnix.com/start) to get up and running. +Also, have a look at [_flake.nix_][toc]. If anything is not immediately +discoverable via "[`digga`][digga]'s [`mkFlake`][mk-flake], +please file a bug report. ### Status: Beta Although this project has already matured quite a bit, especially through recent outfactoring of [`digga`][digga], a fair amount of api polishing is still expected. There are unstable versions (0._x_._x_) to help users keep track -of changes and progress. - -## Getting Started -Check out the [guide](https://devos.divnix.com/start) to get up and running. -Also, have a look at [_flake.nix_][toc]. If anything is not immediately -discoverable from there through [`digga`][digga] library's [`mkFlake`][mk-flake], -please file a bug report. +of changes and progress, and a [`develop`](https://github.com/divnix/devos/tree/develop) branch for the brave 😜 ## In the Wild -The author maintains his own branch, so you can take inspiration, direction, or -make critical comments about the [code][please]. 😜 - -## Motivation -NixOS provides an amazing abstraction to manage our environment, but that new -power can sometimes bring feelings of overwhelm and confusion. Having a turing -complete system can easily lead to unlimited complexity if we do it wrong. -Instead, we should have a community consensus on how to manage a NixOS system -and its satellite projects, from which best practices can evolve. - -___The future is declarative! πŸŽ‰___ - -## Community Profiles -There are two branches from which to choose: [core][core] and -[community][community]. The community branch builds on core and includes -several ready-made profiles for discretionary use. - -Every package and NixOS profile declared in community is uploaded to -[cachix](./integrations/cachix.md), so everything provided is available -without building anything. This is especially useful for the packages that are -[overridden](./concepts/overrides.md) from master, as without the cache, -rebuilds are quite frequent. +* The original [authors][please] ## Shoulders This work does not reinvent the wheel. It stands on the [shoulders of the @@ -113,3 +87,4 @@ DevOS is licensed under the [MIT License][mit]. [community]: https://github.com/divnix/devos/tree/community [dotfiles]: https://github.com/hlissner/dotfiles [please]: https://github.com/nrdxp/devos/tree/nrd +[matrix]: https://matrix.to/#/#devos:nixos.org From 73431f57098f769e8393d7fa5963d3c20bf47c65 Mon Sep 17 00:00:00 2001 From: David Arnold Date: Fri, 16 Jul 2021 12:45:48 -0500 Subject: [PATCH 4/4] rm: community the commmunity branch was fallen too far behind and there where no contributions to it, anyways. We will start linking usage examples out in the wild, instead. --- doc/CONTRIBUTING.md | 6 ------ doc/concepts/profiles.md | 3 --- doc/concepts/suites.md | 2 +- doc/flk/get.md | 6 +++--- doc/start/index.md | 2 -- 5 files changed, 4 insertions(+), 15 deletions(-) diff --git a/doc/CONTRIBUTING.md b/doc/CONTRIBUTING.md index f721069..4766cdf 100644 --- a/doc/CONTRIBUTING.md +++ b/doc/CONTRIBUTING.md @@ -10,12 +10,6 @@ rendered on every change, so the docs should always be up to date. We also use [BORS](https://bors.tech) to ensure that all pull requests pass the test suite once at least one review is completed. -## Community PRs -While much of your work in this template may be idiosyncratic in nature. Anything -that might be generally useful to the broader NixOS community can be synced to -the `community` branch to provide a host of useful NixOS configurations available -"out of the box". - # Style If you wish to contribute please follow these guidelines: diff --git a/doc/concepts/profiles.md b/doc/concepts/profiles.md index b4ff0a1..a5eda3e 100644 --- a/doc/concepts/profiles.md +++ b/doc/concepts/profiles.md @@ -5,9 +5,6 @@ Profiles are a convenient shorthand for the [_definition_][definition] of built into the NixOS module system for a reason: to elegantly provide a clear separation of concerns. -If you need guidance, a community [branch](https://github.com/divnix/devos/tree/community/profiles) -is maintained to help get up to speed on their usage. - ## Creation Profiles are created with the `rakeLeaves` function which recursively collects `.nix` files from within a folder. The recursion stops at folders with a `default.nix` diff --git a/doc/concepts/suites.md b/doc/concepts/suites.md index e120ad6..42a3db8 100644 --- a/doc/concepts/suites.md +++ b/doc/concepts/suites.md @@ -1,6 +1,6 @@ # Suites Suites provide a mechanism for users to easily combine and name collecitons of -profiles. For good examples, check out the suites defined in the community branch. +profiles. `suites` are defined in the `importables` argument in either the `home` or `nixos` namespace. They are a special case of an `importable` which get passed as a special diff --git a/doc/flk/get.md b/doc/flk/get.md index b1f7990..8761f00 100644 --- a/doc/flk/get.md +++ b/doc/flk/get.md @@ -1,10 +1,10 @@ # get The `get` subcommand is useful for getting a bare copy of devos without the -git history. You can pull either the core or community branches. +git history. ## Usage ```sh -flk get BRANCH DEST-DIR +flk get DEST-DIR ``` -If DEST-DIR is ommitted, it defaults to _./flk_. +If DEST-DIR is ommitted, it defaults to _./devos_. diff --git a/doc/start/index.md b/doc/start/index.md index fbfab09..f3f1127 100644 --- a/doc/start/index.md +++ b/doc/start/index.md @@ -25,8 +25,6 @@ version required. In addition, the [binary cache](../integrations/cachix.md) is added for faster deployment. > ##### _Notes:_ -> - You can change `core` to [`community`](../../index.md#community-profiles) -> in the call to `flk get` > - Flakes ignore files that have not been added to git, so be sure to stage new > files before building the system. > - You can choose to simply clone the repo with git if you want to follow