From da5889751c4aa584e60b30fed38ce7129d04db2f Mon Sep 17 00:00:00 2001 From: Christophe Vandeplas Date: Fri, 24 Dec 2021 07:52:56 +0100 Subject: [PATCH] chg: [new] Hugo config and theme --- .gitmodules | 3 + _config.yml | 26 -- config.toml | 541 ++++++++++++++++++++++++++++++++++++ static/css/custom.css | 31 +++ themes/hugo-universal-theme | 1 + 5 files changed, 576 insertions(+), 26 deletions(-) create mode 100644 .gitmodules delete mode 100755 _config.yml create mode 100644 config.toml create mode 100644 static/css/custom.css create mode 160000 themes/hugo-universal-theme diff --git a/.gitmodules b/.gitmodules new file mode 100644 index 0000000..2c3976e --- /dev/null +++ b/.gitmodules @@ -0,0 +1,3 @@ +[submodule "themes/hugo-universal-theme"] + path = themes/hugo-universal-theme + url = https://github.com/devcows/hugo-universal-theme.git diff --git a/_config.yml b/_config.yml deleted file mode 100755 index c1188f1..0000000 --- a/_config.yml +++ /dev/null @@ -1,26 +0,0 @@ -name: MISP - a threat information sharing platform - The Open Source Threat Intelligence Platform -description: MISP - a threat information sharing platform - The Open Source Threat Intelligence Platform -future: true -#paginate: 10 -baseurl: '' -url: 'https://www.misp-project.org' -sass: - sass_dir: assets/sass - -twitterUsername: MISPProject -githubUsername: MISP -markdown: kramdown -kramdown: - # Enable GitHub Flavored Markdown (fenced code blocks) - input: GFM - # Disable auto-generated ID's for headings - auto_ids: true - parse_block_html: true - syntax_highlighter: rouge -highlighter: rouge -include: [_pages] -gems: - - jekyll-toc - - jekyll-feed - - jekyll-paginate - - jekyll-sitemap diff --git a/config.toml b/config.toml new file mode 100644 index 0000000..85dae63 --- /dev/null +++ b/config.toml @@ -0,0 +1,541 @@ +baseurl = "https://misp-project.org/" +title = "MISP Threat Sharing" +theme = "hugo-universal-theme" +languageCode = "en-us" +# Site language. Available translations in the theme's `/i18n` directory. +defaultContentLanguage = "en" +# Enable comments by entering your Disqus shortname +disqusShortname = "" +# Enable Google Analytics by entering your tracking code +googleAnalytics = "" + +# number of words of summarized post content (default 70) +summaryLength = 20 + +# Define the number of posts per page +paginate = 20 + +[menu] + + +# Main menu +[[menu.main]] + name = "Home" + identifier = "menu.home" + url = "/" + weight = 1 + +[[menu.main]] + name = "Option 1: Default Page" + url = "/" + weight = 1 + parent = "menu.home" + +[[menu.main]] + name = "Option 2: Application" + url = "/" + weight = 2 + parent = "menu.home" + +[[menu.main]] + name = "Option 3: Startup" + url = "/" + weight = 3 + parent = "menu.home" + +[[menu.main]] + name = "Option 4: Agency" + url = "/" + weight = 4 + parent = "menu.home" + +[[menu.main]] + name = "Option 5: Portfolio" + url = "/" + weight = 5 + parent = "menu.home" + +[[menu.main]] + name = "Features" + identifier = "menu.features" + url = "/img/template-easy-customize.png" + weight = 3 + +[[menu.main]] + name = "Shortcodes" + identifier = "section.shortcodes" + url = "" + weight = 1 + parent = "menu.features" + post = 1 + +[[menu.main]] + name = "Header variations" + identifier = "section.headervariations" + url = "" + weight = 2 + parent = "menu.features" + post = 2 + +[[menu.main]] + name = "Accordions" + url = "" + weight = 1 + parent = "section.shortcodes" + +[[menu.main]] + name = "Alerts" + url = "" + weight = 2 + parent = "section.shortcodes" + +[[menu.main]] + name = "Buttons" + url = "" + weight = 3 + parent = "section.shortcodes" + +[[menu.main]] + name = "Content Boxes" + url = "" + weight = 4 + parent = "section.shortcodes" + +[[menu.main]] + name = "Horizontal Blocks" + url = "" + weight = 5 + parent = "section.shortcodes" + +[[menu.main]] + name = "Pagination" + url = "" + weight = 6 + parent = "section.shortcodes" + +[[menu.main]] + name = "Tabs" + url = "" + weight = 7 + parent = "section.shortcodes" + +[[menu.main]] + name = "Typography" + url = "" + weight = 8 + parent = "section.shortcodes" + +[[menu.main]] + name = "Default Sticky Header" + url = "" + weight = 1 + parent = "section.headervariations" + +[[menu.main]] + name = "No Sticky Header" + url = "" + weight = 2 + parent = "section.headervariations" + +[[menu.main]] + name = "Light Header" + url = "" + weight = 3 + parent = "section.headervariations" + +[[menu.main]] + name = "Portfolio" + identifier = "menu.portfolio" + url = "/img/template-homepage.png" + weight = 3 + +[[menu.main]] + name = "Portfolio" + identifier = "section.portfolio" + url = "" + weight = 1 + parent = "menu.portfolio" + post = 1 + +[[menu.main]] + name = "2 Columns" + url = "" + weight = 1 + parent = "section.portfolio" + +[[menu.main]] + name = "2 Columns With Negative Space" + url = "" + weight = 2 + parent = "section.portfolio" + +[[menu.main]] + name = "3 Columns" + url = "" + weight = 3 + parent = "section.portfolio" + +[[menu.main]] + name = "3 Columns With Negative Space" + url = "" + weight = 4 + parent = "section.portfolio" + +[[menu.main]] + name = "4 Columns" + url = "" + weight = 5 + parent = "section.portfolio" + +[[menu.main]] + name = "4 Columns With Negative Space" + url = "" + weight = 6 + parent = "section.portfolio" + +[[menu.main]] + name = "Portfolio - detail" + url = "" + weight = 7 + parent = "section.portfolio" + +[[menu.main]] + name = "Portfolio - detail 2" + url = "" + weight = 8 + parent = "section.portfolio" + +[[menu.main]] + name = "About" + identifier = "section.about" + url = "" + weight = 2 + parent = "menu.portfolio" + post = 2 + +[[menu.main]] + name = "About Us" + url = "" + weight = 1 + parent = "section.about" + +[[menu.main]] + name = "Our Team" + url = "" + weight = 2 + parent = "section.about" + +[[menu.main]] + name = "Marketing" + identifier = "section.marketing" + url = "" + weight = 3 + parent = "menu.portfolio" + post = 2 + +[[menu.main]] + name = "Packages" + url = "" + weight = 1 + parent = "section.marketing" + +[[menu.main]] + name = "All Pages" + identifier = "menu.allpages" + url = "" + weight = 4 + +[[menu.main]] + name = "Home" + identifier = "section.ap-home" + url = "" + weight = 1 + parent = "menu.allpages" + post = 1 + +[[menu.main]] + name = "About" + identifier = "section.ap-about" + url = "" + weight = 2 + parent = "menu.allpages" + post = 1 + +[[menu.main]] + name = "Marketing" + identifier = "section.ap-marketing" + url = "" + weight = 3 + parent = "menu.allpages" + post = 1 + +[[menu.main]] + name = "Portfolio" + identifier = "section.ap-portfolio" + url = "" + weight = 1 + parent = "menu.allpages" + post = 2 + +[[menu.main]] + name = "User Pages" + identifier = "section.ap-userpages" + url = "" + weight = 2 + parent = "menu.allpages" + post = 2 + +[[menu.main]] + name = "Shop" + identifier = "section.ap-shop" + url = "" + weight = 1 + parent = "menu.allpages" + post = 3 + +[[menu.main]] + name = "Shop - Order Process" + identifier = "section.ap-shoporderprocess" + url = "" + weight = 2 + parent = "menu.allpages" + post = 3 + +[[menu.main]] + name = "Contact" + identifier = "section.ap-contact" + url = "" + weight = 1 + parent = "menu.allpages" + post = 4 + +[[menu.main]] + name = "Pages" + identifier = "section.ap-pages" + url = "" + weight = 2 + parent = "menu.allpages" + post = 4 + +[[menu.main]] + name = "Blog" + identifier = "section.ap-blog" + url = "/blog/" + weight = 3 + parent = "menu.allpages" + post = 4 + +[[menu.main]] + name = "Blog Listing Big" + url = "/blog/" + weight = 1 + parent = "section.ap-blog" + +[[menu.main]] + name = "Blog" + identifier = "menu.blog" + url = "/blog/" + weight = 5 + +[[menu.main]] + name = "FAQ" + identifier = "menu.faq" + url = "/faq/" + weight = 6 + +[[menu.main]] + identifier = "contact" + name = "Contact" + url = "/contact/" + weight = 7 + + +# Top bar social links menu + +[[menu.topbar]] + weight = 1 + name = "Book" + url = "https://www.circl.lu/doc/misp/" + pre = "" + +[[menu.topbar]] + weight = 2 + name = "GitHub" + url = "https://github.com/MISP/" + pre = "" + +[[menu.topbar]] + weight = 3 + name = "Gitter" + url = "https://gitter.im/MISP/MISP" + pre = "" + +[[menu.topbar]] + weight = 4 + name = "Twitter" + url = "https://twitter.com/MISPProject" + pre = "" + +[[menu.topbar]] + weight = 5 + name = "Email" + url = "mailto:info@misp-project.org" + pre = "" + +[[menu.topbar]] + weight = 6 + name = "RSS Feed" + url = "index.xml" + pre = "" + +[params] + viewMorePostLink = "/blog/" + author = "MISP" + defaultKeywords = ["MISP", "CTI", "malware", "threat", "cyber", "intelligence", "information exchange", "sharing", "open source", "MISP threat sharing", "Malware Information Sharing Platform", "Threat Intelligence Platform", "TIP", "information sharing", "threatintel"] + mainSections = ["blog"] + defaultDescription = "MISP Threat Intelligence & Sharing " + + # Social media + #facebook_site = "" # the Facebook handle of your site ('https://www.facebook.com/HANDLE') + twitter_site = "MISPProject" # the Twitter handle of your site (without the '@') + default_sharing_image = "img/sharing-default.png" + + # Google Maps widget: If `googleMapsApiKey` is not set, no key will be passed to Google (which likely results in a broken map widget). + enableGoogleMaps = false + googleMapsApiKey = "" + + #latitude = "-12.043333" + #longitude = "-77.028333" + + # Style options: default (light-blue), blue, green, marsala, pink, red, turquoise, violet + style = "default" + + # Since this template is static, the contact form uses www.formspree.io as a + # proxy. The form makes a POST request to their servers to send the actual + # email. Visitors can send up to a 50 emails each month for free. + # + # What you need to do for the setup? + # + # - register your account to https://formspree.io/register + # - login and create new form + # - set your form's endpoint url under 'formspree_action' below + # - upload the generated site to your server + # - test a dummy email yourself + # - you're done. Happy mailing! + # + # Enable the contact form by entering your Formspree.io endpoint url + formspree_action = "https://formspree.io/sample/of/endpoint" + contact_form_ajax = false + + # Formspree form supports Google reCAPTCHA Key (type v2). + # If you use this feature, you should enable reCAPTCHA feature in the Formspree dashboard. + # + # By default, Formspree use a redirect page for recaptcha widget. + # If you use a recaptcha widget in your contact page, you should do next steps. + # (if you don't want, skip these steps) + # + # 1. register your site on Google recaptcha admin page: https://www.google.com/recaptcha/admin + # 2. select reCAPTCHA v2 and checkbox widget type. + # 3. remember site key and secret key. + # 4. enter secret key into "Custom reCAPTCHA Key" field in your Formspree form setting page. + # 5. change `enableRecaptchaInContactForm` is to true + # 6. enter site key into `googleRecaptchaKey` to enable a recaptcha widget in your page. + # + enableRecaptchaInContactForm = false + googleRecaptchaKey = "site_key_for_google_recaptcha" + + about_us = '
' + copyright = "© MISP project. Software released under approved open source licenses and content released as CC BY-SA 3.0." + + # Format dates with Go's time formatting + date_format = "January 2, 2006" + + disabled_logo = false + logo_text = "MISP Threat Sharing" + + logo = "img/logo.png" + logo_small = "img/logo-small.png" + contact_url = "/contact" + address = """ + """ + +[permalinks] + blog = "/blog/:year/:month/:day/:filename/" + +# Enable or disable top bar with social icons +[params.topbar] + enable = true + text = """ + """ + +# Enable and disable widgets for the right sidebar +[params.widgets] + categories = true + tags = true + search = true + +[params.carouselCustomers] + items = 6 + auto_play = false + slide_speed = 2000 + pagination_speed = 1000 + +[params.carouselTestimonals] + items = 4 + auto_play = false + slide_speed = 2000 + pagination_speed = 1000 + +[params.carouselHomepage] + # All carousel items are defined in their own files. You can find example items + # at 'exampleSite/data/carousel'. + # For more informtion take a look at the README. + enable = true + auto_play = true + slide_speed = 2000 + pagination_speed = 1000 + +[params.features] + enable = true + cols = 3 # Default: 3, Available values 2,3,4,6 + # All features are defined in their own files. You can find example items + # at 'exampleSite/data/features'. + # For more informtion take a look at the README. + +[params.testimonials] + enable = true + # All testimonials are defined in their own files. You can find example items + # at 'exampleSite/data/testimonials'. + # For more informtion take a look at the README. + title = "Initiatives" + subtitle = "The MISP Threat Sharing project consists of multiple initiatives, from software to facilitate threat analysis and sharing to freely usable structured Cyber Threat Information and Taxonomies." + +[params.see_more] + enable = true + icon = "far fa-file-alt" + title = "Do you want to join a community?" + subtitle = "MISP is an open source software and it is also a large community of MISP users creating, maintaining and operating communities of users or organizations sharing information about threats or cyber security indicators worldwide." + link_url = "/communities" + link_text = "Find communities" + +[params.clients] + enable = false + # All clients are defined in their own files. You can find example items + # at 'exampleSite/data/clients'. + # For more informtion take a look at the README. + title = "Our Clients" + subtitle = "" + +[params.recent_posts] + enable = true + title = "From our blog" + subtitle = "TODO blabla, blog, press, ...Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Vestibulum tortor quam, feugiat vitae, ultricies eget, tempor sit amet, ante. Donec eu libero sit amet quam egestas semper. Aenean ultricies mi vitae est. Mauris placerat eleifend leo." + hide_summary = false + +[params.footer.recent_posts] + enable = true + +[taxonomies] + category = "categories" + tag = "tags" + author = "authors" diff --git a/static/css/custom.css b/static/css/custom.css new file mode 100644 index 0000000..7f520cd --- /dev/null +++ b/static/css/custom.css @@ -0,0 +1,31 @@ +/* customized by us */ +/* MISP logo color: #00a1e0 */ +:root { + --primary-accent: #00a1e0; + --navbar-border-top: #294d76; + --button-border: #336194; + --link-focus: #2f5a89; + --form-shadow: rgba(70, 127, 191, 0.6); + --pagination-bg: #b8cee6; + --link-hover-bg: #36669c; + --navbar-focus: #92b3d9; +} + +#post-content { + font-size: 18px; +} + +/* delivered with example site */ +.box-image-text .image { + min-height: 190px; + max-height: 190px; +} + +.box-image-text .image img { + max-height: 190px; + margin: auto; +} + +.box-simple { + min-height: 230px; +} diff --git a/themes/hugo-universal-theme b/themes/hugo-universal-theme new file mode 160000 index 0000000..00e1f20 --- /dev/null +++ b/themes/hugo-universal-theme @@ -0,0 +1 @@ +Subproject commit 00e1f20103c31bc2908f4c3e20b98093e6012241