Commit graph

56 commits

Author SHA1 Message Date
Griffin Smith
3fc1143a04 feat(gs/system): Init mugwump
Init the config for mugwump, a NUC that I bought from ncl and which I'm
going to use as a simple home server and ssh bastion box. Since this is
the first time I've set up a server using my nixos config, this also
moves a bunch of desktop (xserver, audio, etc.) related config out of
modules/common.nix and into a new modules/desktop.nix.

Coming soon: nixos-rebuild switch --target, but in the depot!

Change-Id: I67bd5ba6e3c26f80f77058af186fd41cc245d5d2
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2016
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-09-30 03:49:15 +00:00
Griffin Smith
734d07b864 feat(gs/home): install pv
Change-Id: I5681cc844f73dc087e0fb060caf6cacd91ffb50c
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2015
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-09-30 03:49:15 +00:00
Griffin Smith
1770396bf5 feat(gs/system): Add ISO config
Add configuration for a live install iso based on the depot's nixpkgs
pin and with a couple of networking-based options tweaked a bit.

Change-Id: I208bd0f7815fe54fc805e8995a8288d7a0d36f84
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2014
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-09-29 21:59:34 +00:00
Griffin Smith
6f2094c146 feat(gs): Bind a push-to-talk key
Bind a key, which I've located at the top-left of my right keyboard, to
a momentary push-to-talk by muting and unmuting my pulseaudio source
using xbindkeys. I had been putting this off for a while because i3
doesn't support binding different commands to keyup than to keydown
events, but the xbindkeys support appears to have solved that reasonably
well, plus it's got Scheme in it so that's cool.

If there's demand for it I'll gladly expose this as a reusable,
configurable home-manager module outside my users dir in the depot.

Change-Id: Ie591c93037dbdac364d5d8a718d99edb70780789
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1975
Tested-by: BuildkiteCI
Reviewed-by: glittershark <grfn@gws.fyi>
2020-09-12 19:20:43 +00:00
Griffin Smith
1c98437079 feat(gs/home): Add chupacabra home-manager to CI targets
Also move fcitx to system, since it's a nixos thing not a home-manager
thing.

Change-Id: I3e047494a478520e939d48fc72cc91a2d797bf74
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1969
Tested-by: BuildkiteCI
Reviewed-by: glittershark <grfn@gws.fyi>
2020-09-09 16:09:43 +00:00
glittershark
90451fdc0e revert(gs/home): "Install clj-kondo and babashka"
This reverts commit 6489f08099.

Reason for revert: build of graalvm fails :'(

Change-Id: I0fcd173988ab900c837d0040117c3120e29469a1
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1942
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-09-09 16:06:49 +00:00
Griffin Smith
6489f08099 feat(gs/home): Install clj-kondo and babashka
These depend on graalvm which is gonna be a big ol build

Change-Id: I3b67e22677390921e408b9fea12191718b27cd7f
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1967
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-09-09 14:47:37 +00:00
Griffin Smith
41b2653e32 feat(gs/system): Install fcitx+cloudpinyin
汉语时间!

Change-Id: Ic52c2d393ee55c1d251416a66c15f4b6d6722bfa
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1966
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-09-09 14:47:37 +00:00
Griffin Smith
b2eb4c81f7 feat(gs/zshrc): Change cursor shape based on mode
Use a block cursor in normal mode, and a beam cursor in insert mode.

Change-Id: I1cf5eebeaadf41cd006b324de62eb7f6804e149a
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1965
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-09-09 14:25:38 +00:00
Griffin Smith
6c5020afaf feat(gs/home): Install multimc
Change-Id: Ib0fcf1fd51749d3878e66b350ecb8e81daa47aab
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1962
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-09-08 00:27:53 +00:00
Griffin Smith
e2530ceec0 feat(gs/home): Alias lwo = lorri watch --once
Change-Id: Ied475c3b704cf54e41767c47465dd94247c7b953
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1935
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-09-06 21:17:13 +00:00
Griffin Smith
912268ed5e feat(gs/system): Add nixbuild.net as remote builder
Change-Id: I3b071cc91af5ee896e88c10d6594333ff4eddf77
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1922
Tested-by: BuildkiteCI
Reviewed-by: glittershark <grfn@gws.fyi>
2020-09-01 01:07:11 +00:00
Vincent Ambo
fcb014e43d chore(glittershark/system): Include chupacabraSystem in CI builds
Change-Id: Ic8a63f76a0b19f6b1f9ab836d1418849cce06aa0
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1895
Tested-by: BuildkiteCI
Reviewed-by: glittershark <grfn@gws.fyi>
2020-08-31 23:14:11 +00:00
Vincent Ambo
61d2d2d503 feat(ops/pipelines): Dynamically generate CI pipeline from targets
Create the pipeline by outputting a file that contains nix-build
invocations for each target's *derivation path*.

