Changeset View
Changeset View
Standalone View
Standalone View
dataengines/potd/generate_unsplash_provider.sh
- This file was added.
Property | Old Value | New Value |
---|---|---|
File Mode | null | 100755 |
1 | #!/bin/bash | ||||
---|---|---|---|---|---|
2 | # | ||||
3 | # This script is used to generate new Unsplash provider | ||||
4 | # | ||||
5 | # ./generate_unsplash_provider.sh <name> <id> | ||||
6 | # | ||||
7 | # For example, you have a collection URL: | ||||
8 | # https://unsplash.com/collections/649278/summertime | ||||
9 | # | ||||
10 | # ./generate_unsplash_provider.sh summertime 649278 | ||||
11 | # | ||||
12 | # Note the name must a single word without spaces, dashes and underscores. | ||||
13 | # You can modify generated files if you think the name can be improved. | ||||
14 | | ||||
15 | NAME=$1 | ||||
16 | NAME_UPPER=${NAME^^} | ||||
17 | NAME_CAPITAL=${NAME^} | ||||
18 | NAME_LOWER=${NAME,,} | ||||
19 | ID=$2 | ||||
20 | | ||||
21 | BASENAME=unsplash${NAME_LOWER}provider | ||||
22 | CPP_FILE=$BASENAME.cpp | ||||
23 | H_FILE=$BASENAME.h | ||||
24 | JSON_FILE=$BASENAME.json | ||||
25 | | ||||
26 | cp unsplashnatureprovider.cpp $CPP_FILE | ||||
27 | cp unsplashnatureprovider.h $H_FILE | ||||
28 | cp unsplashnatureprovider.json $JSON_FILE | ||||
29 | | ||||
30 | sed -i "s~NATURE~$NAME_UPPER~g" $CPP_FILE $H_FILE $JSON_FILE | ||||
31 | sed -i "s~Nature~$NAME_CAPITAL~g" $CPP_FILE $H_FILE $JSON_FILE | ||||
32 | sed -i "s~nature~$NAME_LOWER~g" $CPP_FILE $H_FILE $JSON_FILE | ||||
33 | sed -i "s~1065376~$ID~g" $CPP_FILE $H_FILE $JSON_FILE | ||||
34 | | ||||
35 | echo " | ||||
36 | # Unsplash $NAME_CAPITAL | ||||
37 | | ||||
38 | set( potd_unsplash_${NAME_LOWER}_provider_SRCS | ||||
39 | unsplash${NAME_LOWER}provider.cpp | ||||
40 | unsplashbaseprovider.cpp | ||||
41 | ) | ||||
42 | | ||||
43 | add_library( plasma_potd_unsplash${NAME_LOWER}provider MODULE \${potd_unsplash_${NAME_LOWER}_provider_SRCS} ) | ||||
44 | target_link_libraries( plasma_potd_unsplash${NAME_LOWER}provider plasmapotdprovidercore KF5::KIOCore ) | ||||
45 | | ||||
46 | install( TARGETS plasma_potd_unsplash${NAME_LOWER}provider DESTINATION \${KDE_INSTALL_PLUGINDIR}/potd ) | ||||
47 | " >> CMakeLists.txt |