mirror of
https://github.com/belsabbagh/dotfiles.git
synced 2026-04-11 09:36:46 +00:00
39 lines
2.4 KiB
QML
39 lines
2.4 KiB
QML
pragma Singleton
|
|
pragma ComponentBehavior: Bound
|
|
|
|
import qs.modules.functions
|
|
import QtCore
|
|
import QtQuick
|
|
import Quickshell
|
|
|
|
Singleton {
|
|
// XDG Dirs, with "file://"
|
|
readonly property string home: StandardPaths.standardLocations(StandardPaths.HomeLocation)[0]
|
|
readonly property string config: StandardPaths.standardLocations(StandardPaths.ConfigLocation)[0]
|
|
readonly property string state: StandardPaths.standardLocations(StandardPaths.StateLocation)[0]
|
|
readonly property string cache: StandardPaths.standardLocations(StandardPaths.CacheLocation)[0]
|
|
readonly property string genericCache: StandardPaths.standardLocations(StandardPaths.GenericCacheLocation)[0]
|
|
readonly property string documents: StandardPaths.standardLocations(StandardPaths.DocumentsLocation)[0]
|
|
readonly property string downloads: StandardPaths.standardLocations(StandardPaths.DownloadLocation)[0]
|
|
readonly property string pictures: StandardPaths.standardLocations(StandardPaths.PicturesLocation)[0]
|
|
readonly property string music: StandardPaths.standardLocations(StandardPaths.MusicLocation)[0]
|
|
readonly property string videos: StandardPaths.standardLocations(StandardPaths.MoviesLocation)[0]
|
|
|
|
property string shellConfig: FileUtils.trimFileProtocol(`${Directories.config}/nucleus-shell`)
|
|
property string shellConfigName: "configuration.json"
|
|
property string shellConfigPath: `${Directories.shellConfig}/config/${Directories.shellConfigName}`
|
|
property string generatedMaterialThemePath: FileUtils.trimFileProtocol(`${Directories.config}/nucleus-shell/config/colors.json`)
|
|
property string defaultsPath: Quickshell.shellPath("defaults")
|
|
property string scriptsPath: Quickshell.shellPath("scripts")
|
|
property string assetsPath: Quickshell.shellPath("assets")
|
|
// Cleanup on init
|
|
Component.onCompleted: {
|
|
Quickshell.execDetached(["mkdir", "-p", `${shellConfig}`])
|
|
Quickshell.execDetached(["mkdir", "-p", `${shellConfig}/config`])
|
|
Quickshell.execDetached(["mkdir", "-p", `${shellConfig}/plugins`])
|
|
Quickshell.execDetached(["mkdir", "-p", `${FileUtils.trimFileProtocol(Directories.pictures)}/Screenshots`])
|
|
// Create dirs for intelligence shit
|
|
Quickshell.execDetached(["mkdir", "-p", FileUtils.trimFileProtocol(`${config}/zenith/`), FileUtils.trimFileProtocol(`${config}/zenith/chats`)])
|
|
Quickshell.execDetached(["touch", FileUtils.trimFileProtocol(`${config}/zenith/chats/default.txt`)])
|
|
}
|
|
} |