Enable/disable console autologin
diff --git a/README.rst b/README.rst
index 1bd6f32..d7454ee 100644
--- a/README.rst
+++ b/README.rst
@@ -106,6 +106,18 @@
hour: 2
minute: 0
+Enable autologin on tty1 (may work only for Ubuntu 14.04):
+
+.. code-block:: yaml
+
+ linux:
+ system:
+ console:
+ tty1:
+ autologin: root
+
+To disable set autologin to `false`.
+
Repositories
~~~~~~~~~~~~
diff --git a/linux/system/console.sls b/linux/system/console.sls
new file mode 100644
index 0000000..18e0d81
--- /dev/null
+++ b/linux/system/console.sls
@@ -0,0 +1,26 @@
+{%- from "linux/map.jinja" import system with context %}
+{%- if system.enabled %}
+
+{%- if system.console is defined %}
+
+{%- for tty_name, console in system.console.iteritems() %}
+
+{%- if console.autologin %}
+autologin_{{ tty_name }}_enable:
+ cmd.run:
+ - name: "sed -i 's|/sbin/getty|/sbin/getty --autologin {{ console.autologin }}|g' /etc/init/{{ tty_name }}.conf"
+ - unless: |
+ "grep '\-\-autologin' /etc/init/{{ tty_name }}.conf"
+{%- else %}
+autologin_{{ tty_name }}_disable:
+ cmd.run:
+ - name: "sed -i 's| \-\-autologin [a-zA-Z0-9]*||g' /etc/init/{{ tty_name }}.conf"
+ - onlyif: |
+ "grep '\-\-autologin' /etc/init/{{ tty_name }}.conf"
+{%- endif %}
+
+{%- endfor %}
+
+{%- endif %}
+
+{%- endif %}
diff --git a/linux/system/init.sls b/linux/system/init.sls
index b8b3a48..f46bf09 100644
--- a/linux/system/init.sls
+++ b/linux/system/init.sls
@@ -33,3 +33,6 @@
{%- if system.apparmor is defined %}
- linux.system.apparmor
{%- endif %}
+{%- if system.console is defined %}
+- linux.system.console
+{%- endif %}