installer: migrate apps to cuelang
diff --git a/charts/headscale-controller/templates/install.yaml b/charts/headscale-controller/templates/install.yaml
index e145667..7c2c129 100644
--- a/charts/headscale-controller/templates/install.yaml
+++ b/charts/headscale-controller/templates/install.yaml
@@ -1,59 +1,3 @@
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata:
-  annotations:
-    controller-gen.kubebuilder.io/version: v0.9.2
-  creationTimestamp: null
-  name: headscaleusers.headscale.dodo.cloud
-spec:
-  group: headscale.dodo.cloud
-  names:
-    kind: HeadscaleUser
-    listKind: HeadscaleUserList
-    plural: headscaleusers
-    singular: headscaleuser
-  scope: Namespaced
-  versions:
-  - name: v1
-    schema:
-      openAPIV3Schema:
-        description: HeadscaleUser is the Schema for the headscaleusers API
-        properties:
-          apiVersion:
-            description: 'APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
-            type: string
-          kind:
-            description: 'Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
-            type: string
-          metadata:
-            type: object
-          spec:
-            description: HeadscaleUserSpec defines the desired state of HeadscaleUser
-            properties:
-              headscaleAddress:
-                type: string
-              name:
-                type: string
-              preAuthKey:
-                properties:
-                  enabled:
-                    type: boolean
-                  secretName:
-                    type: string
-                type: object
-            type: object
-          status:
-            description: HeadscaleUserStatus defines the observed state of HeadscaleUser
-            properties:
-              ready:
-                type: boolean
-            type: object
-        type: object
-    served: true
-    storage: true
-    subresources:
-      status: {}
----
 apiVersion: v1
 kind: ServiceAccount
 metadata:
@@ -281,7 +225,7 @@
         - --upstream=http://127.0.0.1:8080/
         - --logtostderr=true
         - --v=0
-        image: gcr.io/kubebuilder/kube-rbac-proxy:v0.13.0
+        image: {{ .Values.kubeRBACProxy.image.repository }}:{{ .Values.kubeRBACProxy.image.tag }}
         name: kube-rbac-proxy
         ports:
         - containerPort: 8443
@@ -305,8 +249,8 @@
         - --leader-elect
         command:
         - /manager
-        image: giolekva/headscale-controller:latest
-        imagePullPolicy: Always
+        image: {{ .Values.image.repository }}:{{ .Values.image.tag }}
+        imagePullPolicy: {{ .Values.image.pullPolicy }}
         livenessProbe:
           httpGet:
             path: /healthz