summaryrefslogtreecommitdiff
path: root/modules
diff options
context:
space:
mode:
authorDaiderd Jordan <daiderd@gmail.com>2017-05-20 14:23:05 +0200
committerDaiderd Jordan <daiderd@gmail.com>2017-05-20 14:23:05 +0200
commit290b1d8aad2c7e28a7fe51e1d7bbf145445da851 (patch)
tree0ae52a89fb1438077daee9ec9d3f52402b731624 /modules
parente88b408ee73d54569de5eb4b186b35d5888a44c9 (diff)
system-packages: link applications to ~/Applications
Diffstat (limited to 'modules')
-rw-r--r--modules/system/activation-scripts.nix1
-rw-r--r--modules/system/applications.nix35
-rw-r--r--modules/system/default.nix1
3 files changed, 37 insertions, 0 deletions
diff --git a/modules/system/activation-scripts.nix b/modules/system/activation-scripts.nix
index 47e0ed4..301c612 100644
--- a/modules/system/activation-scripts.nix
+++ b/modules/system/activation-scripts.nix
@@ -56,6 +56,7 @@ in
${cfg.activationScripts.nix.text}
${cfg.activationScripts.accessibility.text}
+ ${cfg.activationScripts.applications.text}
${cfg.activationScripts.etc.text}
${cfg.activationScripts.launchd.text}
${cfg.activationScripts.time.text}
diff --git a/modules/system/applications.nix b/modules/system/applications.nix
new file mode 100644
index 0000000..4b6ae9d
--- /dev/null
+++ b/modules/system/applications.nix
@@ -0,0 +1,35 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+let
+
+ cfg = config.system;
+
+in
+
+{
+ options = {
+ };
+
+ config = {
+
+ system.build.applications = pkgs.buildEnv {
+ name = "system-applications";
+ paths = config.environment.systemPackages;
+ pathsToLink = "/Applications";
+ };
+
+ system.activationScripts.applications.text = ''
+ # Set up applications.
+ echo "setting up ~/Applications..." >&2
+
+ if [ -d ~/Applications ]; then
+ echo "warning: ~/Applications is a directory, skipping..." >&2
+ else
+ ln -sfn ${cfg.build.applications}/Applications ~/Applications
+ fi
+ '';
+
+ };
+}
diff --git a/modules/system/default.nix b/modules/system/default.nix
index fb59150..2710777 100644
--- a/modules/system/default.nix
+++ b/modules/system/default.nix
@@ -91,6 +91,7 @@ in
ln -s ${cfg.path} $out/sw
mkdir -p $out/Library
+ ln -s ${cfg.build.applications}/Applications $out/Applications
ln -s ${cfg.build.launchd}/Library/LaunchAgents $out/Library/LaunchAgents
ln -s ${cfg.build.launchd}/Library/LaunchDaemons $out/Library/LaunchDaemons