diff --git a/hosts/bekkalokk/configuration.nix b/hosts/bekkalokk/configuration.nix index 1c21b7be..3976080d 100644 --- a/hosts/bekkalokk/configuration.nix +++ b/hosts/bekkalokk/configuration.nix @@ -10,7 +10,7 @@ #./services/keycloak.nix # TODO: set up authentication for the following: - # ./services/website.nix + ./services/website.nix ./services/nginx.nix ./services/gitea/default.nix # ./services/mediawiki.nix diff --git a/hosts/bekkalokk/services/nettsiden/default.nix b/hosts/bekkalokk/services/nettsiden/default.nix new file mode 100644 index 00000000..86c74dcc --- /dev/null +++ b/hosts/bekkalokk/services/nettsiden/default.nix @@ -0,0 +1,6 @@ +{ pkgs, inputs, ... }: +let +in +{ + +} diff --git a/hosts/bekkalokk/services/nettsiden/package.nix b/hosts/bekkalokk/services/nettsiden/package.nix new file mode 100644 index 00000000..927e0bd0 --- /dev/null +++ b/hosts/bekkalokk/services/nettsiden/package.nix @@ -0,0 +1,53 @@ +{ +src, +php82, +php82Extensions, +sqlite, +git, +... +}: + pkgs.stdenvNoCC.mkDerivation { + pname = "nettsiden"; + version = "0.1.0"; + inherit src; + + buildInputs = [ + php82 + (with php82Extensions; [ + iconv + mbstring + pdo_mysql + pdo_sqlite + ]) + sqlite + git + ]; + + buildPhase = '' + export PHPHOST=localhost + export PHPPORT=1080 + alias runDev='php -S $PHPHOST:$PHPPORT -d error_reporting=E_ALL -d display_errors=1 -t www/' + + # Prepare dev environment with sqlite and config files + test -e pvv.sqlite || sqlite3 pvv.sqlite < dist/pvv.sql + test -e sql_config.php || cp -v dist/sql_config_example.php sql_config.php + + test -e dataporten_config.php || cp -v dist/dataporten_config.php dataporten_config.php + + test -e composer.phar || curl -O https://getcomposer.org/composer.phar + + if [ ! -f lib/OAuth2-Client/OAuth2Client.php ] ; then + echo Missing git submodules. Installing... + (set -x; git submodule update --init --recursive) || exit $? + fi + + if [ ! -d vendor ] ; then + php composer.phar install || exit $? + cp -v dist/authsources_example.php vendor/simplesamlphp/simplesamlphp/config/authsources.php + cp -v dist/saml20-idp-remote.php vendor/simplesamlphp/simplesamlphp/metadata/saml20-idp-remote.php + cp -v vendor/simplesamlphp/simplesamlphp/config-templates/config.php vendor/simplesamlphp/simplesamlphp/config/config.php + sed -e "s/'trusted.url.domains' => array()/'trusted.url.domains' => array(\"$PHPHOST:$PHPPORT\")/g" < vendor/simplesamlphp/simplesamlphp/config-templates/config.php > vendor/simplesamlphp/simplesamlphp/config/config.php + ln -s ../vendor/simplesamlphp/simplesamlphp/www/ www/simplesaml + fi + ''; + };