chore(3p/sources): bump channels & overlays (2024-09-01)
Included changes: * users/aspen: explicitly use open-source nvidia driver This now has to be specified explicitly, otherwise evaluation fails with an error. * users/aspen: nixfmt -> nixfmt-classic * users/aspen: fixes for renamed packages & options * users/tazjin: fixes for renamed packages & options * 3p/overlays: remove cbtemulator patch (merged upstream) * tvix/shell: remove unnecessary patches (merged upstream) * 3p/rust-crates: mark libgit2_sys as broken * users/Profpatsch: mark git-db as broken * 3p/overlays: pick `mypaint` from stable channel * tvix: fix comments that clippy doesn't like anymore * tvix/glue: disable a misfiring clippy lint (applying its suggestion breaks code below) Change-Id: I6d3fc027694bbe7425a2d25dc53d65467a44f3b0 Reviewed-on: https://cl.tvl.fyi/c/depot/+/12403 Tested-by: BuildkiteCI Reviewed-by: aspen <root@gws.fyi> Reviewed-by: Profpatsch <mail@profpatsch.de> Autosubmit: tazjin <tazjin@tvl.su>
This commit is contained in:
parent
200d49a0e1
commit
609b68031b
19 changed files with 56 additions and 198 deletions
|
@ -23,7 +23,6 @@ let
|
||||||
{ name
|
{ name
|
||||||
, dependencies ? [ ]
|
, dependencies ? [ ]
|
||||||
, doCheck ? true
|
, doCheck ? true
|
||||||
,
|
|
||||||
}: src:
|
}: src:
|
||||||
(if doCheck then testRustSimple else pkgs.lib.id)
|
(if doCheck then testRustSimple else pkgs.lib.id)
|
||||||
(pkgs.buildRustCrate ({
|
(pkgs.buildRustCrate ({
|
||||||
|
|
3
third_party/nixpkgs/default.nix
vendored
3
third_party/nixpkgs/default.nix
vendored
|
@ -58,6 +58,9 @@ let
|
||||||
|
|
||||||
# the big lis package change breaks everything in //3p/lisp, undo it for now.
|
# the big lis package change breaks everything in //3p/lisp, undo it for now.
|
||||||
lispPackages = stableNixpkgs.lispPackages;
|
lispPackages = stableNixpkgs.lispPackages;
|
||||||
|
|
||||||
|
# mypaint is broken on stable (2024-09-05)
|
||||||
|
mypaint = stableNixpkgs.mypaint;
|
||||||
};
|
};
|
||||||
|
|
||||||
# Overlay to expose the nixpkgs commits we are using to other Nix code.
|
# Overlay to expose the nixpkgs commits we are using to other Nix code.
|
||||||
|
|
140
third_party/overlays/patches/cbtemulator-uds.patch
vendored
140
third_party/overlays/patches/cbtemulator-uds.patch
vendored
|
@ -1,140 +0,0 @@
|
||||||
commit 1397e10225d8c6fd079a86fccd58fb5d0f4200bc
|
|
||||||
Author: Florian Klink <flokli@flokli.de>
|
|
||||||
Date: Fri Mar 29 10:06:34 2024 +0100
|
|
||||||
|
|
||||||
feat(bigtable/emulator): allow listening on Unix Domain Sockets
|
|
||||||
|
|
||||||
cbtemulator listening on unix domain sockets is much easier than trying
|
|
||||||
to allocate free TCP ports, especially if many cbtemulators are run at
|
|
||||||
the same time in integration tests.
|
|
||||||
|
|
||||||
This adds an additional flag, address, which has priority if it's set,
|
|
||||||
rather than host:port.
|
|
||||||
|
|
||||||
`NewServer` already takes a `laddr string`, so we simply check for it to
|
|
||||||
contain slashes, and if so, listen on unix, rather than TCP.
|
|
||||||
|
|
||||||
diff --git a/bigtable/bttest/inmem.go b/bigtable/bttest/inmem.go
|
|
||||||
index 556abc2a85..33e4bf2667 100644
|
|
||||||
--- a/bttest/inmem.go
|
|
||||||
+++ b/bttest/inmem.go
|
|
||||||
@@ -40,6 +40,7 @@ import (
|
|
||||||
"math"
|
|
||||||
"math/rand"
|
|
||||||
"net"
|
|
||||||
+ "os"
|
|
||||||
"regexp"
|
|
||||||
"sort"
|
|
||||||
"strings"
|
|
||||||
@@ -106,7 +107,15 @@ type server struct {
|
|
||||||
// The Server will be listening for gRPC connections, without TLS,
|
|
||||||
// on the provided address. The resolved address is named by the Addr field.
|
|
||||||
func NewServer(laddr string, opt ...grpc.ServerOption) (*Server, error) {
|
|
||||||
- l, err := net.Listen("tcp", laddr)
|
|
||||||
+ var l net.Listener
|
|
||||||
+ var err error
|
|
||||||
+
|
|
||||||
+ // If the address contains slashes, listen on a unix domain socket instead.
|
|
||||||
+ if strings.Contains(laddr, "/") {
|
|
||||||
+ l, err = net.Listen("unix", laddr)
|
|
||||||
+ } else {
|
|
||||||
+ l, err = net.Listen("tcp", laddr)
|
|
||||||
+ }
|
|
||||||
if err != nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
diff --git a/bigtable/cmd/emulator/cbtemulator.go b/bigtable/cmd/emulator/cbtemulator.go
|
|
||||||
index 144c09ffb1..deaf69b717 100644
|
|
||||||
--- a/cmd/emulator/cbtemulator.go
|
|
||||||
+++ b/cmd/emulator/cbtemulator.go
|
|
||||||
@@ -27,8 +27,9 @@ import (
|
|
||||||
)
|
|
||||||
|
|
||||||
var (
|
|
||||||
- host = flag.String("host", "localhost", "the address to bind to on the local machine")
|
|
||||||
- port = flag.Int("port", 9000, "the port number to bind to on the local machine")
|
|
||||||
+ host = flag.String("host", "localhost", "the address to bind to on the local machine")
|
|
||||||
+ port = flag.Int("port", 9000, "the port number to bind to on the local machine")
|
|
||||||
+ address = flag.String("address", "", "address:port number or unix socket path to listen on. Has priority over host/port")
|
|
||||||
)
|
|
||||||
|
|
||||||
const (
|
|
||||||
@@ -42,7 +43,15 @@ func main() {
|
|
||||||
grpc.MaxRecvMsgSize(maxMsgSize),
|
|
||||||
grpc.MaxSendMsgSize(maxMsgSize),
|
|
||||||
}
|
|
||||||
- srv, err := bttest.NewServer(fmt.Sprintf("%s:%d", *host, *port), opts...)
|
|
||||||
+
|
|
||||||
+ var laddr string
|
|
||||||
+ if *address != "" {
|
|
||||||
+ laddr = *address
|
|
||||||
+ } else {
|
|
||||||
+ laddr = fmt.Sprintf("%s:%d", *host, *port)
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
+ srv, err := bttest.NewServer(laddr, opts...)
|
|
||||||
if err != nil {
|
|
||||||
log.Fatalf("failed to start emulator: %v", err)
|
|
||||||
}
|
|
||||||
commit ce16f843d6c93159d86b3807c6d9ff66e43aac67
|
|
||||||
Author: Florian Klink <flokli@flokli.de>
|
|
||||||
Date: Fri Mar 29 11:53:15 2024 +0100
|
|
||||||
|
|
||||||
feat(bigtable): clean up unix socket on close
|
|
||||||
|
|
||||||
Call srv.Close when receiving an interrupt, and delete the unix domain
|
|
||||||
socket in that function.
|
|
||||||
|
|
||||||
diff --git a/bigtable/bttest/inmem.go b/bigtable/bttest/inmem.go
|
|
||||||
index 33e4bf2667..0dc96024b1 100644
|
|
||||||
--- a/bttest/inmem.go
|
|
||||||
+++ b/bttest/inmem.go
|
|
||||||
@@ -148,6 +148,11 @@ func (s *Server) Close() {
|
|
||||||
|
|
||||||
s.srv.Stop()
|
|
||||||
s.l.Close()
|
|
||||||
+
|
|
||||||
+ // clean up unix socket
|
|
||||||
+ if strings.Contains(s.Addr, "/") {
|
|
||||||
+ _ = os.Remove(s.Addr)
|
|
||||||
+ }
|
|
||||||
}
|
|
||||||
|
|
||||||
func (s *server) CreateTable(ctx context.Context, req *btapb.CreateTableRequest) (*btapb.Table, error) {
|
|
||||||
diff --git a/bigtable/cmd/emulator/cbtemulator.go b/bigtable/cmd/emulator/cbtemulator.go
|
|
||||||
index deaf69b717..5a9e8f7a8c 100644
|
|
||||||
--- a/cmd/emulator/cbtemulator.go
|
|
||||||
+++ b/cmd/emulator/cbtemulator.go
|
|
||||||
@@ -18,9 +18,12 @@ cbtemulator launches the in-memory Cloud Bigtable server on the given address.
|
|
||||||
package main
|
|
||||||
|
|
||||||
import (
|
|
||||||
+ "context"
|
|
||||||
"flag"
|
|
||||||
"fmt"
|
|
||||||
"log"
|
|
||||||
+ "os"
|
|
||||||
+ "os/signal"
|
|
||||||
|
|
||||||
"cloud.google.com/go/bigtable/bttest"
|
|
||||||
"google.golang.org/grpc"
|
|
||||||
@@ -51,11 +54,18 @@ func main() {
|
|
||||||
laddr = fmt.Sprintf("%s:%d", *host, *port)
|
|
||||||
}
|
|
||||||
|
|
||||||
+ ctx, stop := signal.NotifyContext(context.Background(), os.Interrupt)
|
|
||||||
+ defer stop()
|
|
||||||
+
|
|
||||||
srv, err := bttest.NewServer(laddr, opts...)
|
|
||||||
if err != nil {
|
|
||||||
log.Fatalf("failed to start emulator: %v", err)
|
|
||||||
}
|
|
||||||
|
|
||||||
fmt.Printf("Cloud Bigtable emulator running on %s\n", srv.Addr)
|
|
||||||
- select {}
|
|
||||||
+ select {
|
|
||||||
+ case <-ctx.Done():
|
|
||||||
+ srv.Close()
|
|
||||||
+ stop()
|
|
||||||
+ }
|
|
||||||
}
|
|
7
third_party/overlays/tvl.nix
vendored
7
third_party/overlays/tvl.nix
vendored
|
@ -90,13 +90,6 @@ depot.nix.readTree.drvTargets {
|
||||||
};
|
};
|
||||||
}));
|
}));
|
||||||
|
|
||||||
# https://github.com/googleapis/google-cloud-go/pull/9665
|
|
||||||
cbtemulator = super.cbtemulator.overrideAttrs (old: {
|
|
||||||
patches = old.patches or [ ] ++ [
|
|
||||||
./patches/cbtemulator-uds.patch
|
|
||||||
];
|
|
||||||
});
|
|
||||||
|
|
||||||
crate2nix = super.crate2nix.overrideAttrs (old: {
|
crate2nix = super.crate2nix.overrideAttrs (old: {
|
||||||
patches = old.patches or [ ] ++ [
|
patches = old.patches or [ ] ++ [
|
||||||
# TODO(Kranzes): Remove in next release.
|
# TODO(Kranzes): Remove in next release.
|
||||||
|
|
2
third_party/rust-crates/default.nix
vendored
2
third_party/rust-crates/default.nix
vendored
|
@ -321,6 +321,7 @@ depot.nix.readTree.drvTargets rec{
|
||||||
pkg-config
|
pkg-config
|
||||||
];
|
];
|
||||||
env.LIBGIT2_NO_VENDOR = "1";
|
env.LIBGIT2_NO_VENDOR = "1";
|
||||||
|
meta.broken = true; # TODO(profpatsch): fix git version mismatch
|
||||||
};
|
};
|
||||||
|
|
||||||
matches = buildRustCrate {
|
matches = buildRustCrate {
|
||||||
|
@ -417,5 +418,6 @@ depot.nix.readTree.drvTargets rec{
|
||||||
log
|
log
|
||||||
url
|
url
|
||||||
];
|
];
|
||||||
|
meta.broken = true; # TODO(Profpatsch): see libgit2-sys
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
30
third_party/sources/sources.json
vendored
30
third_party/sources/sources.json
vendored
|
@ -29,10 +29,10 @@
|
||||||
"homepage": "https://nix-community.github.io/home-manager/",
|
"homepage": "https://nix-community.github.io/home-manager/",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"rev": "086f619dd991a4d355c07837448244029fc2d9ab",
|
"rev": "c2cd2a52e02f1dfa1c88f95abeb89298d46023be",
|
||||||
"sha256": "1vlfxqma4g20vffn2ysw1jwd7kwhyc655765dz6af6k15392gg7p",
|
"sha256": "1wq1cn8r4igs5bb3fgcn8ima65rk427kkxkl25a0n6adabg35nah",
|
||||||
"type": "tarball",
|
"type": "tarball",
|
||||||
"url": "https://github.com/nix-community/home-manager/archive/086f619dd991a4d355c07837448244029fc2d9ab.tar.gz",
|
"url": "https://github.com/nix-community/home-manager/archive/c2cd2a52e02f1dfa1c88f95abeb89298d46023be.tar.gz",
|
||||||
"url_template": "https://github.com/<owner>/<repo>/archive/<rev>.tar.gz"
|
"url_template": "https://github.com/<owner>/<repo>/archive/<rev>.tar.gz"
|
||||||
},
|
},
|
||||||
"impermanence": {
|
"impermanence": {
|
||||||
|
@ -41,10 +41,10 @@
|
||||||
"homepage": "",
|
"homepage": "",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "impermanence",
|
"repo": "impermanence",
|
||||||
"rev": "23c1f06316b67cb5dabdfe2973da3785cfe9c34a",
|
"rev": "c7f5b394397398c023000cf843986ee2571a1fd7",
|
||||||
"sha256": "1c99hc2mv0f5rjxj97wcypyrpi5i3xmpi3sd2fnw2481jxgqn5h3",
|
"sha256": "0znd8asz61l1dm5qnjcqcznjr138ywwwkpqyla571s9z0s3jybvv",
|
||||||
"type": "tarball",
|
"type": "tarball",
|
||||||
"url": "https://github.com/nix-community/impermanence/archive/23c1f06316b67cb5dabdfe2973da3785cfe9c34a.tar.gz",
|
"url": "https://github.com/nix-community/impermanence/archive/c7f5b394397398c023000cf843986ee2571a1fd7.tar.gz",
|
||||||
"url_template": "https://github.com/<owner>/<repo>/archive/<rev>.tar.gz"
|
"url_template": "https://github.com/<owner>/<repo>/archive/<rev>.tar.gz"
|
||||||
},
|
},
|
||||||
"naersk": {
|
"naersk": {
|
||||||
|
@ -77,10 +77,10 @@
|
||||||
"homepage": "",
|
"homepage": "",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "a58bc8ad779655e790115244571758e8de055e3d",
|
"rev": "71e91c409d1e654808b2621f28a327acfdad8dc2",
|
||||||
"sha256": "0gnmmn1wc09z1q4bb8jkqi2f8vxl26kaa3xrs664q9i651am2mkl",
|
"sha256": "1b47065q41ar9585ra4akb4s4kjwcs3p3g4chrpps8704vz7nx0s",
|
||||||
"type": "tarball",
|
"type": "tarball",
|
||||||
"url": "https://github.com/NixOS/nixpkgs/archive/a58bc8ad779655e790115244571758e8de055e3d.tar.gz",
|
"url": "https://github.com/NixOS/nixpkgs/archive/71e91c409d1e654808b2621f28a327acfdad8dc2.tar.gz",
|
||||||
"url_template": "https://github.com/<owner>/<repo>/archive/<rev>.tar.gz"
|
"url_template": "https://github.com/<owner>/<repo>/archive/<rev>.tar.gz"
|
||||||
},
|
},
|
||||||
"nixpkgs-stable": {
|
"nixpkgs-stable": {
|
||||||
|
@ -101,10 +101,10 @@
|
||||||
"homepage": "",
|
"homepage": "",
|
||||||
"owner": "oxalica",
|
"owner": "oxalica",
|
||||||
"repo": "rust-overlay",
|
"repo": "rust-overlay",
|
||||||
"rev": "ea0bf33a11a26a62c60123c49d96011da396602c",
|
"rev": "87b6cffc276795b46ef544d7ed8d7fed6ad9c8e4",
|
||||||
"sha256": "1z21v8c2dyf2rs6nqvgq8vhmw73hidi7byzfxhpzjn7x544yiyb7",
|
"sha256": "01gf3m4a0ljzkxf65lkcvr5kwcjr3mbpjbpppf0djk82mm98qbh4",
|
||||||
"type": "tarball",
|
"type": "tarball",
|
||||||
"url": "https://github.com/oxalica/rust-overlay/archive/ea0bf33a11a26a62c60123c49d96011da396602c.tar.gz",
|
"url": "https://github.com/oxalica/rust-overlay/archive/87b6cffc276795b46ef544d7ed8d7fed6ad9c8e4.tar.gz",
|
||||||
"url_template": "https://github.com/<owner>/<repo>/archive/<rev>.tar.gz"
|
"url_template": "https://github.com/<owner>/<repo>/archive/<rev>.tar.gz"
|
||||||
},
|
},
|
||||||
"rustsec-advisory-db": {
|
"rustsec-advisory-db": {
|
||||||
|
@ -113,10 +113,10 @@
|
||||||
"homepage": "https://rustsec.org",
|
"homepage": "https://rustsec.org",
|
||||||
"owner": "RustSec",
|
"owner": "RustSec",
|
||||||
"repo": "advisory-db",
|
"repo": "advisory-db",
|
||||||
"rev": "1d209d3f18c740f104380e988b5aa8eb360190d1",
|
"rev": "fe4d5979b34444815287d61bd2a4e193cebbc7a6",
|
||||||
"sha256": "1fgnjlfkb5zmhyif0s442pl4dalvs663y96mvx4l1mvshnwdxx23",
|
"sha256": "07zfq1bhghxmh5k5wiflnjw105b3fdg1315qkhp4in6qxmhzps66",
|
||||||
"type": "tarball",
|
"type": "tarball",
|
||||||
"url": "https://github.com/RustSec/advisory-db/archive/1d209d3f18c740f104380e988b5aa8eb360190d1.tar.gz",
|
"url": "https://github.com/RustSec/advisory-db/archive/fe4d5979b34444815287d61bd2a4e193cebbc7a6.tar.gz",
|
||||||
"url_template": "https://github.com/<owner>/<repo>/archive/<rev>.tar.gz"
|
"url_template": "https://github.com/<owner>/<repo>/archive/<rev>.tar.gz"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -449,8 +449,8 @@ where
|
||||||
/// stack. In this case, the frame is not returned to the frame stack.
|
/// stack. In this case, the frame is not returned to the frame stack.
|
||||||
///
|
///
|
||||||
/// 2. The code encounters a generator, in which case the frame in its
|
/// 2. The code encounters a generator, in which case the frame in its
|
||||||
/// current state is pushed back on the stack, and the generator is left on
|
/// current state is pushed back on the stack, and the generator is left
|
||||||
/// top of it for the outer loop to execute.
|
/// on top of it for the outer loop to execute.
|
||||||
///
|
///
|
||||||
/// 3. An error is encountered.
|
/// 3. An error is encountered.
|
||||||
///
|
///
|
||||||
|
|
|
@ -230,7 +230,10 @@ where
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[allow(clippy::needless_borrows_for_generic_args)] // misfiring lint (breaks code below)
|
||||||
this.scanner.scan(&this.buffer);
|
this.scanner.scan(&this.buffer);
|
||||||
|
|
||||||
Poll::Ready(Ok(&this.buffer[*this.consumed..]))
|
Poll::Ready(Ok(&this.buffer[*this.consumed..]))
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -29,9 +29,11 @@ struct ArchiveReader<'a, 'r> {
|
||||||
inner: &'a mut Reader<'r>,
|
inner: &'a mut Reader<'r>,
|
||||||
|
|
||||||
/// In debug mode, also track when we need to abandon this archive reader.
|
/// In debug mode, also track when we need to abandon this archive reader.
|
||||||
|
///
|
||||||
/// The archive reader must be abandoned when:
|
/// The archive reader must be abandoned when:
|
||||||
/// * An error is encountered at any point
|
/// * An error is encountered at any point
|
||||||
/// * A file or directory reader is dropped before being read entirely.
|
/// * A file or directory reader is dropped before being read entirely.
|
||||||
|
///
|
||||||
/// All of these checks vanish in release mode.
|
/// All of these checks vanish in release mode.
|
||||||
status: ArchiveReaderStatus<'a>,
|
status: ArchiveReaderStatus<'a>,
|
||||||
}
|
}
|
||||||
|
|
|
@ -72,7 +72,8 @@ impl CAHash {
|
||||||
/// - `text:sha256:$nixbase32sha256digest`
|
/// - `text:sha256:$nixbase32sha256digest`
|
||||||
/// - `fixed:r:$algo:$nixbase32digest`
|
/// - `fixed:r:$algo:$nixbase32digest`
|
||||||
/// - `fixed:$algo:$nixbase32digest`
|
/// - `fixed:$algo:$nixbase32digest`
|
||||||
/// which is the format that's used in the NARInfo for example.
|
///
|
||||||
|
/// These formats are used in NARInfo, for example.
|
||||||
pub fn from_nix_hex_str(s: &str) -> Option<Self> {
|
pub fn from_nix_hex_str(s: &str) -> Option<Self> {
|
||||||
let (tag, s) = s.split_once(':')?;
|
let (tag, s) = s.split_once(':')?;
|
||||||
|
|
||||||
|
@ -108,11 +109,13 @@ impl CAHash {
|
||||||
/// know whether we have a invalid or a missing NixHashWithMode structure in another structure,
|
/// know whether we have a invalid or a missing NixHashWithMode structure in another structure,
|
||||||
/// e.g. Output.
|
/// e.g. Output.
|
||||||
/// This means we have this combinatorial situation:
|
/// This means we have this combinatorial situation:
|
||||||
|
///
|
||||||
/// - no hash, no hashAlgo: no [CAHash] so we return Ok(None).
|
/// - no hash, no hashAlgo: no [CAHash] so we return Ok(None).
|
||||||
/// - present hash, missing hashAlgo: invalid, we will return missing_field
|
/// - present hash, missing hashAlgo: invalid, we will return missing_field
|
||||||
/// - missing hash, present hashAlgo: same
|
/// - missing hash, present hashAlgo: same
|
||||||
/// - present hash, present hashAlgo: either we return ourselves or a type/value validation
|
/// - present hash, present hashAlgo: either we return ourselves or a type/value validation
|
||||||
/// error.
|
/// error.
|
||||||
|
///
|
||||||
/// This function is for internal consumption regarding those needs until we have a better
|
/// This function is for internal consumption regarding those needs until we have a better
|
||||||
/// solution. Now this is said, let's explain how this works.
|
/// solution. Now this is said, let's explain how this works.
|
||||||
///
|
///
|
||||||
|
|
|
@ -10,13 +10,6 @@
|
||||||
depot.third_party.sources = import ./sources { };
|
depot.third_party.sources = import ./sources { };
|
||||||
additionalOverlays = [
|
additionalOverlays = [
|
||||||
(self: super: {
|
(self: super: {
|
||||||
# https://github.com/googleapis/google-cloud-go/pull/9665
|
|
||||||
cbtemulator = super.cbtemulator.overrideAttrs (old: {
|
|
||||||
patches = old.patches or [ ] ++ [
|
|
||||||
./nixpkgs/cbtemulator-uds.patch
|
|
||||||
];
|
|
||||||
});
|
|
||||||
|
|
||||||
# macFUSE bump containing fix for https://github.com/osxfuse/osxfuse/issues/974
|
# macFUSE bump containing fix for https://github.com/osxfuse/osxfuse/issues/974
|
||||||
# https://github.com/NixOS/nixpkgs/pull/320197
|
# https://github.com/NixOS/nixpkgs/pull/320197
|
||||||
fuse =
|
fuse =
|
||||||
|
|
|
@ -1,10 +1,12 @@
|
||||||
{ depot, pkgs, lib, ... }:
|
{ depot, pkgs, lib, ... }:
|
||||||
|
|
||||||
depot.nix.writers.rustSimple
|
(depot.nix.writers.rustSimple
|
||||||
{
|
{
|
||||||
name = "git-db";
|
name = "git-db";
|
||||||
dependencies = [
|
dependencies = [
|
||||||
depot.third_party.rust-crates.git2
|
depot.third_party.rust-crates.git2
|
||||||
];
|
];
|
||||||
|
}
|
||||||
|
(builtins.readFile ./git-db.rs)) // {
|
||||||
|
meta.broken = true;
|
||||||
}
|
}
|
||||||
(builtins.readFile ./git-db.rs)
|
|
||||||
|
|
|
@ -34,7 +34,7 @@ in
|
||||||
openssl
|
openssl
|
||||||
|
|
||||||
# Nix things
|
# Nix things
|
||||||
nixfmt
|
nixfmt-classic
|
||||||
nix-prefetch-github
|
nix-prefetch-github
|
||||||
nixpkgs-review
|
nixpkgs-review
|
||||||
cachix
|
cachix
|
||||||
|
|
|
@ -43,7 +43,7 @@
|
||||||
openssl
|
openssl
|
||||||
|
|
||||||
# Nix things
|
# Nix things
|
||||||
nixfmt
|
nixfmt-classic
|
||||||
nix-prefetch-github
|
nix-prefetch-github
|
||||||
nixpkgs-review
|
nixpkgs-review
|
||||||
cachix
|
cachix
|
||||||
|
|
|
@ -83,6 +83,7 @@
|
||||||
vSync = true;
|
vSync = true;
|
||||||
};
|
};
|
||||||
hardware.graphics.enable32Bit = true;
|
hardware.graphics.enable32Bit = true;
|
||||||
|
hardware.nvidia.open = true;
|
||||||
|
|
||||||
services.postgresql = {
|
services.postgresql = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
@ -90,8 +91,8 @@
|
||||||
authentication = "host all all 0.0.0.0/0 md5";
|
authentication = "host all all 0.0.0.0/0 md5";
|
||||||
dataDir = "/data/postgresql";
|
dataDir = "/data/postgresql";
|
||||||
package = pkgs.postgresql_15;
|
package = pkgs.postgresql_15;
|
||||||
port = 5431;
|
|
||||||
settings = {
|
settings = {
|
||||||
|
port = 5431;
|
||||||
wal_level = "logical";
|
wal_level = "logical";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
|
@ -66,8 +66,6 @@ in
|
||||||
mouse.naturalScrolling = false;
|
mouse.naturalScrolling = false;
|
||||||
mouse.disableWhileTyping = true;
|
mouse.disableWhileTyping = true;
|
||||||
};
|
};
|
||||||
# services.xserver.libinput.touchpad.clickMethod = "clickfinger";
|
|
||||||
# services.xserver.libinput.touchpad.tapping = false;
|
|
||||||
|
|
||||||
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
||||||
system.stateVersion = "24.11";
|
system.stateVersion = "24.11";
|
||||||
|
|
|
@ -14,11 +14,7 @@
|
||||||
libinput.enable = true;
|
libinput.enable = true;
|
||||||
|
|
||||||
xserver = {
|
xserver = {
|
||||||
enable = true;
|
enable = true; # wayland doesn't work otherwise ...?!
|
||||||
xkb.layout = "us";
|
|
||||||
xkb.options = "caps:super";
|
|
||||||
|
|
||||||
displayManager.sessionPackages = [ pkgs.niri ];
|
|
||||||
displayManager.gdm = {
|
displayManager.gdm = {
|
||||||
enable = true;
|
enable = true;
|
||||||
wayland = true;
|
wayland = true;
|
||||||
|
@ -26,6 +22,8 @@
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
services.displayManager.sessionPackages = [ pkgs.niri ];
|
||||||
|
|
||||||
programs.xwayland.enable = true;
|
programs.xwayland.enable = true;
|
||||||
|
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
|
|
|
@ -74,8 +74,8 @@ in
|
||||||
graphics.enable = true;
|
graphics.enable = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
services.xserver.libinput.touchpad.clickMethod = "clickfinger";
|
services.libinput.touchpad.clickMethod = "clickfinger";
|
||||||
services.xserver.libinput.touchpad.tapping = false;
|
services.libinput.touchpad.tapping = false;
|
||||||
services.avahi.enable = true;
|
services.avahi.enable = true;
|
||||||
services.tailscale.enable = true;
|
services.tailscale.enable = true;
|
||||||
|
|
||||||
|
|
|
@ -50,13 +50,14 @@ in
|
||||||
interval = "1d";
|
interval = "1d";
|
||||||
};
|
};
|
||||||
|
|
||||||
xserver = {
|
|
||||||
enable = true;
|
|
||||||
libinput = {
|
libinput = {
|
||||||
enable = true;
|
enable = true;
|
||||||
touchpad.naturalScrolling = false;
|
touchpad.naturalScrolling = false;
|
||||||
touchpad.tapping = false;
|
touchpad.tapping = false;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
xserver = {
|
||||||
|
enable = true;
|
||||||
xkb.layout = "us";
|
xkb.layout = "us";
|
||||||
xkb.options = "caps:escape";
|
xkb.options = "caps:escape";
|
||||||
displayManager = {
|
displayManager = {
|
||||||
|
|
Loading…
Reference in a new issue