[Gtk-Theme] First setup
This commit is contained in:
		| @@ -20,6 +20,7 @@ const build = ( wallpaper, lockpaper, theme ) => { | ||||
|             // Colours | ||||
|             'colour-foreground-hex': renderColourAsHex( palette[ 0 ] ), | ||||
|             'colour-foreground-rgb': renderColourAsRGB( palette[ 0 ] ), | ||||
|             'colour-foreground-rgb': renderColourAsRGBA( palette[ 0 ], 0.5 ), | ||||
|             'colour-accent-hex': renderColourAsHex( palette[ 1 ] ), | ||||
|             'colour-accent-rgb': renderColourAsRGB( palette[ 1 ] ), | ||||
|             'colour-accent-rgba': renderColourAsRGBA( palette[ 1 ], 0.3 ), | ||||
| @@ -30,10 +31,15 @@ const build = ( wallpaper, lockpaper, theme ) => { | ||||
|             'colour-background-hex': renderColourAsHex( colours.background[ theme ] ), | ||||
|             'colour-background-rgb': renderColourAsRGB( colours.background[ theme ] ), | ||||
|             'colour-background-rgba': renderColourAsRGBA( colours.background[ theme ], 0.5 ), | ||||
|             'colour-background-alternative-hex': renderColourAsHex( colours[ 'background-alternative' ][ theme ] ), | ||||
|             'colour-background-alternative-hex': renderColourAsRGB( colours[ 'background-alternative' ][ theme ] ), | ||||
|             'colour-shadow-hex': renderColourAsHex( colours.shadow[ theme ] ), | ||||
|             'colour-shadow-rgb': renderColourAsRGB( colours.shadow[ theme ] ), | ||||
|             'colour-shadow-rgba': renderColourAsRGBA( colours.shadow[ theme ], 0.3 ), | ||||
|             'colour-inavtive-hex': renderColourAsHex( colours.inactive[ theme ] ), | ||||
|             'colour-inavtive-rgb': renderColourAsRGB( colours.inactive[ theme ] ), | ||||
|             'colour-inavtive-background-hex': renderColourAsHex( colours[ 'inactive-background' ][ theme ] ), | ||||
|             'colour-inavtive-background-rgb': renderColourAsRGB( colours[ 'inactive-background' ][ theme ] ), | ||||
|  | ||||
|             // Fonts | ||||
|             'font-primary': fonts.primary[ theme ], | ||||
| @@ -62,8 +68,6 @@ const build = ( wallpaper, lockpaper, theme ) => { | ||||
|         // directory to indicate whether or not to index files in it? | ||||
|         const fileList = util.treeWalker( path.join( __dirname, '/../renderable/' ), '*', [ 'node_modules', '@girs', '.gitignore', '.git', 'flavours' ] ); | ||||
|  | ||||
|         // TODO: Copy missing files over directly | ||||
|         console.log( fileList ); | ||||
|         for (let index = 0; index < fileList.length; index++) { | ||||
|             try { | ||||
|                 render( fileList[ index ], view ); | ||||
| @@ -71,6 +75,10 @@ const build = ( wallpaper, lockpaper, theme ) => { | ||||
|                 console.error( '=> Render failed for ' + fileList[ index ] + ' with error ' + e ); | ||||
|             } | ||||
|         } | ||||
|  | ||||
|         render( path.join( __dirname, '/../gtk-theme/src/gtk-3.0/gtk.css' ), view, 'src', 'dist' ); | ||||
|         render( path.join( __dirname, '/../gtk-theme/src/gtk-4.0/gtk.css' ), view, 'src', 'dist' ); | ||||
|         // TODO: Copy over to /usr/share/themes/Adaptive-Theme/ | ||||
|     } ).catch( e => { | ||||
|         console.error( e ); | ||||
|         console.error( '\n=> Failed to load image or retrieve colour palette from it' ); | ||||
| @@ -79,12 +87,19 @@ const build = ( wallpaper, lockpaper, theme ) => { | ||||
|  | ||||
| const colours = { | ||||
|     background: { | ||||
|         'nordic': [ 10, 0, 60 ], | ||||
|         'nordic': [ 10, 0, 50 ], | ||||
|         'deep-dark': [ 20, 20, 20 ], | ||||
|         'material': [ 30, 30, 30 ], // TODO: Will be calculated by material theme generator | ||||
|         'light': [ 230, 230, 230 ], | ||||
|         'bright': [ 255, 255, 255 ] | ||||
|     }, | ||||
|     'background-alternative': { | ||||
|         'nordic': [ 15, 5, 60 ], | ||||
|         'deep-dark': [ 30, 30, 30 ], | ||||
|         'material': [ 40, 40, 40 ], // TODO: Will be calculated by material theme generator | ||||
|         'light': [ 210, 210, 210 ], | ||||
|         'bright': [ 230, 230, 230 ] | ||||
|     }, | ||||
|     shadow: { | ||||
|         'nordic': [ 10, 0, 60 ], | ||||
|         'deep-dark': [ 20, 20, 20 ], | ||||
| @@ -98,6 +113,13 @@ const colours = { | ||||
|         'material': [ 200, 200, 200 ], // TODO: Will be calculated by material theme generator | ||||
|         'light': [ 65, 65, 65 ], | ||||
|         'bright': [ 60, 60, 60 ] | ||||
|     }, | ||||
|     'inactive-background': { | ||||
|         'nordic': [ 0, 0, 0 ], | ||||
|         'deep-dark': [ 0, 0, 0 ], | ||||
|         'material': [ 255, 255, 255 ], // TODO: Will be calculated by material theme generator | ||||
|         'light': [ 200, 200, 200 ], | ||||
|         'bright': [ 60, 60, 60 ] | ||||
|     } | ||||
| } | ||||
|  | ||||
| @@ -125,7 +147,6 @@ const fonts = { | ||||
|     } | ||||
| } | ||||
|  | ||||
| // TODO | ||||
| const yaziThemes = { | ||||
|     'nordic': 'tokyo-night', | ||||
|     'deep-dark': 'vscode-dark-modern', | ||||
| @@ -136,14 +157,16 @@ const yaziThemes = { | ||||
|  | ||||
|  | ||||
| /** | ||||
|  * @param {string} templatePath - Path relative to config root | ||||
|  * @param {object} view - View rendering config | ||||
|  * @param {string} templatePath - absolute path to config directory | ||||
|  * @param {object} view - rendering config passed to mustache | ||||
|  * @param {string} originalDir - The original directory, defaults to renderable | ||||
|  * @param {string} newDir - the output directory override, defaults to config | ||||
|  */ | ||||
| const render = ( templatePath, view ) => { | ||||
|     // Load template from disk (all can be found in <project-root>/config) | ||||
| const render = ( templatePath, view, originalDir = 'renderable', newDir = 'config' ) => { | ||||
|     // Load template from disk (all can be found in <project-root>/renderable) | ||||
|     // TODO: Make exclusion better plus copy other files maybe? | ||||
|     const template = '' + fs.readFileSync( templatePath ); | ||||
|     const outPath = path.join( templatePath.replace( 'config', 'dist' ) );  | ||||
|     const outPath = path.join( templatePath.replace( originalDir, newDir ) );  | ||||
|     console.log( '=> Rendering to ' + outPath ); | ||||
|     try { | ||||
|         fs.mkdirSync( path.dirname( outPath ), { | ||||
|   | ||||
		Reference in New Issue
	
	Block a user