aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJozanLeClerc <bousset.rudy@gmail.com>2022-03-24 15:21:52 +0100
committerJozanLeClerc <bousset.rudy@gmail.com>2022-03-24 15:21:52 +0100
commit8df61d562ccf757e9d47019d403e41597b8ea018 (patch)
treef542c1ffea7a405b36018170e09e5d6eb3e6dfb9
downloadgo2work-8df61d562ccf757e9d47019d403e41597b8ea018.tar.gz
go2work-8df61d562ccf757e9d47019d403e41597b8ea018.tar.bz2
go2work-8df61d562ccf757e9d47019d403e41597b8ea018.tar.xz
go2work-8df61d562ccf757e9d47019d403e41597b8ea018.tar.zst
go2work-8df61d562ccf757e9d47019d403e41597b8ea018.zip
First commit
-rw-r--r--.gitignore1
-rw-r--r--Makefile56
-rw-r--r--src/c_go2work.go76
-rw-r--r--src/c_player.go63
4 files changed, 196 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..3e44db4
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1 @@
+go2work
diff --git a/Makefile b/Makefile
new file mode 100644
index 0000000..809f6b8
--- /dev/null
+++ b/Makefile
@@ -0,0 +1,56 @@
+# ========================
+# ===== ===============
+# ====== ================
+# ====== ================
+# ====== ==== ==== ==
+# ====== === == = =
+# ====== === = == =
+# = === === = == ====
+# = === === = == = =
+# == ===== ==== ==
+# ========================
+#
+# go2work: Makefile
+# Thu Mar 24 15:00:55 CET 2022
+# Joe
+#
+# GNU Makefile
+
+default: run
+
+SHELL := /bin/sh
+OS = $(shell uname)
+
+SRCS_DIR = src/
+DATA_DIR = share/
+TRGT_DIR = ./
+
+SRCS_NAME = c_go2work
+SRCS_NAME += c_player
+
+SRCS = $(addprefix ${SRCS_DIR}, $(addsuffix .go, ${SRCS_NAME}))
+
+TRGT_NAME = go2work
+TARGET = $(addprefix ${TRGT_DIR}, ${TRGT_NAME})
+
+MKDIR = mkdir -p
+RMDIR = rmdir
+RM = rm -rf
+
+build:
+ go build -o ${TARGET} ${SRCS}
+
+clean:
+ ${RM} ${TARGET}
+
+run:
+ go run ${SRCS}
+
+tools:
+ ${MAKE} --no-print-directory -C ${TOOLS_DIR} all
+
+.PHONY: build run
+
+# File prefixes info
+# ------------------
+# c_ -> core program related
diff --git a/src/c_go2work.go b/src/c_go2work.go
new file mode 100644
index 0000000..0b8e4f9
--- /dev/null
+++ b/src/c_go2work.go
@@ -0,0 +1,76 @@
+/*
+ * ========================
+ * ===== ===============
+ * ====== ================
+ * ====== ================
+ * ====== ==== ==== ==
+ * ====== === == = =
+ * ====== === = == =
+ * = === === = == ====
+ * = === === = == = =
+ * == ===== ==== ==
+ * ========================
+ *
+ * SPDX-License-Identifier: BSD-3-Clause
+ *
+ * Copyright (c) 2022 Joe
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * 3. Neither the name of the organization nor the
+ * names of its contributors may be used to endorse or promote products
+ * derived from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY JOE ''AS IS'' AND ANY
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+ * DISCLAIMED. IN NO EVENT SHALL JOE BE LIABLE FOR ANY
+ * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+ * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ *
+ * go2work: src/c_go2work.go
+ * Thu Mar 24 15:09:06 CET 2022
+ * Joe
+ *
+ * The main.
+ */
+
+package main
+
+import (
+ "fmt"
+ "time"
+)
+
+func main() {
+ t := get_time()
+ ticker := time.NewTicker(1 * time.Second)
+ quit := make(chan struct{})
+ fmt.Println("Time is: " + t)
+ for {
+ select {
+ case <- ticker.C:
+ exec_player("/home/jozan/mu/rock/grunge/nirvana/1993_in_utero/04_rape_me.flac")
+ case <- quit:
+ ticker.Stop()
+ return
+ }
+ }
+}
+
+func get_time() string {
+ var hm string
+ t := time.Now()
+ hm = t.Format("15:04")
+ return hm
+}
diff --git a/src/c_player.go b/src/c_player.go
new file mode 100644
index 0000000..539fe9c
--- /dev/null
+++ b/src/c_player.go
@@ -0,0 +1,63 @@
+/*
+ * ========================
+ * ===== ===============
+ * ====== ================
+ * ====== ================
+ * ====== ==== ==== ==
+ * ====== === == = =
+ * ====== === = == =
+ * = === === = == ====
+ * = === === = == = =
+ * == ===== ==== ==
+ * ========================
+ *
+ * SPDX-License-Identifier: BSD-3-Clause
+ *
+ * Copyright (c) 2022 Joe
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * 3. Neither the name of the organization nor the
+ * names of its contributors may be used to endorse or promote products
+ * derived from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY JOE ''AS IS'' AND ANY
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+ * DISCLAIMED. IN NO EVENT SHALL JOE BE LIABLE FOR ANY
+ * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+ * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ *
+ * go2work: src/c_player.go
+ * Thu Mar 24 15:12:23 CET 2022
+ * Joe
+ *
+ * Simple func that plays the file
+ */
+
+package main
+
+import (
+ "fmt"
+ "log"
+ "os/exec"
+)
+
+func exec_player(file string) {
+ fmt.Println("Playing: " + file)
+ cmd := exec.Command("mpv", "--really-quiet", file)
+ err := cmd.Run();
+ if err != nil {
+ log.Fatal(err)
+ }
+}