diff --git a/core/installer/app.go b/core/installer/app.go
index 774bea8..902e686 100644
--- a/core/installer/app.go
+++ b/core/installer/app.go
@@ -89,7 +89,6 @@
 		CreateAppCoreAuth(valuesTmpls, tmpls),
 		CreateAppHeadscale(valuesTmpls, tmpls),
 		CreateAppTailscaleProxy(valuesTmpls, tmpls),
-		CreateMetallbConfigEnv(valuesTmpls, tmpls),
 		CreateMetallbIPAddressPool(valuesTmpls, tmpls),
 		CreateEnvManager(valuesTmpls, tmpls),
 		CreateWelcome(valuesTmpls, tmpls),
@@ -385,22 +384,6 @@
 	}
 }
 
-func CreateMetallbConfigEnv(fs embed.FS, tmpls *template.Template) App {
-	schema, err := fs.ReadFile("values-tmpl/metallb-config-env.jsonschema")
-	if err != nil {
-		panic(err)
-	}
-	return App{
-		"metallb-config-env",
-		[]string{"metallb-config"},
-		[]*template.Template{
-			tmpls.Lookup("metallb-config-env.yaml"),
-		},
-		string(schema),
-		tmpls.Lookup("metallb-config-env.md"),
-	}
-}
-
 func CreateMetallbIPAddressPool(fs embed.FS, tmpls *template.Template) App {
 	schema, err := fs.ReadFile("values-tmpl/metallb-ipaddresspool.jsonschema")
 	if err != nil {
diff --git a/core/installer/values-tmpl/metallb-config-env.jsonschema b/core/installer/values-tmpl/metallb-config-env.jsonschema
deleted file mode 100644
index 6eca710..0000000
--- a/core/installer/values-tmpl/metallb-config-env.jsonschema
+++ /dev/null
@@ -1,17 +0,0 @@
-{
-  "type": "object",
-  "properties": {
-    "IngressPrivate": { "type": "string" },
-    "Headscale": { "type": "string" },
-    "SoftServe": { "type": "string" },
-    "Rest": {
-      "type": "object",
-      "properties": {
-        "From": { "type": "string" },
-        "To": { "type": "string" }
-      },
-      "additionalProperties": false
-    }
-  },
-  "additionalProperties": false
-}
diff --git a/core/installer/values-tmpl/metallb-config-env.md b/core/installer/values-tmpl/metallb-config-env.md
deleted file mode 100644
index 257cc56..0000000
--- a/core/installer/values-tmpl/metallb-config-env.md
+++ /dev/null
@@ -1 +0,0 @@
-foo
diff --git a/core/installer/values-tmpl/metallb-config-env.yaml b/core/installer/values-tmpl/metallb-config-env.yaml
deleted file mode 100644
index defa5ec..0000000
--- a/core/installer/values-tmpl/metallb-config-env.yaml
+++ /dev/null
@@ -1,22 +0,0 @@
-apiVersion: helm.toolkit.fluxcd.io/v2beta1
-kind: HelmRelease
-metadata:
-  name: metallb-config-env
-  namespace: {{ .Release.Namespace }}
-spec:
-  chart:
-    spec:
-      chart: charts/metallb-config-env
-      sourceRef:
-        kind: GitRepository
-        name: pcloud
-        namespace: {{ .Global.Id }}
-  interval: 1m0s
-  values:
-    id: {{ .Global.Id }}
-    ingressPrivate: {{ .Values.IngressPrivate }}
-    headscale: {{ .Values.Headscale }}
-    softServe: {{ .Values.SoftServe }}
-    rest:
-      from: {{ .Values.Rest.From }}
-      to: {{ .Values.Rest.To }}
diff --git a/core/installer/welcome/env.go b/core/installer/welcome/env.go
index 6fc03dc..4eea2c7 100644
--- a/core/installer/welcome/env.go
+++ b/core/installer/welcome/env.go
@@ -183,18 +183,39 @@
 	nsGen := installer.NewPrefixGenerator(req.Name + "-")
 	suffixGen := installer.NewEmptySuffixGenerator()
 	{
-		app, err := appsRepo.Find("metallb-config-env")
+		app, err := appsRepo.Find("metallb-ipaddresspool")
 		if err != nil {
 			return err
 		}
 		if err := appManager.Install(*app, nsGen, suffixGen, map[string]any{
-			"IngressPrivate": "10.1.0.1",
-			"Headscale":      "10.1.0.2",
-			"SoftServe":      "10.1.0.3",
-			"Rest": map[string]any{
-				"From": "10.1.0.100",
-				"To":   "10.1.0.255",
-			},
+			"Name":       fmt.Sprintf("%s-ingress-private", req.Name),
+			"From":       "10.1.0.1",
+			"To":         "10.1.0.1",
+			"AutoAssign": false,
+		}); err != nil {
+			return err
+		}
+		if err := appManager.Install(*app, nsGen, suffixGen, map[string]any{
+			"Name":       fmt.Sprintf("%s-headscale", req.Name),
+			"From":       "10.1.0.2",
+			"To":         "10.1.0.2",
+			"AutoAssign": false,
+		}); err != nil {
+			return err
+		}
+		if err := appManager.Install(*app, nsGen, suffixGen, map[string]any{
+			"Name":       fmt.Sprintf("%s-soft-serve", req.Name), // TODO(giolekva): rename to config repo
+			"From":       "10.1.0.3",
+			"To":         "10.1.0.3",
+			"AutoAssign": false,
+		}); err != nil {
+			return err
+		}
+		if err := appManager.Install(*app, nsGen, suffixGen, map[string]any{
+			"Name":       req.Name,
+			"From":       "10.1.0.100",
+			"To":         "10.1.0.254",
+			"AutoAssign": false,
 		}); err != nil {
 			return err
 		}