Each invocation has a generated Nix expression passed to it with `-E`
which fetches the correct target from the tree while correctly
handling targets with strange characters (such as in Go-packages).

This makes it possible to run target-level granular pipelines. We're
getting somewhere!

Change-Id: Ia6946e389dafd1d4926130bb8891446d6e17133b
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1855
Tested-by: BuildkiteCI
Reviewed-by: glittershark <grfn@gws.fyi>
Reviewed-by: lukegb <lukegb@tvl.fyi>
2020-08-31 23:14:11 +00:00
Griffin Smith
d8701f7e21 feat(gs/home): Alias grom = git rebase origin/master
Change-Id: I8dfc3efc393dd5a3a3ad20cfb84969a8d8805f87
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1865
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-08-28 21:24:36 +00:00
Griffin Smith
a7cd92770d revert(glittershark): "Temporarily skip grfn's subtree"
This reverts commit 475d41f698. I'd like
my derivations back, please.

Changes necessary to get this working:

- Don't depend on `nixpkgs` being in the NIX_PATH for my website - it's
  not necessary anyway since emacs 27 is mainline now
- .skip-subtrees on things that shouldn't be evaluated anyway
- Get rid of system/pkgs, and move the one thing in there that *wasn't*
  already in third_party (alsi) to third_party
- Drop notifymuch for now - it's not working, and I'll probably get it
  landed in nixpkgs before I manage to get it working
- Add __readTree = true to my systems so they get built.
- explicitly disable ci for xanthous, which is failing to build and had
  been omitted previously

Change-Id: I20f5e81d6eb7ffe040091a08d75d0cb15304f707
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1864
Tested-by: BuildkiteCI
Reviewed-by: tazjin <mail@tazj.in>
2020-08-28 21:24:36 +00:00
Vincent Ambo
6f5659c88b chore(3p): Bump nixos-unstable channel
This bumps the channel to a commit that includes fixes for an nginx
issue we have been seeing:

https://github.com/NixOS/nixpkgs/pull/95264

Includes the following compatibility fixes:

- tests disabled in third_party.bufbuild: These were enabled
  unexpectedly by the update, but don't run in the sandbox because
  they want to download things from github

Change-Id: I98a3b5de57f62f1fd3a37701fa1896eddeedff85
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1759
Tested-by: BuildkiteCI
Reviewed-by: glittershark <grfn@gws.fyi>
Reviewed-by: tazjin <mail@tazj.in>
2020-08-17 09:54:18 +00:00
Vincent Ambo
711a20620d feat(glittershark/kernel): Use linuxPackages_latest
Welcome to the future, baby!

Change-Id: I23124d27df1f7597dbd2b28afd5882e62085665e
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1763
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-08-17 09:54:18 +00:00
Vincent Ambo
d29bb5cbf8 refactor(glittershark/chupacabra): Move boot config into a block
This is kind of difficult to read otherwise because the boot
configuration is scattered throughout the file.

Change-Id: I8977b1bd2b9162c898c96aa249c40749b3d46180
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1762
Tested-by: BuildkiteCI
Reviewed-by: glittershark <grfn@gws.fyi>
2020-08-17 09:54:18 +00:00
Griffin Smith
aef3607bd3 fix(gs/system): Fix deprecated nixos option
Change-Id: Ida25ae018bcd48adf27b0a5b8d524980c66dc3fa
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1747
Tested-by: BuildkiteCI
Reviewed-by: glittershark <grfn@gws.fyi>
2020-08-14 02:56:15 +00:00
Griffin Smith
717939bc12 feat(chupacabra): Enable X auto-login
I have an encrypted drive, so this extra layer of security is pointless

