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

Merge nixos-hardware into nixpkgs under /nixos/hardware #91160

Merged
merged 362 commits into from Jun 20, 2020

Conversation

Profpatsch
Copy link
Member

@Profpatsch Profpatsch commented Jun 20, 2020

Merges https://github.com/NixOS/nixos-hardware into nixpkgs.

This will give better discoverability, and considering the low
turnover (less than 100 commits in the last year and only 350 total)
it won’t make any dent on the size of nixpkgs.

We have a monorepo, let’s use it.

cc @Mic92 and @yegortimoshenko as the top contributors to nixos-hardware.

Followup:

  • Move the few issues on nixos-hardware to the nixpkgs issue tracker
  • Archive nixos-hardware
  • Move the stray hardware definitions in nixos/modules/installer/cd-dvd (e.g. the raspberripy definitions) to nixos/hardware
  • Think about how to integrate the tests
  • Integrate into nixos-generate-config
  • Mention in nixos installer configuration.

lukateras and others added 30 commits December 25, 2017 01:28
In my experience, this makes keyboard behavior match letters printed
on it both on EU and US keyboards.
Basically a meta profile that combines thinkpad + intel.
I've tested this to work on MacBookAir4,1 and I'm going to deploy it
to MacBookAir6,2 today and Lenovo ThinkPad X230 in a week from now.
Also, cleaned up Lenovo ThinkPad X230 profile.
This is handled by TLP, so we don't need to set that explicitly.
erikarvstedt and others added 7 commits May 20, 2020 16:29
This setting has been part of NixOS since version 16.09
It is going to be merged into nixpkgs, under `nixos/hardware`.

This will give better discoverability, and considering the low
turnover (less than 100 commits in the last year and only 350 total)
it won’t make any dent on the size of nixpkgs.

We have a monorepo, let’s use it.
…merge

Merges https://github.com/NixOS/nixos-hardware into nixpkgs.

This will give better discoverability, and considering the low
turnover (less than 100 commits in the last year and only 350 total)
it won’t make any dent on the size of nixpkgs.

We have a monorepo, let’s use it
It’s a full subset of the toplevel .gitignore.
@Profpatsch Profpatsch changed the title Merge nixos-hardware into nixpkgs Merge nixos-hardware into nixpkgs under /nixos/hardware Jun 20, 2020
Copy link
Member

@lukateras lukateras left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this is a great idea.

nixos/hardware/.travis.yml Outdated Show resolved Hide resolved
@@ -0,0 +1,111 @@
Statement of Purpose
Copy link
Member

@lukateras lukateras Jun 20, 2020

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is a public domain license. So, for simplicity's sake, I'd remove it and keep the top-level Nixpkgs MIT license.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I wasn’t sure of that, as IANAL I opted for keeping it safe. I would make that decision in a separate PR.

We are going to have to integrate the tests differently, but it’s fine
for now.
@Mic92
Copy link
Member

Mic92 commented Jun 20, 2020

I am also all for it. It also makes it easier to apply changes that depend on specific nixpkgs revisions. Also we can finally integrate this into nixos-generate-config to make specific hardware just work (TM).

@@ -55,6 +55,15 @@
# NixOS integration test driver
/nixos/lib/test-driver @tfc

# NixOS hardware descriptions
/nixos/hardware/beagleboard/pocketbeagle @yegortimoshenko
/nixos/hardware/dell/xps/13-9370 @moredread
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

# NixOS hardware descriptions
/nixos/hardware/beagleboard/pocketbeagle @yegortimoshenko
/nixos/hardware/dell/xps/13-9370 @moredread
/nixos/hardware/dell/xps/13-9380 @kalbasit
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@Profpatsch Profpatsch merged commit cc0bf76 into NixOS:master Jun 20, 2020
@grahamc
Copy link
Member

grahamc commented Jun 20, 2020

I don't think this is a good idea. These profiles aren't tested regularly, and merging them in to nixpkgs means there should be a quality standard IMO. They're also fairly opinionated in ways that our users may not want. I don't this is a healthy move for Nixpkgs or for the nixos-hardware project.`

@grahamc
Copy link
Member

grahamc commented Jun 20, 2020

I'm also not sure about the license. Nixpkgs' expressions are all MIT. I think this should be reverted for more consideration.

@edolstra
Copy link
Member

Indeed, changes to the scope of Nixpkgs require an RFC.

@cleverca22
Copy link
Contributor

seems this can also sometimes confuse git bisect:

[clever@amd-nixos:~/apps/nixpkgs]$ git bisect bad
Bisecting: 284 revisions left to test after this (roughly 8 steps)
[c3b2ac63ff06e5dd4fa66f75bfab7892b3edfdc5] Add deepsleep to avoid wakeups during sleep mode (#136)

[clever@amd-nixos:~/apps/nixpkgs]$ nix-build -A platformio && ls -l result/
attribute 'platformio' in selection path 'platformio' not found

[clever@amd-nixos:~/apps/nixpkgs]$ nix repl .
Welcome to Nix version 3.0pre20200829_f156513. Type :? for help.

Loading '.'...
Added 0 variables.

nix-repl> :q

[clever@amd-nixos:~/apps/nixpkgs]$ cat default.nix
# This file is necessary so nix-env -qa does not break,
# when nixos-hardware is used as a channel
{}

[clever@amd-nixos:~/apps/nixpkgs]$

bisect randomly switched over to commits from nixos-hardware, and then nix-build fails due to an empty set

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet