From 9b1cfeff18a23dfbefd485741ac4609c92707dfd Mon Sep 17 00:00:00 2001
From: Christian Poessinger <christian@poessinger.com>
Date: Mon, 30 Dec 2019 15:44:55 +0100
Subject: beep: T1920: migrate to systemd unit

---
 src/conf_mode/beep_if_fully_booted.py | 42 -----------------------------------
 src/conf_mode/system-options.py       |  7 ++++++
 2 files changed, 7 insertions(+), 42 deletions(-)
 delete mode 100755 src/conf_mode/beep_if_fully_booted.py

(limited to 'src/conf_mode')

diff --git a/src/conf_mode/beep_if_fully_booted.py b/src/conf_mode/beep_if_fully_booted.py
deleted file mode 100755
index f00fcabd0..000000000
--- a/src/conf_mode/beep_if_fully_booted.py
+++ /dev/null
@@ -1,42 +0,0 @@
-#!/usr/bin/env python3
-#
-# Copyright (C) 2018 VyOS maintainers and contributors
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 or later as
-# published by the Free Software Foundation.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-#
-#
-
-import sys
-import os
-
-from vyos.config import Config
-from vyos import ConfigError
-
-def get_config():
-    conf = Config()
-    if not conf.exists('system options beep-if-fully-booted'):
-        return None
-
-    return True
-
-def apply(status):
-    if status is not None:
-        os.system('/usr/bin/beep -f 130 -l 100 -n -f 262 -l 100 -n -f 330 -l 100 -n -f 392 -l 100 -n -f 523 -l 100 -n -f 660 -l 100 -n -f 784 -l 300 -n -f 660 -l 300')
-
-if __name__ == '__main__':
-    try:
-        c = get_config()
-        apply(c)
-    except ConfigError as e:
-        print(e)
-        sys.exit(1)
diff --git a/src/conf_mode/system-options.py b/src/conf_mode/system-options.py
index 4c809d044..74c34e19f 100755
--- a/src/conf_mode/system-options.py
+++ b/src/conf_mode/system-options.py
@@ -24,6 +24,7 @@ from vyos import ConfigError
 systemd_ctrl_alt_del = '/lib/systemd/system/ctrl-alt-del.target'
 
 default_config_data = {
+    'beep_if_fully_booted': False,
     'ctrl_alt_del': 'ignore',
     'reboot_on_panic': True
 }
@@ -36,6 +37,7 @@ def get_config():
         if conf.exists('ctrl-alt-del-action'):
             opt['ctrl_alt_del'] = conf.return_value('ctrl-alt-del-action')
 
+        opt['beep_if_fully_booted'] = conf.exists('beep-if-fully-booted')
         opt['reboot_on_panic'] = conf.exists('reboot-on-panic')
 
     return opt
@@ -47,6 +49,11 @@ def generate(opt):
     pass
 
 def apply(opt):
+    # Beep action
+    if opt['beep_if_fully_booted']:
+        os.system('systemctl enable vyos-beep.service >/dev/null 2>&1')
+    else:
+        os.system('systemctl disable vyos-beep.service >/dev/null 2>&1')
 
     # Ctrl-Alt-Delete action
     if opt['ctrl_alt_del'] == 'ignore':
-- 
cgit v1.2.3