124 Commits

Author SHA1 Message Date
59f910fe3f cura5: rework to include desktop item 2023-09-21 13:12:39 +10:00
93b6195542 all: refactor to follow RFC140 2023-09-21 12:28:32 +10:00
029f6e7795 flake: update inputs (#63)
Flake lock file updates:

• Updated input 'flake-utils':
    'github:numtide/flake-utils/f9e7cf818399d17d347f847525c5a5a8032e4e44' (2023-08-23)
  → 'github:numtide/flake-utils/ff7b65b44d01cf9ba6a71320833626af21126384' (2023-09-12)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/78058d810644f5ed276804ce7ea9e82d92bee293' (2023-09-10)
  → 'github:NixOS/nixpkgs/5148520bfab61f99fd25fb9ff7bfbb50dad3c9db' (2023-09-17)

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2023-09-18 10:05:15 +00:00
19eb6aefbe ci: bump cachix/install-nix-action from 22 to 23 (#61)
Bumps [cachix/install-nix-action](https://github.com/cachix/install-nix-action) from 22 to 23.
- [Release notes](https://github.com/cachix/install-nix-action/releases)
- [Commits](https://github.com/cachix/install-nix-action/compare/v22...v23)

---
updated-dependencies:
- dependency-name: cachix/install-nix-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-09-11 08:03:18 +00:00
26b35fa847 ci: bump actions/checkout from 3 to 4 (#60)
Bumps [actions/checkout](https://github.com/actions/checkout) from 3 to 4.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v3...v4)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-09-11 07:57:17 +00:00
ec92a006c3 flake: update inputs (#62)
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/d816b5ab44187a2dd84806630ce77a733724f95f' (2023-09-03)
  → 'github:NixOS/nixpkgs/78058d810644f5ed276804ce7ea9e82d92bee293' (2023-09-10)

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2023-09-11 07:57:09 +00:00
622b3cbdfe flake: update inputs (#59)
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/cddebdb60de376c1bdb7a4e6ee3d98355453fe56' (2023-08-27)
  → 'github:NixOS/nixpkgs/d816b5ab44187a2dd84806630ce77a733724f95f' (2023-09-03)

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2023-09-06 01:21:01 +00:00
6be9b3fd57 atlauncher: 3.4.33.0 -> 3.4.33.1 2023-08-30 09:42:02 +10:00
1991f762ff ci: bump DeterminateSystems/update-flake-lock from 19 to 20 (#57)
Bumps [DeterminateSystems/update-flake-lock](https://github.com/determinatesystems/update-flake-lock) from 19 to 20.
- [Release notes](https://github.com/determinatesystems/update-flake-lock/releases)
- [Commits](https://github.com/determinatesystems/update-flake-lock/compare/v19...v20)

---
updated-dependencies:
- dependency-name: DeterminateSystems/update-flake-lock
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-08-28 12:14:40 +00:00
7ef07f63fb flake: update inputs (#58)
Flake lock file updates:

• Updated input 'flake-utils':
    'github:numtide/flake-utils/919d646de7be200f3bf08cb76ae1f09402b6f9b4' (2023-07-11)
  → 'github:numtide/flake-utils/f9e7cf818399d17d347f847525c5a5a8032e4e44' (2023-08-23)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/3476a10478587dec90acb14ec6bde0966c545cc0' (2023-08-20)
  → 'github:NixOS/nixpkgs/cddebdb60de376c1bdb7a4e6ee3d98355453fe56' (2023-08-27)

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2023-08-28 12:14:26 +00:00
9aace44d90 atlauncher: disable update checking 2023-08-25 09:13:38 +10:00
a7e7286d6e atlauncher: pin Java at 17 2023-08-25 09:09:41 +10:00
f407a90461 atlauncher: 3.4.20.2 -> 3.4.33.0 2023-08-25 09:08:11 +10:00
9416bec1d7 flake: update inputs (#56)
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/750fc50bfd132a44972aa15bb21937ae26303bc4' (2023-08-13)
  → 'github:NixOS/nixpkgs/3476a10478587dec90acb14ec6bde0966c545cc0' (2023-08-20)

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2023-08-21 22:44:03 +00:00
104c9a0747 flake: update inputs (#55)
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/5068bc8fe943bde3c446326da8d0ca9c93d5a682' (2023-08-07)
  → 'github:NixOS/nixpkgs/750fc50bfd132a44972aa15bb21937ae26303bc4' (2023-08-13)

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2023-08-14 23:30:58 +00:00
b986324ca8 flake: update inputs (#54)
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/3acb5c4264c490e7714d503c7166a3fde0c51324' (2023-07-30)
  → 'github:NixOS/nixpkgs/5068bc8fe943bde3c446326da8d0ca9c93d5a682' (2023-08-07)

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2023-08-07 06:51:59 +00:00
34b7a0d308 flake: update inputs (#53)
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/af8cd5ded7735ca1df1a1174864daab75feeb64a' (2023-07-23)
  → 'github:NixOS/nixpkgs/3acb5c4264c490e7714d503c7166a3fde0c51324' (2023-07-30)

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2023-07-31 07:17:27 +00:00
10c372b1e3 flake: update inputs (#52)
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/66c990850b878437510cc6096e6babce86de5dcb' (2023-07-16)
  → 'github:NixOS/nixpkgs/af8cd5ded7735ca1df1a1174864daab75feeb64a' (2023-07-23)

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2023-07-25 01:09:25 +00:00
af1f94f029 flake: update inputs (#51)
Flake lock file updates:

• Updated input 'flake-utils':
    'github:numtide/flake-utils/dbabf0ca0c0c4bce6ea5eaf65af5cb694d2082c7' (2023-06-25)
  → 'github:numtide/flake-utils/919d646de7be200f3bf08cb76ae1f09402b6f9b4' (2023-07-11)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/2b356dae6208d422236c4cdc48f3bed749f9daea' (2023-07-09)
  → 'github:NixOS/nixpkgs/66c990850b878437510cc6096e6babce86de5dcb' (2023-07-16)

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2023-07-17 07:15:20 +00:00
43236beb53 cura5: init at 5.4.0 2023-07-15 19:19:55 +10:00
1f97131fc1 flake: update inputs (#50)
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/cd99c2b3c9f160cd004318e0697f90bbd5960825' (2023-07-01)
  → 'github:NixOS/nixpkgs/2b356dae6208d422236c4cdc48f3bed749f9daea' (2023-07-09)

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2023-07-10 08:53:44 +00:00
a7195c6042 flake: update inputs (#49)
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/07059ee2fa34f1598758839b9af87eae7f7ae6ea' (2023-06-25)
  → 'github:NixOS/nixpkgs/cd99c2b3c9f160cd004318e0697f90bbd5960825' (2023-07-01)

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2023-07-03 06:56:10 +00:00
8e77024084 flake: update inputs (#48)
Flake lock file updates:

• Updated input 'flake-utils':
    'github:numtide/flake-utils/a1720a10a6cfe8234c0e93907ffe81be440f4cef' (2023-05-31)
  → 'github:numtide/flake-utils/dbabf0ca0c0c4bce6ea5eaf65af5cb694d2082c7' (2023-06-25)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/91430887645a0953568da2f3e9a3a3bb0a0378ac' (2023-06-18)
  → 'github:NixOS/nixpkgs/07059ee2fa34f1598758839b9af87eae7f7ae6ea' (2023-06-25)

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2023-06-26 10:38:27 +00:00
dfd1f1720d protonmail-bridge: remove qtdoc from inputs 2023-06-20 16:25:43 +10:00
5531e40958 cardboard: remove xwayland from inputs 2023-06-20 16:25:43 +10:00
267995206a alacritty-ligatures: fix cargoDeps output hash 2023-06-20 16:25:43 +10:00
a2fbb58011 flake: upport channel-less in NUR check
Interestingly doesn't actually fail like `nix flake check` does.
2023-06-20 16:22:46 +10:00
3d79b690e4 ci: disallow continue on check failure
Has been hiding issues with the NUR update for a month due to a change
in `buildRustPackage`.
2023-06-20 16:00:45 +10:00
5f205a48c2 ci: bump cachix/install-nix-action from 21 to 22 (#46)
Bumps [cachix/install-nix-action](https://github.com/cachix/install-nix-action) from 21 to 22.
- [Release notes](https://github.com/cachix/install-nix-action/releases)
- [Commits](https://github.com/cachix/install-nix-action/compare/v21...v22)

---
updated-dependencies:
- dependency-name: cachix/install-nix-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-19 23:51:43 +00:00
7de26a6d71 flake: update inputs (#47)
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/9401a0c780b49faf6c28adf55764f230301d0dce' (2023-06-11)
  → 'github:NixOS/nixpkgs/91430887645a0953568da2f3e9a3a3bb0a0378ac' (2023-06-18)

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2023-06-19 23:51:25 +00:00
97ca7a2f35 flake: update inputs (#45)
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/2e56a850786211972d99d2bb39665a9b5a1801d6' (2023-06-04)
  → 'github:NixOS/nixpkgs/9401a0c780b49faf6c28adf55764f230301d0dce' (2023-06-11)

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2023-06-12 07:37:05 +00:00
734650a80a flake: update inputs (#44)
Flake lock file updates:

• Updated input 'flake-utils':
    'github:numtide/flake-utils/cfacdce06f30d2b68473a46042957675eebb3401' (2023-04-11)
  → 'github:numtide/flake-utils/a1720a10a6cfe8234c0e93907ffe81be440f4cef' (2023-05-31)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/6b554aae1cf48cb39d4a61a51f826859027a93e2' (2023-05-28)
  → 'github:NixOS/nixpkgs/2e56a850786211972d99d2bb39665a9b5a1801d6' (2023-06-04)

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2023-06-06 02:24:05 +00:00
0d269dba16 flake: update inputs (#43)
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/85340996ba67cc02f01ba324e18b1306892ed6f5' (2023-05-21)
  → 'github:NixOS/nixpkgs/6b554aae1cf48cb39d4a61a51f826859027a93e2' (2023-05-28)

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2023-05-30 09:22:05 +10:00
8f2e2d2372 ci: bump cachix/install-nix-action from 20 to 21 (#42)
Bumps [cachix/install-nix-action](https://github.com/cachix/install-nix-action) from 20 to 21.
- [Release notes](https://github.com/cachix/install-nix-action/releases)
- [Commits](https://github.com/cachix/install-nix-action/compare/v20...v21)

---
updated-dependencies:
- dependency-name: cachix/install-nix-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-05-30 09:21:55 +10:00
7a84f381fc ytarchive: 0.2.2 -> 0.2.2+0304577
Upstream has rewritten in Go and removed all the Python tags, so we fix
the revision at the last Python version.
2023-05-23 10:06:24 +10:00
698ad1803d amdgpu-fan: patch bad placeholder version 2023-05-23 10:04:20 +10:00
896b46b2f4 flake: update inputs (#41)
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/0cb867999eec4085e1c9ca61c09b72261fa63bb4' (2023-05-15)
  → 'github:NixOS/nixpkgs/85340996ba67cc02f01ba324e18b1306892ed6f5' (2023-05-21)

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2023-05-22 17:58:45 +10:00
16c3c01730 flake: update inputs (#40)
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/eb751d65225ec53de9cf3d88acbf08d275882389' (2023-05-07)
  → 'github:NixOS/nixpkgs/0cb867999eec4085e1c9ca61c09b72261fa63bb4' (2023-05-15)

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2023-05-16 09:10:03 +10:00
26f6048226 flake: update inputs (#39)
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/8b3bc690e201c8d3cbd14633dbf3462a820e73f2' (2023-05-01)
  → 'github:NixOS/nixpkgs/eb751d65225ec53de9cf3d88acbf08d275882389' (2023-05-07)

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2023-05-09 10:18:12 +10:00
69bc4e5e49 flake: update inputs (#38)
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/2362848adf8def2866fabbffc50462e929d7fffb' (2023-04-21)
  → 'github:NixOS/nixpkgs/8b3bc690e201c8d3cbd14633dbf3462a820e73f2' (2023-05-01)

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2023-05-02 15:40:52 +10:00
8c691f457a ci: bump DeterminateSystems/update-flake-lock from 18 to 19 (#34)
Bumps [DeterminateSystems/update-flake-lock](https://github.com/DeterminateSystems/update-flake-lock) from 18 to 19.
- [Release notes](https://github.com/DeterminateSystems/update-flake-lock/releases)
- [Commits](https://github.com/DeterminateSystems/update-flake-lock/compare/v18...v19)

---
updated-dependencies:
- dependency-name: DeterminateSystems/update-flake-lock
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-27 11:08:54 +10:00
ea79df8fbf flake: update inputs (#37)
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/db34d7561caa508ece0265a56f382c5d3b7a6c1b' (2023-04-17)
  → 'github:NixOS/nixpkgs/2362848adf8def2866fabbffc50462e929d7fffb' (2023-04-21)

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2023-04-26 14:34:51 +10:00
bfc5062bb6 flake: update inputs (#36)
Flake lock file updates:

• Updated input 'flake-utils':
    'github:numtide/flake-utils/033b9f258ca96a10e543d4442071f614dc3f8412' (2023-04-09)
  → 'github:numtide/flake-utils/cfacdce06f30d2b68473a46042957675eebb3401' (2023-04-11)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/da0b0bc6a5d699a8a9ffbf9e1b19e8642307062a' (2023-04-09)
  → 'github:NixOS/nixpkgs/db34d7561caa508ece0265a56f382c5d3b7a6c1b' (2023-04-17)

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2023-04-17 17:16:24 +10:00
2df4be1363 flake: update inputs (#35)
Flake lock file updates:

• Updated input 'flake-utils':
    'github:numtide/flake-utils/93a2b84fc4b70d9e089d029deacc3583435c2ed6' (2023-03-15)
  → 'github:numtide/flake-utils/033b9f258ca96a10e543d4442071f614dc3f8412' (2023-04-09)
• Added input 'flake-utils/systems':
    'github:nix-systems/default/da67096a3b9bf56a91d16901293e51ba5b49a27e' (2023-04-09)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/53dad94e874c9586e71decf82d972dfb640ef044' (2023-04-03)
  → 'github:NixOS/nixpkgs/da0b0bc6a5d699a8a9ffbf9e1b19e8642307062a' (2023-04-09)

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2023-04-11 10:15:10 +10:00
4b69efc799 flake: update inputs (#33)
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/0cd51a933d91078775b300cf0f29aa3495231aa2' (2023-03-26)
  → 'github:NixOS/nixpkgs/53dad94e874c9586e71decf82d972dfb640ef044' (2023-04-03)

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2023-04-04 11:11:38 +10:00
9898d8265c ci: bump DeterminateSystems/update-flake-lock from 17 to 18 (#32)
Bumps [DeterminateSystems/update-flake-lock](https://github.com/DeterminateSystems/update-flake-lock) from 17 to 18.
- [Release notes](https://github.com/DeterminateSystems/update-flake-lock/releases)
- [Commits](https://github.com/DeterminateSystems/update-flake-lock/compare/v17...v18)

---
updated-dependencies:
- dependency-name: DeterminateSystems/update-flake-lock
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-04 11:11:25 +10:00
509a3f9918 flake: update inputs (#31)
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/5a05160f7671434e1c833b1b01284b876e04eca4' (2023-03-19)
  → 'github:NixOS/nixpkgs/0cd51a933d91078775b300cf0f29aa3495231aa2' (2023-03-26)

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2023-03-28 09:25:55 +11:00
93bdded413 flake: update inputs (#30)
Flake lock file updates:

• Updated input 'flake-utils':
    'github:numtide/flake-utils/3db36a8b464d0c4532ba1c7dda728f4576d6d073' (2023-02-13)
  → 'github:numtide/flake-utils/93a2b84fc4b70d9e089d029deacc3583435c2ed6' (2023-03-15)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/b38db2c901b30a37d345751f4f6418d416e7e46e' (2023-03-12)
  → 'github:NixOS/nixpkgs/5a05160f7671434e1c833b1b01284b876e04eca4' (2023-03-19)

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2023-03-21 09:27:17 +11:00
f6fe0ddb84 flake: update inputs (#29)
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/a1240f6b4a0bcc84fc48008b396a140d9f3638f6' (2023-03-05)
  → 'github:NixOS/nixpkgs/b38db2c901b30a37d345751f4f6418d416e7e46e' (2023-03-12)

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2023-03-13 18:53:36 +11:00
803f73b8b8 ci: bump DeterminateSystems/update-flake-lock from 16 to 17 (#28)
Bumps [DeterminateSystems/update-flake-lock](https://github.com/DeterminateSystems/update-flake-lock) from 16 to 17.
- [Release notes](https://github.com/DeterminateSystems/update-flake-lock/releases)
- [Commits](https://github.com/DeterminateSystems/update-flake-lock/compare/v16...v17)

---
updated-dependencies:
- dependency-name: DeterminateSystems/update-flake-lock
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-03-07 10:55:12 +11:00
bced319f32 ci: fix dependabot config 2023-03-07 10:08:01 +11:00
a798e65465 flake: update inputs (#27)
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/9952d6bc395f5841262b006fbace8dd7e143b634' (2023-02-26)
  → 'github:NixOS/nixpkgs/a1240f6b4a0bcc84fc48008b396a140d9f3638f6' (2023-03-05)

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2023-03-07 10:07:32 +11:00
d36de346ad packages: convert path interpolation to concat
I have no idea what the fuck is happening here but interpolating the
path leads to the whole result being converted to a (-n invalid) store
path, but concat doesn't. The former results in realisation failing
running under `nix-build`, i.e., NUR updates.
2023-03-06 12:08:33 +11:00
b7f88d78b5 flake: add check for NUR reproducibility 2023-03-06 12:02:00 +11:00
71f6ac0f46 atlauncher: add compat for sourceProvenance
Occasionally gets evaluated with nixpkgs-22.05 which doesn't have these
definitions.
2023-03-06 11:55:56 +11:00
561afaf18c default: refactor 2023-03-06 10:30:13 +11:00
f0dc2d521d all: format 2023-03-06 10:13:37 +11:00
4586c00f4e ci: bump cachix/install-nix-action 2023-03-06 09:49:33 +11:00
162045b8d7 default: add unit packages (#26) 2023-03-06 09:40:35 +11:00
fc1f1b328b ci: update dependabot commit format 2023-02-28 09:38:36 +11:00
4be1dd48ce flake: update inputs (#25)
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/f5dad40450d272a1ea2413f4a67ac08760649e89' (2023-02-22)
  → 'github:NixOS/nixpkgs/9952d6bc395f5841262b006fbace8dd7e143b634' (2023-02-26)

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2023-02-28 09:34:46 +11:00
8bbc8afb15 docs: update badge path 2023-02-23 13:47:07 +11:00
6faef6e0ac go-qt: bump qt version 2023-02-23 13:39:21 +11:00
29516dc3d8 ci: allow style checks to fail 2023-02-23 13:37:14 +11:00
a2f24f4591 flake: update inputs (#24)
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/bd4dffcdb7c577d74745bd1eff6230172bd176d5' (2022-04-17)
  → 'github:NixOS/nixpkgs/f5dad40450d272a1ea2413f4a67ac08760649e89' (2023-02-22)

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2023-02-23 13:23:56 +11:00
8f34b7a6fa ci: adjust update job messages 2023-02-23 13:23:04 +11:00
5410671050 all: embrace unit packages where possible 2023-02-23 11:46:04 +11:00
e053da240d protonmail-bridge: bump qt version 2023-02-23 11:10:17 +11:00
d0e26ddb24 ci: fix update job definition 2023-02-23 11:06:35 +11:00
2efddce7c5 ci: fix check job definition 2023-02-23 11:01:35 +11:00
3d8a9cfa9a ci: add flake input job 2023-02-23 10:59:58 +11:00
782b05c59e ci: run checks 2023-02-23 10:51:53 +11:00
67adbe7089 ci: fix NUR update endpoint 2023-02-23 10:50:16 +11:00
5399368853 ci: disabled scheduled build
Since we now pin nixpkgs to the same as the flake input, builds are
deterministic from run to run and there's no point running when the
version hasn't changed.
2023-02-23 10:24:59 +11:00
ec62dc7950 ci: convert build action to full flakes 2023-02-23 10:24:19 +11:00
f20db9aa1b ci: pin nixpkgs to locked version instead of <nixpkgs> 2023-02-23 10:24:19 +11:00
b21cbda697 flake: refactor 2023-02-23 09:49:36 +11:00
ada5f02f08 go-qt: mark as broken 2023-02-14 10:19:47 +11:00
c387334fa5 build(deps): bump cachix/install-nix-action from 18 to 19 (#22)
Bumps [cachix/install-nix-action](https://github.com/cachix/install-nix-action) from 18 to 19.
- [Release notes](https://github.com/cachix/install-nix-action/releases)
- [Commits](https://github.com/cachix/install-nix-action/compare/v18...v19)

---
updated-dependencies:
- dependency-name: cachix/install-nix-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-13 16:59:32 +11:00
57711572f6 build(deps): bump cachix/cachix-action from 11 to 12 (#21)
Bumps [cachix/cachix-action](https://github.com/cachix/cachix-action) from 11 to 12.
- [Release notes](https://github.com/cachix/cachix-action/releases)
- [Commits](https://github.com/cachix/cachix-action/compare/v11...v12)

---
updated-dependencies:
- dependency-name: cachix/cachix-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-10-31 16:19:02 +11:00
a83dcb3ed5 all: apply deadnix 2022-10-26 10:53:36 +11:00
a70a0e914b all: apply nixpkgs-fmt 2022-10-26 10:53:36 +11:00
46b331a413 atlauncher: add opengl to library path 2022-10-18 19:37:22 +11:00
b8e4f0929a psst: 20210122.gec114ac -> 20221012.d70ed81 2022-10-18 17:00:13 +11:00
85aebac63d atlauncher: init at 3.4.20.2 2022-10-18 16:32:10 +11:00
0254963dec build(deps): bump cachix/cachix-action from 10 to 11 (#19)
Bumps [cachix/cachix-action](https://github.com/cachix/cachix-action) from 10 to 11.
- [Release notes](https://github.com/cachix/cachix-action/releases)
- [Commits](https://github.com/cachix/cachix-action/compare/v10...v11)

---
updated-dependencies:
- dependency-name: cachix/cachix-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-10-18 10:00:01 +11:00
0b3995a7e3 build(deps): bump cachix/install-nix-action from 17 to 18 (#20)
Bumps [cachix/install-nix-action](https://github.com/cachix/install-nix-action) from 17 to 18.
- [Release notes](https://github.com/cachix/install-nix-action/releases)
- [Commits](https://github.com/cachix/install-nix-action/compare/v17...v18)

---
updated-dependencies:
- dependency-name: cachix/install-nix-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-10-18 09:59:54 +11:00
7414d45aa4 polybar: update patch 2022-04-20 09:42:36 +10:00
ee0cf26f5b polybar: update patch 2022-04-20 09:42:28 +10:00
658b1fa08c ci: cachix/install-nix-action: 16 -> 17
Bumps [cachix/install-nix-action](https://github.com/cachix/install-nix-action) from 16 to 17.
- [Release notes](https://github.com/cachix/install-nix-action/releases)
- [Commits](https://github.com/cachix/install-nix-action/compare/v16...v17)

---
updated-dependencies:
- dependency-name: cachix/install-nix-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-04-12 14:46:02 +10:00
fc33441151 ci: bump actions/checkout: 2.4.0 -> 3
Bumps [actions/checkout](https://github.com/actions/checkout) from 2.4.0 to 3.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v2.4.0...v3)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-04-05 09:29:22 +10:00
0bb9971c38 psst: refactor for makeDesktopItem changes 2022-03-01 11:16:32 +11:00
1530197670 flake: update inputs 2022-03-01 11:15:00 +11:00
2c575d6596 spotify-ripper: 20161231.gd046419 -> 20210724.5bfd3f7
pytest-forked removed support for python2 in their 1.4.0 release,
breaking the pinned version of mutagen that the old version of
spotify-ripper requires. We rebase onto another fork that has updated it
a bit, adding support for python3 and unpinning their dependencies.
2022-01-25 10:18:28 +11:00
5648d1d005 ci: cachix/install-nix-action: 15 -> 16
Bumps [cachix/install-nix-action](https://github.com/cachix/install-nix-action) from 15 to 16.
- [Release notes](https://github.com/cachix/install-nix-action/releases)
- [Commits](https://github.com/cachix/install-nix-action/compare/v15...v16)

---
updated-dependencies:
- dependency-name: cachix/install-nix-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-12-04 19:12:53 +11:00
d97d0fc259 ci: cachix/install-nix-action: 14 -> 15
Bumps [cachix/install-nix-action](https://github.com/cachix/install-nix-action) from 14 to 15.
- [Release notes](https://github.com/cachix/install-nix-action/releases)
- [Commits](https://github.com/cachix/install-nix-action/compare/v14...v15)

---
updated-dependencies:
- dependency-name: cachix/install-nix-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-11-15 20:34:24 +11:00
f5adcca761 modules: remove deprecated literalExample 2021-11-13 19:15:05 +11:00
6d3581ac49 flake: add singular nixosModule output 2021-11-13 19:05:18 +11:00
94be83c704 modules/dunst: init 2021-11-13 18:52:41 +11:00
fe773352f5 flake: reorganise, remove flake-utils 2021-11-13 18:52:08 +11:00
311fb3ff98 protonmail-bridge: 1.5.6 -> 1.8.10 2021-11-11 22:52:27 +11:00
260db819e7 protonmail-bridge: update build args 2021-11-11 22:52:27 +11:00
ba5c904cb7 flake: update inputs 2021-11-11 22:52:27 +11:00
f616baa7b2 ci: merge workflow changes from upstream 2021-11-11 22:52:22 +11:00
d1ad137626 ci: actions/checkout: 2.3.4 -> 2.4.0
Bumps [actions/checkout](https://github.com/actions/checkout) from 2.3.4 to 2.4.0.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v2.3.4...v2.4.0)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-11-08 21:03:23 +11:00
0335b240b6 ytarchive: init at 0.2.2 2021-10-02 13:44:16 +10:00
7edffe7e56 ci: cachix/install-nix-action: 13 -> 14
Bumps [cachix/install-nix-action](https://github.com/cachix/install-nix-action) from 13 to 14.
- [Release notes](https://github.com/cachix/install-nix-action/releases)
- [Commits](https://github.com/cachix/install-nix-action/compare/v13...v14)

---
updated-dependencies:
- dependency-name: cachix/install-nix-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-09-16 17:20:35 +10:00
f218f59184 alacritty-ligatures: mark as build locally
Sick of it producing issues that don't crop up building localling and
breaking CI.
2021-06-12 14:57:11 +10:00
1b190f8a81 cardboard: mark as broken 2021-06-12 14:36:39 +10:00
f7f4206afa alacritty-ligatures: refactor into standalone file 2021-06-12 14:36:39 +10:00
ca67f392b5 ci: cachix/cachix-action: v9 -> v10
Bumps [cachix/cachix-action](https://github.com/cachix/cachix-action) from v9 to v10.
- [Release notes](https://github.com/cachix/cachix-action/releases)
- [Commits](https://github.com/cachix/cachix-action/compare/v9...73e75d1a0cd4330597a571e8f9dedb41faa2fc4e)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-06-12 11:11:23 +10:00
3ce504e445 ci: bump cachix/cachix-action from v8 to v9 (#9)
Bumps [cachix/cachix-action](https://github.com/cachix/cachix-action) from v8 to v9.
- [Release notes](https://github.com/cachix/cachix-action/releases)
- [Commits](https://github.com/cachix/cachix-action/compare/v8...2689c27f57daedc905895d92ad18fe5ce470df9e)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-06-12 11:11:23 +10:00
58abb0d562 ci: bump cachix/install-nix-action from v12 to v13 (#10)
Bumps [cachix/install-nix-action](https://github.com/cachix/install-nix-action) from v12 to v13.
- [Release notes](https://github.com/cachix/install-nix-action/releases)
- [Commits](https://github.com/cachix/install-nix-action/compare/v12...8d6d5e949675fbadb765c6b1a975047fa5f09b27)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-06-12 11:11:23 +10:00
2cf1b51843 flake: update inputs 2021-06-12 11:11:23 +10:00
d8ae11352e alacritty-ligatures: remove terminfo output 2021-06-12 11:11:23 +10:00
7078ef0677 ci: disable nixos-unstable channel in matrix 2021-06-12 11:11:23 +10:00
b2c0121005 alacritty-ligatures: 0.7.1.20210107.gada2680 -> 0.7.2.20210209.g3ed0430 2021-06-12 11:11:23 +10:00
cf95fb9600 radeon-profile-daemon: add wrapQtAppsHook
Required as part of the latest staging-next commit set to Nixpkgs [1].

Note that this breaks builds on all current non-unstable Nixpkgs
branches (but as the repository notes, they are not supported anyway).

[1]: 02924cf951/doc/languages-frameworks/qt.section.md
2021-06-12 11:11:23 +10:00
3c27e38073 flake: update inputs 2021-02-20 21:26:04 +11:00
86f1713639 alacritty-ligatures: fix rpath flag 2021-02-05 10:21:00 +11:00
3dbd760954 flake: update inputs 2021-02-01 08:50:19 +11:00
8b290acc50 protonmail-bridge: separate builder into new file 2021-02-01 08:50:19 +11:00
b960c361a9 treewide: stdenv.lib -> lib
https://github.com/NixOS/nixpkgs/issues/108938
2021-02-01 08:50:19 +11:00
0c87ddac9e alacritty-ligatures: fix commit hash 2021-01-31 18:12:20 +11:00
45 changed files with 760 additions and 376 deletions

View File

@ -4,3 +4,5 @@ updates:
directory: "/"
schedule:
interval: "weekly"
commit-message:
prefix: "ci"

View File

@ -1,14 +1,26 @@
name: "Build and populate cache"
name: "CI"
on:
pull_request:
push:
schedule:
# rebuild everyday at 6:50
# TIP: Choose a random time here so not all repositories are build at once:
# https://www.random.org/clock-times/?num=1&earliest=01%3A00&latest=08%3A00&interval=5&format=html&rnd=new
- cron: '50 6 * * *'
jobs:
tests:
checks:
strategy:
matrix:
check:
- nixpkgs-fmt
- deadnix
- nur
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
- uses: cachix/install-nix-action@v23
- name: Check ${{ matrix.check }}
# Depends on nixos/nix#7759 to simply `nix flake check`
run: nix run .#checks.$(nix eval --raw --impure --expr "builtins.currentSystem").${{ matrix.check }}
build-and-update:
strategy:
matrix:
# Set this to notify the global nur package registry that changes are
@ -28,30 +40,22 @@ jobs:
# in your repository settings in Github found at https://github.com/<your_githubname>/nur-packages/settings/secrets
cachixName:
- xeals
nixPath:
- nixpkgs=channel:nixos-unstable
- nixpkgs=channel:nixpkgs-unstable
# Disable due to buildGoModule and buildRustPackage
# - nixpkgs=channel:nixos-20.03
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v2.3.4
uses: actions/checkout@v4
- name: Install nix
uses: cachix/install-nix-action@v12
with:
nix_path: "${{ matrix.nixPath }}"
uses: cachix/install-nix-action@v23
- name: Show nixpkgs version
run: nix-instantiate --eval -E '(import <nixpkgs> {}).lib.version'
run: nix eval --impure --expr '(import ./flake-compat.nix { src = ./.; }).lib.version'
- name: Setup cachix
uses: cachix/cachix-action@v8
uses: cachix/cachix-action@v12
if: ${{ matrix.cachixName != '<YOUR_CACHIX_NAME>' }}
with:
name: ${{ matrix.cachixName }}
signingKey: '${{ secrets.CACHIX_SIGNING_KEY }}'
- name: Build nix packages
# TODO switch to default nixpkgs channel once nix-build-uncached 1.0.0 is in stable
run: nix run -I 'nixpkgs=channel:nixos-unstable' nixpkgs.nix-build-uncached -c nix-build-uncached ci.nix -A cacheOutputs
run: nix develop .#ci -c nix-build-uncached ci.nix -A cacheOutputs
- name: Trigger NUR update
if: ${{ matrix.nurRepo != '<YOUR_REPO_NAME>' }}
run: curl -XPOST "https://nur-update.herokuapp.com/update?repo=${{ matrix.nurRepo }}"
run: curl -XPOST "https://nur-update.nix-community.org/update?repo=${{ matrix.nurRepo }}"

24
.github/workflows/update.yml vendored Normal file
View File

@ -0,0 +1,24 @@
name: "Update flake inputs"
on:
workflow_dispatch:
schedule:
# bump weekly at 6:50
- cron: '50 6 * * 1'
jobs:
update-flake:
runs-on: ubuntu-latest
strategy:
fail-fast: false
steps:
- name: Checkout repository
uses: actions/checkout@v4
- uses: cachix/install-nix-action@v23
with:
extra_nix_config: |
access-tokens = github.com=${{ secrets.GITHUB_TOKEN }}
- name: "flake: update inputs"
uses: DeterminateSystems/update-flake-lock@v20
with:
pr-title: "flake: update inputs"
pr-labels: dependencies
commit-msg: "flake: update inputs"

View File

@ -2,7 +2,7 @@
**My personal [NUR](https://github.com/nix-community/NUR) repository**
[![Build and populate cache](https://github.com/xeals/nur-packages/workflows/Build%20and%20populate%20cache/badge.svg)](https://github.com/xeals/nur-packages/actions) [![Cachix Cache](https://img.shields.io/badge/cachix-xeals-blue.svg)](https://xeals.cachix.org)
[![CI](https://github.com/xeals/nur-packages/actions/workflows/build.yml/badge.svg)](https://github.com/xeals/nur-packages/actions) [![Cachix Cache](https://img.shields.io/badge/cachix-xeals-blue.svg)](https://xeals.cachix.org)
## Noteworthy packages

16
ci.nix
View File

@ -9,7 +9,7 @@
# then your CI will be able to build and cache only those packages for
# which this is possible.
{ pkgs ? import <nixpkgs> {} }:
{ pkgs ? import ./flake-compat.nix { src = ./.; } }:
with builtins;
@ -29,10 +29,10 @@ let
let
f = p:
if shouldRecurseForDerivations p then flattenPkgs p
else if isDerivation p then [p]
else [];
else if isDerivation p then [ p ]
else [ ];
in
concatMap f (attrValues s);
concatMap f (attrValues s);
outputsOf = p: map (o: p.${o}) p.outputs;
@ -40,10 +40,10 @@ let
nurPkgs =
flattenPkgs
(listToAttrs
(map (n: nameValuePair n nurAttrs.${n})
(filter (n: !isReserved n)
(attrNames nurAttrs))));
(listToAttrs
(map (n: nameValuePair n nurAttrs.${n})
(filter (n: !isReserved n)
(attrNames nurAttrs))));
in

View File

@ -7,9 +7,11 @@
# nix-build -A mypackage
{ pkgs ? import <nixpkgs> { } }:
import ./pkgs/top-level/all-packages.nix { inherit pkgs; }
// {
let
system = pkgs.stdenv.hostPlatform.system;
packages = import ./pkgs/top-level { localSystem = system; inherit pkgs; };
in
packages // {
# The `lib`, `modules`, and `overlay` names are special
lib = import ./lib { inherit pkgs; }; # functions
modules = import ./modules; # NixOS modules

12
flake-compat.nix Normal file
View File

@ -0,0 +1,12 @@
{ src, system ? builtins.currentSystem or "unknown-system" }:
let
lockFilePath = "${src}/flake.lock";
lockFile = builtins.fromJSON (builtins.readFile lockFilePath);
nixpkgs = lockFile.nodes.nixpkgs.locked;
tarball = fetchTarball {
url = "https://github.com/${nixpkgs.owner}/${nixpkgs.repo}/archive/${nixpkgs.rev}.zip";
sha256 = nixpkgs.narHash;
};
in
import tarball { inherit system; }

30
flake.lock generated
View File

@ -1,12 +1,15 @@
{
"nodes": {
"flake-utils": {
"inputs": {
"systems": "systems"
},
"locked": {
"lastModified": 1605370193,
"narHash": "sha256-YyMTf3URDL/otKdKgtoMChu4vfVL3vCMkRqpGifhUn0=",
"lastModified": 1694529238,
"narHash": "sha256-zsNZZGTGnMOf9YpHKJqMSsa0dXbfmxeoJ7xHlrt+xmY=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "5021eac20303a61fafe17224c087f5519baed54d",
"rev": "ff7b65b44d01cf9ba6a71320833626af21126384",
"type": "github"
},
"original": {
@ -17,11 +20,11 @@
},
"nixpkgs": {
"locked": {
"lastModified": 1611414562,
"narHash": "sha256-u002KfYA7Uk3vffnnmLz88BmxOzixYFdh+8II6ZT+Kg=",
"lastModified": 1694948089,
"narHash": "sha256-d2B282GmQ9o8klc22/Rbbbj6r99EnELQpOQjWMyv0rU=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "9d6fd2ba135c5b5c85c3332604d39b43e93b8298",
"rev": "5148520bfab61f99fd25fb9ff7bfbb50dad3c9db",
"type": "github"
},
"original": {
@ -36,6 +39,21 @@
"flake-utils": "flake-utils",
"nixpkgs": "nixpkgs"
}
},
"systems": {
"locked": {
"lastModified": 1681028828,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
"owner": "nix-systems",
"repo": "default",
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
"type": "github"
},
"original": {
"owner": "nix-systems",
"repo": "default",
"type": "github"
}
}
},
"root": "root",

View File

@ -1,47 +1,72 @@
{
description = "xeals's flake";
description = "xeals's Nix repository";
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable";
flake-utils.url = "github:numtide/flake-utils";
};
inputs.nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable";
inputs.flake-utils.url = "github:numtide/flake-utils";
outputs = { self, nixpkgs, flake-utils }:
let
inherit (flake-utils.lib) eachDefaultSystem flattenTree;
inherit (nixpkgs.lib.attrsets) filterAttrs mapAttrs;
inherit (nixpkgs) lib;
inherit (flake-utils.lib) mkApp;
in
{
nixosModules = mapAttrs (_: path: import path) (import ./modules);
flake-utils.lib.eachDefaultSystem
(system:
let
pkgs = import nixpkgs { inherit system; };
in
{
packages = import ./pkgs/top-level { localSystem = system; inherit pkgs; };
checks = {
nixpkgs-fmt = pkgs.writeShellScriptBin "nixpkgs-fmt-check" ''
${pkgs.nixpkgs-fmt}/bin/nixpkgs-fmt --check .
'';
deadnix = pkgs.writeShellScriptBin "deadnix-check" ''
${pkgs.deadnix}/bin/deadnix --fail .
'';
# Ensures that the NUR bot can evaluate and find all our packages.
# Normally we'd also run with `--option restrict-eval true`, but
# this is incompatible with flakes because reasons.
nur = pkgs.writeShellScriptBin "nur-check" ''
# Prefer nixpkgs channel (actual build), otherwise read from flake.lock (CI)
if ! nixpkgs=$(nix-instantiate --find-file nixpkgs 2>/dev/null); then
_rev=$(${pkgs.jq}/bin/jq -r .nodes.nixpkgs.locked.rev flake.lock)
nixpkgs="https://github.com/nixos/nixpkgs/archive/''${_rev}.tar.gz"
fi
nix-env -f . -qa \* --meta \
--allowed-uris https://static.rust-lang.org \
--option allow-import-from-derivation true \
--drv-path --show-trace \
-I nixpkgs="$nixpkgs" \
-I ./ \
--json | ${pkgs.jq}/bin/jq -r 'values | .[].name'
'';
};
devShells.ci = pkgs.mkShellNoCC {
buildInputs = [ pkgs.nix-build-uncached ];
};
apps = {
alacritty = mkApp { drv = pkgs.alacritty-ligatures; exePath = "/bin/alacritty"; };
protonmail-bridge = mkApp { drv = pkgs.protonmail-bridge; };
protonmail-bridge-headless = mkApp { drv = pkgs.protonmail-bridge; };
psst-cli = mkApp { drv = pkgs.psst; exePath = "/bin/psst-cli"; };
psst-gui = mkApp { drv = pkgs.psst; exePath = "/bin/psst-gui"; };
samrewritten = mkApp { drv = pkgs.samrewritten; };
spotify-ripper = mkApp { drv = pkgs.spotify-ripper; };
};
})
// {
nixosModules = lib.mapAttrs (_: path: import path) (import ./modules) // {
default = {
imports = lib.attrValues self.nixosModules;
};
};
overlays = import ./overlays // {
pkgs = final: prev: import ./pkgs/top-level/all-packages.nix { pkgs = prev; };
pkgs = _: prev: import ./pkgs/top-level/all-packages.nix { pkgs = prev; };
default = _: _: { xeals = nixpkgs.lib.composeExtensions self.overlays.pkgs; };
};
overlay = final: prev: {
xeals = nixpkgs.lib.composeExtensions self.overlays.pkgs;
};
} // eachDefaultSystem (system:
let
pkgs = nixpkgs.legacyPackages.${system};
xPkgs = import ./pkgs/top-level/all-packages.nix { inherit pkgs; };
mkApp = opts: { type = "app"; } // opts;
in
rec {
packages = filterAttrs
(attr: drv: builtins.elem system (drv.meta.platforms or [ ]))
(flattenTree xPkgs);
apps = flattenTree {
alacritty = mkApp { program = "${packages.alacritty-ligatures}/bin/alacritty"; };
protonmail-bridge = mkApp { program = "${packages.protonmail-bridge}/bin/protonmail-bridge"; };
protonmail-bridge-headless = mkApp { program = "${packages.protonmail-bridge}/bin/protonmail-bridge"; };
psst = {
cli = mkApp { program = "${packages.psst}/bin/psst-cli"; };
gui = mkApp { program = "${packages.psst}/bin/psst-gui"; };
};
samrewritten = mkApp { program = "${packages.samrewritten}/bin/samrewritten"; };
spotify-ripper = mkApp { program = "${packages.spotify-ripper}/bin/spotify-ripper"; };
};
});
};
}

View File

@ -2,6 +2,7 @@
amdgpu-common = ./services/hardware/amdgpu-common.nix;
amdgpu-fan = ./services/hardware/amdgpu-fan.nix;
amdgpu-pwm = ./services/hardware/amdgpu-pwm.nix;
dunst = ./services/x11/dunst.nix;
radeon-profile-daemon = ./services/hardware/radeon-profile-daemon.nix;
}

View File

@ -1,4 +1,4 @@
{ config, lib, pkgs, ... }:
{ lib, ... }:
with lib;
@ -7,7 +7,7 @@ with lib;
cards = mkOption {
type = types.listOf types.str;
default = [ "card0" ];
example = literalExample ''[ "card0" ]'';
example = [ "card0" "card1" ];
description = ''
A list of cards to enable fan configuration for. The identifiers for
each device can be found in /sys/class/drm/ as card0, card1, etc.

View File

@ -33,14 +33,12 @@ in
[ 75 89 ]
[ 80 100 ]
];
example = literalExample ''
[
[ 0 0 ]
[ 40 30 ]
[ 60 50 ]
[ 80 100 ]
]
'';
example = [
[ 0 0 ]
[ 40 30 ]
[ 60 50 ]
[ 80 100 ]
];
description = ''
A list of temperature-fan speed pairs. The temperature is specified in
degrees celcius, and speed is specified in %.

View File

@ -1,4 +1,4 @@
{ config, lib, pkgs, ... }:
{ config, lib, ... }:
with lib;

View File

@ -0,0 +1,68 @@
{ config, lib, pkgs, ... }:
with lib;
let
cfg = config.services.dunst;
in
{
options.services.dunst = {
enable = mkEnableOption "dunst";
package = mkOption {
type = types.package;
default = pkgs.dunst;
};
settings = mkOption {
type = types.nullOr types.attrs;
default = null;
description = ''
Configuration set alternative to <literal>configFile</literal>.
'';
example = {
global = {
monitor = 0;
follow = "none";
};
};
};
configFile = mkOption {
type = types.nullOr types.path;
default = null;
description = "Path to dunstrc configuration file.";
};
};
config = mkIf cfg.enable {
assertions = [
{
assertion = !(cfg.settings != null && cfg.configFile != null);
message = "only one of services.dunst.settings or .configFile may be specified";
}
];
environment.systemPackages = [ (getOutput "man" cfg.package) ];
systemd.user.services.dunst = {
description = "Dunst notification daemon";
documentation = [ "man:dunst(1)" ];
after = [ "graphical-session-pre.target" ];
partOf = [ "graphical-session.target" ];
serviceConfig = {
Type = "dbus";
BusName = "org.freedesktop.Notifications";
ExecStart =
let
config =
if (cfg.settings != null)
then pkgs.writeText "dunstrc" (generators.toINI { } cfg.settings)
else if (cfg.configFile != null)
then cfg.configFile
else null;
in
"${cfg.package}/bin/dunst ${optionalString (config != null) "-conf ${config}"}";
};
};
};
}

View File

@ -2,7 +2,7 @@
# case where you don't want to add the whole NUR namespace to your
# configuration.
self: super:
_self: super:
let

View File

@ -1,4 +1,4 @@
{ stdenv
{ lib
, fetchFromGitHub
, python3Packages
@ -20,7 +20,7 @@ python3Packages.buildPythonApplication rec {
doCheck = false;
meta = with stdenv.lib; {
meta = with lib; {
homepage = "https://github.com/Prior99/mopidy-subidy";
description = "Mopidy extension for playing music from Subsonic servers";
license = licenses.bsd3;

View File

@ -21,21 +21,25 @@ let
];
};
generateCommon = lib.makeOverridable ({
common ? ./manual-common-packages.nix
}: let
generateCommon = lib.makeOverridable (
{ common ? ./manual-common-packages.nix
}:
let
imported = import common {
inherit (self) callPackage;
};
imported = import common {
inherit (self) callPackage;
};
super = imported;
super = imported;
overrides = { };
overrides = { };
jetbrainsPlugins = super // overrides;
jetbrainsPlugins = super // overrides;
in jetbrainsPlugins // { inherit commonBuild; });
in
jetbrainsPlugins // { inherit commonBuild; }
);
in generateCommon { }
in
generateCommon { }

View File

@ -9,21 +9,25 @@ let
jetbrainsPlatforms = [ "idea-community" "idea-ultimate" ];
};
generateIdea = lib.makeOverridable ({
idea ? ./manual-idea-packages.nix
}: let
generateIdea = lib.makeOverridable (
{ idea ? ./manual-idea-packages.nix
}:
let
imported = import idea {
inherit (self) callPackage;
};
imported = import idea {
inherit (self) callPackage;
};
super = imported;
super = imported;
overrides = { };
overrides = { };
ideaPlugins = super // overrides;
ideaPlugins = super // overrides;
in ideaPlugins // { inherit ideaBuild; });
in
ideaPlugins // { inherit ideaBuild; }
);
in generateIdea { }
in
generateIdea { }

View File

@ -2,12 +2,10 @@ diff --git a/include/components/types.hpp b/include/components/types.hpp
index 8125d4b..c435f4a 100644
--- a/include/components/types.hpp
+++ b/include/components/types.hpp
@@ -57,7 +57,7 @@ enum class controltag {
R, // Reset all open tags (B, F, T, o, u). Used at module edges
@@ -43,5 +43,6 @@ enum class controltag {
DOUBLE_MIDDLE,
DOUBLE_RIGHT,
+ EXTRA,
// Terminator value, do not use
BTN_COUNT,
};
-enum class mousebtn { NONE = 0, LEFT, MIDDLE, RIGHT, SCROLL_UP, SCROLL_DOWN, DOUBLE_LEFT, DOUBLE_MIDDLE, DOUBLE_RIGHT };
+enum class mousebtn { NONE = 0, LEFT, MIDDLE, RIGHT, SCROLL_UP, SCROLL_DOWN, DOUBLE_LEFT, DOUBLE_MIDDLE, DOUBLE_RIGHT, EXTRA };
enum class strut {
LEFT = 0,

View File

@ -0,0 +1,48 @@
{ lib
, fetchFromGitHub
, buildGoModule
, pkg-config
, libsecret
}:
{ pname
, tags
, ...
}@args:
buildGoModule (lib.recursiveUpdate args rec {
inherit pname;
version = "1.8.10";
src = fetchFromGitHub {
owner = "ProtonMail";
repo = "proton-bridge";
rev = "br-${version}";
sha256 = "1na8min9cmn82lpad58abw6837k303fr09l6cvzswaxs73f231ig";
};
vendorSha256 = "1219xa1347877bfhnid15y6w9s4hf1czbrmll2iha4gpsmg066bb";
nativeBuildInputs = (args.nativeBuildInputs or [ ]) ++ [
pkg-config
];
buildInputs = (args.buildInputs or [ ]) ++ [
libsecret
];
inherit tags;
ldflags = [
"-X github.com/ProtonMail/proton-bridge/pkg/constants.Version=${version}"
"-X github.com/ProtonMail/proton-bridge/pkg/constants.Revision=${version}"
"-X github.com/ProtonMail/proton-bridge/pkg/constants.BuildDate=unknown"
];
meta = with lib; {
description = "Integrate ProtonMail paid account with any program that supports IMAP and SMTP";
homepage = "https://protonmail.com";
license = licenses.gpl3;
plaforms = platforms.x86_64;
};
})

View File

@ -1,4 +1,4 @@
{ stdenv
{ lib
, fetchFromGitHub
, buildGoModule
@ -7,62 +7,12 @@
, libsecret
, pkg-config
, qtbase
, qtdoc
}:
let
builder =
{ pname
, tags
, ...
}@args:
buildGoModule (stdenv.lib.recursiveUpdate args rec {
inherit pname;
version = "1.5.6";
src = fetchFromGitHub {
owner = "ProtonMail";
repo = "proton-bridge";
rev = "br-${version}";
sha256 = "1na8min9cmn82lpad58abw6837k303fr09l6cvzswaxs73f231ig";
};
vendorSha256 = "1219xa1347877bfhnid15y6w9s4hf1czbrmll2iha4gpsmg066bb";
nativeBuildInputs = (args.nativeBuildInputs or [ ]) ++ [
pkg-config
];
buildInputs = (args.buildInputs or [ ]) ++ [
libsecret
];
buildFlagsArray =
let
t = "github.com/ProtonMail/proton-bridge/pkg/constants";
in
[
"-tags=${tags}"
''
-ldflags=
-X ${t}.Version=${version}
-X ${t}.Revision=unknown
-X ${t}.BuildDate=unknown
''
];
meta = with stdenv.lib; {
description = "Integrate ProtonMail paid account with any program that supports IMAP and SMTP";
homepage = "https://protonmail.com";
license = licenses.gpl3;
plaforms = platforms.x86_64;
};
});
builder = import ./common.nix {
inherit lib fetchFromGitHub buildGoModule libsecret pkg-config;
};
in
{
protonmail-bridge = builder (import ./app.nix { inherit qtbase go goModules; });
protonmail-bridge-headless = builder (import ./headless.nix { });

View File

@ -1,30 +1,17 @@
{}:
rec {
{
pname = "protonmail-bridge-headless";
tags = "pmapi_prod nogui";
tags = [ "pmapi_prod" "nogui" ];
# FIXME: There's something fucky going on in the buildFlagsArray
# substitution. I shouldn't need to do this.
buildPhase =
let
t = "github.com/ProtonMail/proton-bridge/pkg/constants";
in
''
runHook preBuild
go install \
-tags="${tags}" \
-ldflags="-X ${t}.Version=1.3.2 -X ${t}.Revision=unknown -X ${t}.BuildDate=unknown" \
cmd/Desktop-Bridge/main.go
mv $GOPATH/bin/main $GOPATH/bin/Desktop-Bridge
runHook postBuild
'';
# REVIEW: Some issue with IMAP tests that probably fail due to network
# sandboxing.
doCheck = false;
# Fix up name.
postInstall = ''
mv $out/bin/Desktop-Bridge $out/bin/protonmail-bridge
mv $out/bin/Import-Export $out/bin/protonmail-import-export
'';
}

View File

@ -0,0 +1,55 @@
{ stdenv
, lib
, fetchFromGitHub
, alacritty
, fontconfig
, freetype
, libglvnd
, libxcb
}:
alacritty.overrideAttrs (oldAttrs: rec {
pname = "${oldAttrs.pname}-ligatures";
version = "0.7.2.20210209.g3ed0430";
src = fetchFromGitHub {
owner = "zenixls2";
repo = "alacritty";
fetchSubmodules = true;
rev = "3ed043046fc74f288d4c8fa7e4463dc201213500";
sha256 = "1dGk4ORzMSUQhuKSt5Yo7rOJCJ5/folwPX2tLiu0suA=";
};
cargoDeps = oldAttrs.cargoDeps.overrideAttrs (lib.const {
name = "${pname}-${version}-vendor.tar.gz";
inherit src;
outputSha256 = "pONu6caJmEKnbr7j+o9AyrYNpS4Q8OEjNZOhGTalncc=";
});
ligatureInputs = [
fontconfig
freetype
libglvnd
stdenv.cc.cc.lib
libxcb
];
preferLocalBuild = true;
buildInputs = (oldAttrs.buildInputs or [ ]) ++ ligatureInputs;
# HACK: One of the ligature libraries required the C++ stdlib at runtime,
# and I can't work out a better way to push it to the RPATH.
postInstall = lib.optional (!stdenv.isDarwin) ''
patchelf \
--set-rpath ${lib.makeLibraryPath ligatureInputs}:"$(patchelf --print-rpath $out/bin/alacritty)" \
$out/bin/alacritty
'';
meta = oldAttrs.meta // {
description = "Alacritty with ligature patch applied";
homepage = "https://github.com/zenixls2/alacritty/tree/ligature";
};
})

View File

@ -1,4 +1,4 @@
{ stdenv
{ lib
, fetchFromGitHub
, python3Packages
@ -20,7 +20,12 @@ python3Packages.buildPythonApplication rec {
pyyaml
];
meta = with stdenv.lib; {
patchPhase = ''
substituteInPlace setup.py \
--replace PROJECTVERSION "${version}"
'';
meta = with lib; {
description = "Fan controller for AMD graphics cards running the amdgpu driver on Linux";
homepage = "https://github.com/chestm007/amdgpu-fan";
license = licenses.gpl2;

View File

@ -0,0 +1,46 @@
{ stdenv
, lib
, fetchurl
, makeWrapper
, jdk17
, udev
, xorg
}:
stdenv.mkDerivation rec {
pname = "atlauncher";
version = "3.4.33.1";
src = fetchurl {
url = "https://github.com/ATLauncher/ATLauncher/releases/download/v${version}/ATLauncher-${version}.jar";
hash = "sha256-YfTo3Vp4ACQPQJWCujpAv8J0i2FuG5MLaIjNdBPN1Ns=";
};
dontUnpack = true;
nativeBuildInputs = [ makeWrapper ];
installPhase = ''
mkdir -p $out/bin $out/share/java
cp $src $out/share/java/ATLauncher.jar
makeWrapper ${jdk17}/bin/java $out/bin/atlauncher \
--prefix LD_LIBRARY_PATH : "${lib.makeLibraryPath [ xorg.libXxf86vm udev ]}" \
--add-flags "-jar $out/share/java/ATLauncher.jar" \
--add-flags "--working-dir \''${XDG_DATA_HOME:-\$HOME/.local/share}/ATLauncher" \
--add-flags "--no-launcher-update"
'';
meta = {
description = "Minecraft launcher";
longDescription = ''
ATLauncher is a Launcher for Minecraft which integrates multiple different
ModPacks to allow you to download and install ModPacks easily and quickly.
'';
sourceProvenance = [
(lib.sourceTypes.binaryBytecode or { shortName = "binaryBytecode"; isSource = false; })
];
license = lib.licenses.gpl3Only;
platforms = lib.platforms.all;
homepage = "https://atlauncher.com/";
};
}

View File

@ -1,15 +1,12 @@
{ stdenv
, lib
, fetchFromGitLab
, fetchzip
, cereal
, cmake
, git
, libGL
, libX11
, libinput
, libxkbcommon
, mesa
, meson
, ninja
, pixman
@ -18,7 +15,6 @@
, wayland
, wayland-protocols
, wlroots
, xwayland
}:
stdenv.mkDerivation rec {
@ -62,10 +58,11 @@ stdenv.mkDerivation rec {
passthru.providedSessions = [ "cardboard" ];
meta = {
meta = with lib; {
description = "Scrollable tiling Wayland compositor designed with laptops in mind";
homepage = "https://gitlab.com/cardboardwm/cardboard";
license = stdenv.lib.licenses.gpl3;
license = licenses.gpl3;
platforms = wlroots.meta.platforms;
broken = true;
};
}

View File

@ -0,0 +1,94 @@
{ lib
, stdenv
, fetchurl
, writeScriptBin
, appimageTools
, copyDesktopItems
, makeDesktopItem
}:
let
pname = "cura5";
version = "5.4.0";
name = "${pname}-${version}";
cura5 = appimageTools.wrapType2 {
inherit pname version;
src = fetchurl {
url = "https://github.com/Ultimaker/Cura/releases/download/${version}/Ultimaker-Cura-${version}-linux-modern.AppImage";
hash = "sha256-QVv7Wkfo082PH6n6rpsB79st2xK2+Np9ivBg/PYZd74=";
};
extraPkgs = _: [ ];
};
script = writeScriptBin pname ''
#!${stdenv.shell}
# AppImage version of Cura loses current working directory and treats all paths relateive to $HOME.
# So we convert each of the files passed as argument to an absolute path.
# This fixes use cases like `cd /path/to/my/files; cura mymodel.stl anothermodel.stl`.
args=()
for a in "$@"; do
if [ -e "$a" ]; then
a="$(realpath "$a")"
fi
args+=("$a")
done
exec "${cura5}/bin/${name}" "''${args[@]}"
'';
in
stdenv.mkDerivation rec {
inherit pname version;
dontUnpack = true;
nativeBuildInputs = [ copyDesktopItems ];
desktopItems = [
# Based on upstream.
# https://github.com/Ultimaker/Cura/blob/main/packaging/AppImage/cura.desktop.jinja
(makeDesktopItem {
name = "cura";
desktopName = "UltiMaker Cura";
genericName = "3D Printing Software";
comment = meta.longDescription;
exec = "cura5";
icon = "cura-icon";
terminal = false;
type = "Application";
mimeTypes = [
"model/stl"
"application/vnd.ms-3mfdocument"
"application/prs.wavefront-obj"
"image/bmp"
"image/gif"
"image/jpeg"
"image/png"
"text/x-gcode"
"application/x-amf"
"application/x-ply"
"application/x-ctm"
"model/vnd.collada+xml"
"model/gltf-binary"
"model/gltf+json"
"model/vnd.collada+xml+zip"
];
categories = [ "Graphics" ];
keywords = [ "3D" "Printing" ];
})
];
# TODO: Extract cura-icon from AppImage source.
installPhase = ''
mkdir -p $out/bin
cp ${script}/bin/cura5 $out/bin/cura5
runHook postInstall
'';
meta = {
description = "3D printing software";
homepage = "https://github.com/ultimaker/cura";
longDescription = ''
Cura converts 3D models into paths for a 3D printer. It prepares your print for maximum accuracy, minimum printing time and good reliability with many extra features that make your print come out great.
'';
license = lib.licenses.lgpl3;
platforms = [ "x86_64-linux" ];
};
}

View File

@ -1,7 +1,7 @@
{ stdenv
, lib
, fetchFromGitHub
, coreutils
, autoreconfHook
}:
@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
mkdir -p $out/include $out/lib
'';
meta = with stdenv.lib; {
meta = with lib; {
homepage = "https://github.com/xant/libhl";
description = "Simple and fast C library implementing a thread-safe API to manage hash-tables, linked lists, lock-free ring buffers and queues ";
license = licenses.lgpl3;

View File

@ -1,4 +1,5 @@
{ stdenv
, lib
, fetchFromGitHub
, autoreconfHook
@ -25,10 +26,10 @@ stdenv.mkDerivation rec {
configureFlags = [ "--with-moduledir=\${out}/lib/security" ];
meta = with stdenv.lib; {
meta = with lib; {
homepage = "https://github.com/cruegge/pam-gnupg";
description = "Unlock GnuPG keys on login";
license = licenses.gpl3;
inherit (pam.meta) platforms;
platforms = pam.meta.platforms;
};
}

View File

@ -1,9 +1,10 @@
{ stdenv
{ lib
, fetchFromGitHub
, rustPlatform
, cmake
, pkg-config
, alsaLib
, dbus
, openssl
# GUI
@ -14,27 +15,27 @@
}:
let
inherit (stdenv.lib) optional optionals;
inherit (lib) optional optionals;
in
assert withGui -> gtk3.meta.available;
rustPlatform.buildRustPackage rec {
pname = "psst";
version = "20210122.gec114ac";
version = "20221012.d70ed81";
src = fetchFromGitHub {
owner = "jpochyla";
repo = "psst";
rev = "ec114ac8299179c8dd51bc026d6060dc75658b83";
sha256 = "02mh6hjnlimadc3w899hccss31p1r4sxgb5880zwn7yiycbq3yyj";
rev = "d70ed8104533dc15bc36b989ba8428872c9b578f";
hash = "sha256-ZKhHN0ruLb6ZVKkrKv/YawRsVop6SP1QF/nrtkmA8P8=";
fetchSubmodules = true;
};
cargoSha256 = "1m01rycnpy9asspih1x9l5ppfbjnqcfdycmzgkrmdwzah3x8s8xc";
cargoSha256 = "sha256-zH6+EV78FDVOYEFXk0f54pH2Su0QpK1I0bHqzIiMdBo=";
nativeBuildInputs = [ pkg-config ]
++ optional withGui copyDesktopItems;
buildInputs = [ openssl ]
buildInputs = [ alsaLib dbus openssl ]
++ optional withGui gtk3;
cargoBuildFlags = optionals (!withGui) [
@ -54,16 +55,16 @@ rustPlatform.buildRustPackage rec {
name = pname;
desktopName = "psst";
genericName = "Spotify Player";
categories = "AudioVideo;Audio;Network;Player;";
categories = [ "AudioVideo" "Audio" "Network" "Player" ];
comment = "Spotify client with native GUI";
exec = "psst-gui";
extraEntries = "Keywords=spotify;music;";
keywords = [ "spotify" "music" ];
icon = "spotify";
type = "Application";
})
];
meta = with stdenv.lib; {
meta = with lib; {
description = "Fast and multi-platform Spotify client with native GUI ";
homepage = "https://github.com/jpochyla/psst";
license = licenses.mit;

View File

@ -1,7 +1,6 @@
{ stdenv
, lib
, fetchFromGitHub
, makeWrapper
, curl
, gnumake
, gnutls
@ -40,7 +39,7 @@ stdenv.mkDerivation rec {
--replace /usr/bin/samrewritten $out/bin/samrewritten
'';
meta = with stdenv.lib; {
meta = with lib; {
description = "Steam Achievement Manager For Linux";
homepage = "https://github.com/PaulCombal/SamRewritten";
license = licenses.gpl3;

View File

@ -2,7 +2,7 @@ diff --git a/setup.py b/setup.py
index a800b3b..8967921 100755
--- a/setup.py
+++ b/setup.py
@@ -22,14 +22,13 @@ setup(
@@ -33,14 +33,13 @@ setup(
name='spotify-ripper',
version='2.9.1',
packages=find_packages(exclude=["tests"]),
@ -18,11 +18,7 @@ index a800b3b..8967921 100755
],
},
@@ -67,7 +66,5 @@ setup(
'Programming Language :: Python :: 3',
'Programming Language :: Python :: 3.4',
],
- long_description=_read('README.rst'),
)
@@ -121,3 +121,2 @@ setup(
return True
-create_default_dir()

View File

@ -1,42 +1,52 @@
{ stdenv
{ lib
, fetchFromGitHub
, python2Packages
, python3Packages
, lame
, aacSupport ? false, faac
, alacSupport ? false, libav
, flacSupport ? false, flac
, m4aSupport ? false, mp4Support ? false, fdk-aac-encoder
, oggSupport ? false, vorbisTools
, opusSupport ? false, opusTools
, aacSupport ? false
, faac
, alacSupport ? false
, libav
, flacSupport ? false
, flac
, m4aSupport ? false
, mp4Support ? false
, fdk-aac-encoder
, oggSupport ? false
, vorbisTools
, opusSupport ? false
, opusTools
}:
assert aacSupport -> faac.meta.available;
assert alacSupport -> libav.meta.available;
assert flacSupport -> flac.meta.available;
assert aacSupport -> faac.meta.available;
assert alacSupport -> libav.meta.available;
assert flacSupport -> flac.meta.available;
assert m4aSupport || mp4Support -> fdk-aac-encoder.meta.available;
assert oggSupport -> vorbisTools.meta.available;
assert opusSupport -> opusTools.meta.available;
assert oggSupport -> vorbisTools.meta.available;
assert opusSupport -> opusTools.meta.available;
python2Packages.buildPythonApplication rec {
python3Packages.buildPythonApplication rec {
pname = "spotify-ripper";
version = "20161231.gd046419";
version = "20210724.5bfd3f7";
src = fetchFromGitHub {
owner = "hbashton";
owner = "ast261";
repo = pname;
rev = "d0464193dead7bd3ac7580e98bde86a0f323acae";
sha256 = "003d6br20f1cf4qvmpl62bk0k4h4v66ib76wn36c23bnh9x5q806";
rev = "5bfd3f7a52f2767b433fd315145409837a3c33f0";
sha256 = "sha256-LLunGzs9Mg4S00Su260b+M5w/XwS+kICl/YXQdR/cPI=";
};
propagatedBuildInputs = (with python2Packages; [
propagatedBuildInputs = (with python3Packages; [
colorama
mutagen
pyspotify
requests
schedule
setuptools
spotipy
]) ++ [
lame
(if flacSupport then flac else null)
(if alacSupport then libav else null)
(if aacSupport then faac else null)
@ -48,7 +58,7 @@ python2Packages.buildPythonApplication rec {
# Remove impure executables.
patches = [ ./fix-setup.patch ];
meta = {
meta = with lib; {
description = "Rip Spotify URIs to audio files, including ID3 tags and cover art";
longDescription = ''
Spotify-ripper is a small ripper script for Spotify that rips Spotify URIs
@ -58,6 +68,6 @@ python2Packages.buildPythonApplication rec {
'';
homepage = "https://github.com/hbashton/spotify-ripper";
# spotify-ripper itself is MIT, but the upstream libspotify is unfree.
license = stdenv.lib.licenses.unfree;
license = licenses.unfree;
};
}

View File

@ -0,0 +1,38 @@
{ stdenv
, lib
, fetchFromGitHub
, python3
, ffmpeg
}:
stdenv.mkDerivation rec {
pname = "ytarchive";
version = "0.2.2+0304577";
src = fetchFromGitHub {
owner = "Kethsar";
repo = "ytarchive";
# NOTE: Last revision where it was written in Python, so don't change
# without rewriting the derivation.
rev = "030457749d6c8d1d62240bfbad659326f3cd3a30";
hash = "sha256-mvmdkxZxlEbWc7GR8LfyxTJOeEhjCoYyeatDx8l1uhM=";
};
propagatedBuildInputs = [
python3
ffmpeg
];
phases = [ "unpackPhase" "installPhase" "fixupPhase" ];
installPhase = ''
install -Dm00755 ytarchive.py $out/bin/ytarchive
'';
meta = with lib; {
description = "Garbage Youtube livestream downloader";
homepage = "https://github.com/Kethsar/ytarchive";
license = licenses.mit;
platforms = python3.meta.platforms;
};
}

View File

@ -1,4 +1,5 @@
{ stdenv
, lib
, fetchFromGitHub
, installShellFiles
@ -25,10 +26,10 @@ stdenv.mkDerivation {
installShellCompletion --zsh _zshz
'';
meta = {
meta = with lib; {
description = ''Jump quickly to directories that you have visited "frecently." A native ZSH port of z.sh.'';
homepage = "https://github.com/agkozak/zsh-z";
license = stdenv.lib.licenses.mit;
license = licenses.mit;
platforms = zsh.meta.platforms;
};
}

View File

@ -1,4 +1,4 @@
{ stdenv
{ lib
, fetchFromGitHub
, buildGoModule
, makeWrapper
@ -59,9 +59,10 @@ buildGoModule rec {
done
'';
meta = with stdenv.lib; {
meta = with lib; {
homepage = "https://github.com/therecipe/qt";
description = "Qt bindings for Go";
license = licenses.lgpl3;
broken = true;
};
}

View File

@ -1,4 +1,4 @@
{ stdenv
{ lib
, buildPythonPackage
, fetchPypi
}:
@ -14,9 +14,9 @@ buildPythonPackage rec {
doCheck = false;
meta = {
meta = with lib; {
homepage = "https://stuffivelearned.org/doku.php?id=programming:python:py-sonic";
license = stdenv.lib.licenses.gpl3;
license = licenses.gpl3;
description = "A python wrapper library for the Subsonic REST API";
};
}

View File

@ -1,16 +1,18 @@
{ stdenv
, lib
, fetchFromGitHub
, qtbase
, qmake
, wrapQtAppsHook ? null # Temporary backwards compatibility
}:
stdenv.mkDerivation rec {
pname = "radeon-profile-daemon";
version = "20190603.g06qxq2h";
nativeBuildInputs = [ qmake ];
buildInputs = [ qtbase ];
nativeBuildInputs = [ qmake wrapQtAppsHook ];
src = (
fetchFromGitHub {
@ -26,7 +28,7 @@ stdenv.mkDerivation rec {
--replace "/usr/" "$out/"
'';
meta = with stdenv.lib; {
meta = with lib; {
description = "System daemon for reading current clocks of AMD Radeon cards";
homepage = "https://github.com/marazmista/radeon-profile-daemon";
license = licenses.gpl2Plus;

View File

@ -1,55 +1,8 @@
{ pkgs }:
rec {
# Alacritty with the unmerged ligature patches applied.
alacritty-ligatures = pkgs.alacritty.overrideAttrs (oldAttrs: rec {
pname = "${oldAttrs.pname}-ligatures";
version = "0.7.1.20210107.gada2680";
src = pkgs.fetchFromGitHub {
owner = "zenixls2";
repo = "alacritty";
fetchSubmodules = true;
rev = "ada2680e79a8f53cd350263c8cc91d2e2a264d81";
sha256 = "0c0k1ib1dl35731zyjb32apyn28xc63mhbwsig5mz3hnkyk5nisr";
};
cargoDeps = oldAttrs.cargoDeps.overrideAttrs (pkgs.lib.const {
name = "${pname}-${version}-vendor.tar.gz";
inherit src;
outputHash = "1d1yz4xmal0f3c0pcn59lxfh5a3532nv7dv7s95svvi8qsvnk9gv";
});
ligatureInputs = [
pkgs.fontconfig
pkgs.freetype
pkgs.libglvnd
pkgs.stdenv.cc.cc.lib
pkgs.xlibs.libxcb
];
buildInputs = (oldAttrs.buildInputs or []) ++ ligatureInputs;
# HACK: One of the ligature libraries required the C++ stdlib at runtime,
# and I can't work out a better way to push it to the RPATH.
postInstall = pkgs.lib.optional (!pkgs.stdenv.isDarwin) ''
patchelf \
--set-rpath ${pkgs.lib.makeLibraryPath ligatureInputs}:"$(patchelf --show-rpath $out/bin/alacritty)" \
$out/bin/alacritty
'';
meta = oldAttrs.meta // {
description = "Alacritty with ligature patch applied";
homepage = "https://github.com/zenixls2/alacritty/tree/ligature";
};
});
amdgpu-fan = pkgs.callPackage ../tools/misc/amdgpu-fan { };
cardboard = pkgs.callPackage ../applications/window-managers/cardboard { };
goModules = pkgs.recurseIntoAttrs rec {
qt = pkgs.libsForQt512.callPackage ../development/go-modules/qt { };
qt = pkgs.libsForQt5.callPackage ../development/go-modules/qt { };
};
# A functional Jetbrains IDE-with-plugins package set.
@ -72,15 +25,11 @@ rec {
ideaUltimateWithPlugins = ideaUltimatePlugins.jetbrainsWithPlugins;
};
libhl = pkgs.callPackage ../development/libraries/libhl { };
mopidy-subidy = pkgs.callPackage ../applications/audio/mopidy/subidy.nix {
python3Packages = pkgs.python3Packages // python3Packages;
};
pam_gnupg = pkgs.callPackage ../os-specific/linux/pam_gnupg { };
picom-animations = pkgs.picom.overrideAttrs (oldAttrs: {
picom-animations = pkgs.picom.overrideAttrs (_oldAttrs: {
pname = "picom-animations";
src = pkgs.fetchFromGitHub {
owner = "jonaburg";
@ -96,74 +45,17 @@ rec {
patches = (oldAttrs.patches or [ ]) ++ [ ../applications/misc/polybar/9button.patch ];
});
psst = pkgs.callPackage ../applications/audio/psst { };
python2Packages =
let
fixVersion =
{ package
, version
, sha256
, extra ? (oldAttrs: { })
}: package.overrideAttrs (oldAttrs: rec {
inherit version;
src = pkgs.python2Packages.fetchPypi {
inherit (oldAttrs) pname;
inherit version sha256;
};
} // extra oldAttrs);
in
pkgs.recurseIntoAttrs rec {
colorama_0_3_3 = fixVersion {
package = pkgs.python2Packages.colorama;
version = "0.3.3";
sha256 = "1716z9pq1r5ys3nkg7wdrb3h2f9rmd0zdxpxzmx3bgwgf6xg48gb";
};
mutagen_1_30 = fixVersion {
package = pkgs.python2Packages.mutagen;
version = "1.30";
sha256 = "0kv2gjnzbj1w0bswmxm7wi05x6ypi7jk52s0lb8gw8s459j41gyd";
extra = oldAttrs: {
patches = [ ];
};
};
pyspotify_2_0_5 = fixVersion {
package = pkgs.python2Packages.pyspotify;
version = "2.0.5";
sha256 = "0y16c024rrvbvfdqj1n0k4b25b1nbza3i7kspg5b0ci2src1rm7v";
};
overlay = {
colorama = colorama_0_3_3;
mutagen = mutagen_1_30;
pyspotify = pyspotify_2_0_5;
};
};
python3Packages = pkgs.recurseIntoAttrs {
py-sonic = pkgs.python3.pkgs.callPackage ../development/python-modules/py-sonic { };
};
# The one in Nixpkgs still extracts the pre-built Debian package instead
# of building from source.
protonmailBridgePackages = pkgs.libsForQt512.callPackage ../applications/networking/protonmail-bridge {
protonmailBridgePackages = pkgs.libsForQt5.callPackage ../applications/networking/protonmail-bridge {
inherit goModules;
};
protonmail-bridge = protonmailBridgePackages.protonmail-bridge;
protonmail-bridge-headless = protonmailBridgePackages.protonmail-bridge-headless;
radeon-profile-daemon = pkgs.libsForQt5.callPackage ../tools/misc/radeon-profile-daemon { };
samrewritten = pkgs.callPackage ../tools/misc/samrewritten { };
spotify-ripper = pkgs.callPackage ../tools/misc/spotify-ripper {
# NOTE: Not available in 20.03. Specifying it this way lets me cheat the
# build auto-failing on 20.03 because of the attribute not existing.
inherit (pkgs) fdk-aac-encoder;
python2Packages = pkgs.python2Packages // python2Packages.overlay;
};
zsh-z = pkgs.callPackage ../shells/zsh/zsh-z { };
}

View File

@ -0,0 +1,56 @@
# This file turns the pkgs/by-name directory (see its README.md for more info)
# into an overlay that adds all the defined packages.
#
# No validity checks are done here, instead this file is optimised for
# performance, and validity checks are done by CI on PRs.
#
# This file is based on Nixpkgs' `pkgs/top-level/by-name-overlay.nix` in order
# to utilise the same infrastructure and layout, with some adjustments to fit
# our derivative project.
{ lib
, pkgs
}:
# Type: Path -> Overlay
baseDirectory:
let
inherit (builtins)
readDir
;
inherit (lib.attrsets)
mapAttrs
mapAttrsToList
mergeAttrsList
;
# Package files for a single shard
# Type: String -> String -> AttrsOf Path
namesForShard = shard: type:
if type != "directory" then
# Ignore all non-directories. Technically only README.md is allowed as a file in the base directory, so we could alternatively:
# - Assume that README.md is the only file and change the condition to `shard == "README.md"` for a minor performance improvement.
# This would however cause very poor error messages if there's other files.
# - Ensure that README.md is the only file, throwing a better error message if that's not the case.
# However this would make for a poor code architecture, because one type of error would have to be duplicated in the validity checks and here.
# Additionally in either of those alternatives, we would have to duplicate the hardcoding of "README.md"
{ }
else
mapAttrs
(name: _: baseDirectory + "/${shard}/${name}/package.nix")
(readDir (baseDirectory + "/${shard}"));
# The attribute set mapping names to the package files defining them
# This is defined up here in order to allow reuse of the value (it's kind of expensive to compute)
# if the overlay has to be applied multiple times
packageFiles = mergeAttrsList (mapAttrsToList namesForShard (readDir baseDirectory));
in
# TODO: Consider optimising this using `builtins.deepSeq packageFiles`,
# which could free up the above thunks and reduce GC times.
# Currently this would be hard to measure until we have more packages
# and ideally https://github.com/NixOS/nix/pull/8895
_self: _super:
mapAttrs
(_name: file: pkgs.callPackage file { })
packageFiles

View File

@ -0,0 +1,19 @@
# Composes the packages collection.
{
# The system packages will be build and used on.
localSystem
# Nixpkgs
, pkgs
# Nixpkgs lib
, lib ? pkgs.lib
}:
let
allPackages = import ./stage.nix {
inherit lib pkgs;
};
available = lib.filterAttrs
(_: drv: builtins.elem localSystem (drv.meta.platforms or [ ]));
in
available allPackages

View File

@ -20,14 +20,16 @@ let
inherit lib;
};
in lib.makeScope newScope (self: lib.makeOverridable ({
jetbrainsPlugins ? mkJetbrainsPlugins self
, ideaPlugins ? mkIdeaPlugins self
}: ({ }
// jetbrainsPlugins // { inherit jetbrainsPlugins; }
// ideaPlugins // { inherit ideaPlugins; }
// {
in
lib.makeScope newScope (self: lib.makeOverridable
({ jetbrainsPlugins ? mkJetbrainsPlugins self
, ideaPlugins ? mkIdeaPlugins self
}: ({ }
// jetbrainsPlugins // { inherit jetbrainsPlugins; }
// ideaPlugins // { inherit ideaPlugins; }
// {
inherit variant;
jetbrainsWithPlugins = jetbrainsWithPlugins self variant;
})
) { })
)
{ })

24
pkgs/top-level/stage.nix Normal file
View File

@ -0,0 +1,24 @@
# Composes a single bootstrapping of the package collection. The result is a set
# of all the packages for some particular platform.
{ lib
, pkgs
}:
let
# An overlay to auto-call packages in .../by-name.
autoCalledPackages =
import ./by-name-overlay.nix { inherit pkgs lib; } ../by-name;
allPackages = _self: _super:
import ./all-packages.nix { inherit pkgs; };
toFix = (lib.flip lib.composeManyExtensions) (_self: { }) [
autoCalledPackages
allPackages
];
in
# Return the complete set of packages.
lib.fix toFix