2 description = "Nix Flake to use LibreOffice Base with an SQLite database";
4 nixpkgs.url = "flake:nixpkgs";
8 lib = inputs.nixpkgs.lib;
9 forAllSystems = f: lib.genAttrs lib.systems.flakeExposed (system: f rec {
11 pkgs = inputs.nixpkgs.legacyPackages.${system};
15 devShells = forAllSystems ({ pkgs, system, ... }: {
17 let driverSqlite = "${pkgs.lib.getLib pkgs.unixODBCDrivers.sqlite}/lib/libsqlite3odbc.so"; in
19 JAVA_HOME = pkgs.libreoffice.unwrapped.jdk;
20 ODBCSYSINI = pkgs.writeTextDir "odbcinst.ini" ''
22 SQLite3Driver=Installed
25 Description = SQLite ODBC Driver
26 Driver = ${driverSqlite}
27 Setup = ${driverSqlite}
36 # Sadly does not work: https://github.com/sqitchers/docker-sqitch/pull/16/.
40 ODBCINI = pkgs.writeText "odbc.ini" ''
44 Database=/home/julm/work/julminfo/sibert/test.sqlite
45 TraceFile=/home/julm/work/julminfo/sibert/test.log
48 # DescriptionNote: optional lock timeout in milliseconds; default 100000
59 bat $ODBCSYSINI/odbcinst.ini
61 export LD_LIBRARY_PATH=${pkgs.lib.makeLibraryPath [pkgs.unixODBC]}:$LD_LIBRARY_PATH
64 odbcinst -q -d -n SQLite3Driver
66 odbcinst -q -s -n testDSN
68 '' # + checks.${system}.git-hooks-check.shellHook