Change-Id: Ifa523ee5ea545b5ee17536d34f60d7235e47f25c
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1741
Tested-by: BuildkiteCI
Reviewed-by: glittershark <grfn@gws.fyi>
2020-08-13 22:34:55 +00:00
Vincent Ambo
d42c3dd72f chore(3p): Bump nixpkgs channels
Bumps both nixos-unstable and nixos-20.03 to today's versions, as per
status.nixos.org

Contains minor fixes to things that broke because of the update:

* tazjin/frog: hardware.u2f is a deprecated setting
* glittershark/system: modSha256 in Go modules is now vendorSha256
* glittershark/owothia: removed version constraint on relude

Change-Id: Ib3e9612b1b06ed547b90e4f8b0ffe5ed7fe0a5c4
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1642
Tested-by: BuildkiteCI
Reviewed-by: glittershark <grfn@gws.fyi>
2020-08-06 00:15:33 +00:00
Griffin Smith
56cba6e032 feat(gs/home): Bump alacritty version
Bump to alacritty 0.5.0 (which is happening by fetching YANNPP (Yet
Another Nixpkgs Pin) because overriding versions of rust packages is not
very well supported) and update the relevant home-manager version and
pin to get it installed and configured with vi-mode.

Change-Id: I4fd96bd0c0611ce76500c33bf0b2c680ee7f44c3
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1583
Tested-by: BuildkiteCI
Reviewed-by: glittershark <grfn@gws.fyi>
2020-08-02 20:12:09 +00:00
Griffin Smith
ba0c785b25 feat(gs/system): Install steam
Change-Id: Id61bf6bed41773e398cb6173c33f378937785d94
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1354
Tested-by: BuildkiteCI
Reviewed-by: glittershark <grfn@gws.fyi>
2020-07-23 15:24:06 +00:00
Griffin Smith
ef64479c9d feat(gs/system): Install obs v4l2loopback
Change-Id: I62db4951969a0978e929f91d62382b1560d1f89c
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1348
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-07-22 16:31:40 +00:00
Griffin Smith
1b42504a12 feat(gs/shell): Add "nix build local" alias
For when I'm building stuff I don't want to build on whitby.

Change-Id: Ic377fe0d68436a81ee479ff4aa029a51e0a5babf
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1215
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-07-16 21:03:13 +00:00
Griffin Smith
3bf0e2bddc feat(gs/home): Install hyperfine
Change-Id: Ia29e6c2c73d222496b7315d5a640e055fe908c25
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1178
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-07-15 18:06:54 +00:00
Griffin Smith
1fd34a82cb feat(gs/home): Add config for email notifications
This uses the notifymuch package pulled from
https://github.com/NixOS/nixpkgs/pull/92797 right now, but eventually I
would like to pull from a vendored version since there are some changes
I would like to make to how the notifications are rendered and it looks
like upstream is unmaintained.

Change-Id: I3d1d355a09171a33677f095aa068f2499d50b37b
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1177
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-07-15 18:06:54 +00:00
Griffin Smith
104bf18461 fix(gs/i3): remove implicit dependency on picom+peek
This was done originally to make the snippet shareable, but is nice
regardless.

Change-Id: Ie51302a020cbb262b1e802e94786ebb8a9f843c8
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1170
Tested-by: BuildkiteCI
Reviewed-by: glittershark <grfn@gws.fyi>
2020-07-14 19:42:24 +00:00
Griffin Smith
cbbb7a37d5 feat(gs/i3): Add volume to i3status
Change-Id: I1d3081653b0e69bce88673a4d4edf16cb483f681
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1169
Tested-by: BuildkiteCI
Reviewed-by: glittershark <grfn@gws.fyi>
2020-07-14 19:42:24 +00:00
Griffin Smith
0485515a06 feat(gs/system): configure whitby as a remote builder
big cores wow

Change-Id: I0fa14834365202f1c9a8ff69243f129c8acfe13d
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1168
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-07-14 19:42:24 +00:00
Griffin Smith
2abccc22ac chore(gs/system): reformat tvl.nix
Change-Id: Icc2f953450956a01b32872e6575976e49f1be0b4
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1167
Tested-by: BuildkiteCI
Reviewed-by: glittershark <grfn@gws.fyi>
2020-07-14 19:38:01 +00:00
Griffin Smith
7986b93a35 feat(gs/home): Install C++ development tools
Change-Id: I959e257e4c2f7c640bedfe5f8385f33ff02215d4
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1136
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-07-13 23:53:00 +00:00
Griffin Smith
cc12188d31 feat(gs/home): Integrate home-manager with depot
Essentially the same as for nixos, so I can get whitby to compile stuff
for me. Eventually I'll generalize this so things aren't as hardcoded to
my particular setup, but for now I'm the only one in the depot who's
using home-manager so this should be fine.

