installer: separate suffix and prefix generation.

Reuse suffix for app dir name.
diff --git a/core/installer/welcome/env.go b/core/installer/welcome/env.go
index 67e51d9..ab1504d 100644
--- a/core/installer/welcome/env.go
+++ b/core/installer/welcome/env.go
@@ -181,12 +181,13 @@
 	}
 	r.CommitAndPush("initialize config")
 	nsGen := installer.NewPrefixGenerator(req.Name + "-")
+	suffixGen := installer.NewEmptySuffixGenerator()
 	{
 		app, err := appsRepo.Find("metallb-config-env")
 		if err != nil {
 			return err
 		}
-		if err := appManager.Install(*app, nsGen, map[string]any{
+		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",
@@ -203,7 +204,7 @@
 		if err != nil {
 			return err
 		}
-		if err := appManager.Install(*app, nsGen, map[string]any{}); err != nil {
+		if err := appManager.Install(*app, nsGen, suffixGen, map[string]any{}); err != nil {
 			return err
 		}
 	}
@@ -212,7 +213,7 @@
 		if err != nil {
 			return err
 		}
-		if err := appManager.Install(*app, nsGen, map[string]any{}); err != nil {
+		if err := appManager.Install(*app, nsGen, suffixGen, map[string]any{}); err != nil {
 			return err
 		}
 	}
@@ -221,7 +222,7 @@
 		if err != nil {
 			return err
 		}
-		if err := appManager.Install(*app, nsGen, map[string]any{
+		if err := appManager.Install(*app, nsGen, suffixGen, map[string]any{
 			"Subdomain": "test", // TODO(giolekva): make core-auth chart actually use this
 		}); err != nil {
 			return err
@@ -232,7 +233,7 @@
 		if err != nil {
 			return err
 		}
-		if err := appManager.Install(*app, nsGen, map[string]any{
+		if err := appManager.Install(*app, nsGen, suffixGen, map[string]any{
 			"Subdomain": "headscale",
 		}); err != nil {
 			return err
@@ -254,7 +255,7 @@
 		if err != nil {
 			return err
 		}
-		if err := appManager.Install(*app, nsGen, map[string]any{
+		if err := appManager.Install(*app, nsGen, suffixGen, map[string]any{
 			"RepoAddr":      ss.GetRepoAddress(req.Name),
 			"SSHPrivateKey": keys.Private,
 		}); err != nil {
diff --git a/core/installer/welcome/welcome.go b/core/installer/welcome/welcome.go
index d34580f..ac13f06 100644
--- a/core/installer/welcome/welcome.go
+++ b/core/installer/welcome/welcome.go
@@ -95,7 +95,8 @@
 		if err != nil {
 			return err
 		}
-		nsGen := installer.NewPrefixGenerator(config.Values.Id + "-")
+		nsGen := installer.NewPrefixGenerator(config.Values.NamespacePrefix)
+		suffixGen := installer.NewEmptySuffixGenerator()
 		appManager, err := installer.NewAppManager(s.repo, s.nsCreator)
 		if err != nil {
 			return err
@@ -106,7 +107,7 @@
 			if err != nil {
 				return err
 			}
-			if err := appManager.Install(*app, nsGen, map[string]any{
+			if err := appManager.Install(*app, nsGen, suffixGen, map[string]any{
 				"GandiAPIToken": req.GandiAPIToken,
 			}); err != nil {
 				return err
@@ -117,7 +118,7 @@
 			if err != nil {
 				return err
 			}
-			if err := appManager.Install(*app, nsGen, map[string]any{
+			if err := appManager.Install(*app, nsGen, suffixGen, map[string]any{
 				"Username": req.Username,
 				"IPSubnet": "10.1.0.0/24", // TODO(giolekva): this should be taken from the config generated during new env creation
 			}); err != nil {