aboutsummaryrefslogtreecommitdiffstats
path: root/test_.lua
blob: 629c1518a7ad52c671d8d7365fdc1812d5ef4c2b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
#!/usr/bin/env luajit


local _ = require '_'
local D = _.D
local I = _.I
local T = _.T
local W = _.W
local E = _.E
local C = _.C
local __ = _._


D('Starting from the top.')

local Help = [[
This is part of the blah blah blah...
]]



local args = {...}
if 0 ~= #args then
--    for i,a in pairs(args) do
--	print('Argument ' .. i .. ' = ' .. a)
--    end

    if     'start'        == args[1] then
    elseif 'stop'         == args[1] then
--[=[
	_.killEmAll{'qsynth'}
	__[[
a2j_control --stop
sleep 2
a2j_control --exit
sleep 2
]]:Do()
	_.killEmAll{'alsa_in', 'alsa_out', 'zita-a2j', 'zita-j2a',  'aseqjoy', 'jack-plumbing'}
	__[[
sleep 2
jack_control stop
sleep 2
jack_control exit
sleep 2
]]:Do()
	_.killEmAll{'jmcore', 'qjackctl'}
	-- Catia is python, and no easy way to kill it.
	-- Also it keeps jackdbus alive, no matter how hard you kill it.
	__"pkill -TERM -u $USER -f catia":Do()
	__"sleep 2":Do()
	_.killEmAll{'jackdbus', 'a2jmidid'}
]=]
	return(0)
    elseif 'JACK'         == args[1] then
    elseif 'restart'      == args[1] then args[1] = 'start'
    elseif 'force-reload' == args[1] then args[1] = 'start'
    elseif 'status'       == args[1] then
	return(0)
    elseif 'help'         == args[1] then
	print(Help)
	return(0)
    elseif '--help'       == args[1] then
	print(Help)
	return(0)
    else
	print("Usage: /etc/init.d/aataaj.lua {start|stop|restart|force-reload|status}")
	return(1)
    end
else
    print("Usage: /etc/init.d/aataaj.lua {help|start|stop|restart|force-reload|status|JACK}")
    return(1)
end



local GUI = 'qjackctl'
if _.runnable'catia' then GUI = 'catia' end

local speaker = 'espeak'
if _.runnable'espeak-ng' then speaker = 'espeak-ng' end



for i,l in ipairs(__'df -h':log():Do().lines) do
    print(l)
end
print('')

__'df -h':log():also'free -h':show():Do()
print('')

for i,l in ipairs(__'df -h\nfree -h':log():Do().lines) do
    print(l)
end
print('')

__[[
    df -h
    free -h
]]:log():show():Do()
print('')

for i,l in ipairs(__{'df -h', 'free -h'}:log():Do().lines) do
    print(l)
end
print('')

print('' .. GUI .. '  ' .. speaker)
print('')

print(__'true':log():show():Do().status)
print(__'false':log():show():Do().status)
print(__'exit 42':log():show():Do().status)
print(__'return 42':log():show():Do().status)
print(__'command NoSuchCommand':log():show():Do().status)

__'qpdfview':forkOnce()
__'qpdfview':forkOnce()