Change-Id: I1cb0344f5a11eea68bddc98976999c0928dfa84e
Reviewed-on: https://cl.tvl.fyi/c/depot/+/937
Tested-by: BuildkiteCI
Reviewed-by: lukegb <lukegb@tvl.fyi>
2020-07-13 23:41:23 +00:00
Griffin Smith
37ec60c706 feat(gs/i3): Add dottime to status bar
woooo dottime

Change-Id: I41ea0ca70c38e16d716a172c2d2b4d3f983f6e5f
Reviewed-on: https://cl.tvl.fyi/c/depot/+/954
Tested-by: BuildkiteCI
Reviewed-by: glittershark <grfn@gws.fyi>
2020-07-08 15:59:53 +00:00
Griffin Smith
a73714a93c feat(ops/nixos): Add generic rebuild-system script
This adds a first crack at one idea for a generic, non-user-specific
rebuild-system script to ops.nixos.rebuild-system. The idea here is that
we enumerate all the nixos systems stored in the monorepo (similarly to
what we do for ci-builds right now) then search through them by hostname
to find the one matching the hostname of the current system, which is an
attempt at a more generic version of tazjin's rebuilder script which
does the same thing but with an explicit case block.

As a caveat, it feels like there's a slight possibility that this way of
finding systems is going to get slow to evaluate - on my system it feels
fine but if it grows out of hand it's probably feasible to just bake
this into the built script as a dynamically generated case statement.

Change-Id: I2e4c5401913b6f4d936ab48ba2f95f96e0e78eb4
Reviewed-on: https://cl.tvl.fyi/c/depot/+/894
Tested-by: BuildkiteCI
Reviewed-by: lukegb <lukegb@tvl.fyi>
2020-07-06 15:16:36 +00:00
Griffin Smith
361ffd42d7 feat(gs/home): Make groc alias autostash
Change-Id: I8ce5ca50d90ed092e92ea7c1c2eaf796e56659d4
Reviewed-on: https://cl.tvl.fyi/c/depot/+/902
Reviewed-by: glittershark <grfn@gws.fyi>
2020-07-03 16:42:14 +00:00
Griffin Smith
73f8121f28 feat(gs/home): Some new haskell aliases
for cabal 3 commands that are runnable without new- or old-

Change-Id: Ib00c8654c40c47482e06aec9dd1454dacce42971
Reviewed-on: https://cl.tvl.fyi/c/depot/+/901
Reviewed-by: glittershark <grfn@gws.fyi>
2020-07-03 16:40:34 +00:00
Griffin Smith
284eafe0b5 feat(gs/home): alias groc = git rebase origin/canon
Change-Id: I3e5a8d234fdac9f0a2f1d440ed7dea458663ae61
Reviewed-on: https://cl.tvl.fyi/c/depot/+/900
Reviewed-by: glittershark <grfn@gws.fyi>
2020-07-03 16:36:08 +00:00
Griffin Smith
d1db50ab64 feat(gs/system): Add whitby to trustedBinaryCaches
This is needed as well to use it as a substituter it seems

Change-Id: I6cefbccef2a61d665209131084bc58d7b56645f9
Reviewed-on: https://cl.tvl.fyi/c/depot/+/899
Reviewed-by: glittershark <grfn@gws.fyi>
2020-07-03 16:33:07 +00:00
Griffin Smith
6e7200cf4e refactor(gs/system): Don't use whitby as a remote builder
Right now it looks like the time to copy data between local and whitby
essentially eliminates any benefit to using it as a remote builder.
Which is a shame, but ah well.

Change-Id: I71dc4782992a28b196e262d40acc1bbc0b883529
Reviewed-on: https://cl.tvl.fyi/c/depot/+/898
Reviewed-by: glittershark <grfn@gws.fyi>
Reviewed-by: BuildkiteCI
Tested-by: BuildkiteCI
2020-07-03 16:33:07 +00:00
Griffin Smith
2900768656 feat(gs/system): Add public keys for whitby
Change-Id: I138ccbd7da9849025f1f59dfe948cfb7a5684b6d
Reviewed-on: https://cl.tvl.fyi/c/depot/+/896
Reviewed-by: BuildkiteCI
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-07-03 15:11:05 +00:00
Griffin Smith
0ef2696564 feat(gs/system): Add whitby as a binary cache
This appears to be working! which is nice.

Change-Id: I06f8d2ff4e9b313073cb76c77a8a9bed0cb52516
Reviewed-on: https://cl.tvl.fyi/c/depot/+/887
Reviewed-by: glittershark <grfn@gws.fyi>
Reviewed-by: BuildkiteCI
Tested-by: BuildkiteCI
2020-07-03 00:07:04 +00:00
Griffin Smith
6cabc4289c feat(gs:system): steal tazjin's rebuilder script
gonna use this instead of nixos-rebuild switch, in part to get away from
global nixpkgs pins.

Change-Id: I46e2951660465790adfdf75e6e3413b5c2dfd7c7
Reviewed-on: https://cl.tvl.fyi/c/depot/+/886
Reviewed-by: glittershark <grfn@gws.fyi>
Reviewed-by: BuildkiteCI
Tested-by: BuildkiteCI
2020-07-03 00:07:04 +00:00
Griffin Smith
5c96703765 feat(ci-builds): add chupacabra
My laptop, so I can recompile linux-ck not on my machine

Change-Id: Ib42e0440628be6a4d03999220ab2c69b19d6e391
Reviewed-on: https://cl.tvl.fyi/c/depot/+/884
Reviewed-by: BuildkiteCI
Reviewed-by: lukegb <lukegb@tvl.fyi>
Tested-by: BuildkiteCI
2020-07-02 23:19:58 +00:00
Griffin Smith
0bd0ca09a3 refactor(gs/chupacabra): Vendor urbint config
If I want to build this on TVL's CI I can't reference ~/code/urb/urbos,
obviously, so I'll just vendor it here which is fine

Change-Id: I40feb4b29fafae1d3bb0119b7cca1613a4582fdc
Reviewed-on: https://cl.tvl.fyi/c/depot/+/885
Tested-by: BuildkiteCI
Reviewed-by: glittershark <grfn@gws.fyi>
Reviewed-by: BuildkiteCI
2020-07-02 23:19:58 +00:00
Griffin Smith
ae5c5b88e5 feat(gs/system): Configure whitby as a remote builder
This isn't working, but someday it might

Change-Id: Iac20c05b033df3484a7c6908473601bb17c9fcfe
Reviewed-on: https://cl.tvl.fyi/c/depot/+/883
Tested-by: BuildkiteCI
Reviewed-by: lukegb <lukegb@tvl.fyi>
Reviewed-by: BuildkiteCI
2020-07-02 23:19:58 +00:00
Griffin Smith
479d5ee8f1 refactor: Inline nixos-hardware stuff
As tazjin pointed out, this is little enough code that pulling it from a
global channel is a little silly, so I've just inlined everything.

Change-Id: I8750f139a3124135a72737c381215a6e812ce0c3
Reviewed-on: https://cl.tvl.fyi/c/depot/+/882
Tested-by: BuildkiteCI
Reviewed-by: lukegb <lukegb@tvl.fyi>
Reviewed-by: BuildkiteCI
2020-07-02 23:19:58 +00:00
Griffin Smith
ca25c8d600 refactor(gs/chupacabra): Centralize all config
I previously had some stuff jammed into a hardware-configuration.nix not
committed anywhere, which is silly but also prevented building this
config as a top-level derivation, so this vendors them all in there

Change-Id: Ia76f1d75dcd44aa3e9d86a66c45176afc0946d12
Reviewed-on: https://cl.tvl.fyi/c/depot/+/881
Reviewed-by: BuildkiteCI
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-07-02 23:19:58 +00:00
Griffin Smith
2b2e1152ce feat(gs/home): alias gcc->git checkout canon
To go along with git checkout master

Change-Id: I2a0d09e50cf82368e324e1dfbbd3dc868d30b9f2
Reviewed-on: https://cl.tvl.fyi/c/depot/+/728
Reviewed-by: glittershark <grfn@gws.fyi>
2020-06-28 23:40:06 +00:00