Coder Social home page Coder Social logo

Praise for Mastering Bitcoin

When I talk about bitcoin to general audiences, I am sometimes asked 'but how does it really work?' Now I have a great answer for that question, because anybody who reads Mastering Bitcoin will have a deep understanding of how it works and will be well-equipped to write the next generation of amazing cryptocurrency applications.

Gavin Andresen, Chief Scientist Bitcoin Foundation

Bitcoin and blockchain technologies are becoming fundamental building blocks for the next generation internet. Silicon Valley's best and brightest are working on it. Andreas' book will help you join the software revolution in the world of finance.

Naval Ravikant, Co-founder AngelList

Mastering Bitcoin is the best technical reference available on bitcoin today. And bitcoin is likely to be seen in retrospect as the most important technology of this decade. As such, this book is an absolute must-have for any developer, especially those interested in building applications with the bitcoin protocol. Highly recommended.

Balaji S. Srinivasan (@balajis), General Partner, Andreessen Horowitz

The invention of the Bitcoin Blockchain represents an entirely new platform to build upon, one that will enable an ecosystem as wide and diverse as the Internet itself. As one of the preeminent thought leaders, Andreas Antonopoulos is the perfect choice to write this book.

Roger Ver, Bitcoin Entrepreneur and Investor

.•.HALO*FIRE*ANGEL.•.'s Projects

airluv icon airluv

Unicorn is W3C's unified validator, which helps people improve the quality of their Web pages by performing a variety of checks. Unicorn gathers the results of the popular HTML and CSS validators, as well as other useful services. This site addresses these audiences: Users, those who want to check their Web pages and understand how to fix them based on Unicorn results. Developers, those who wish to add new services, work on existing services, or help develop the underlying Unicorn framework. Server Managers, those who wish to run their own Unicorn service locally. How to compile and deploy Unicorn: 1. The first thing you have to do in order to make Unicorn work is to add a unicorn.home parameter to your JVM parameters, pointing to the unicorn root directory. example : Dunicorn.home=/var/lib/tomcat6/webapps/unicorn/ or Dunicorn.home=/C:/Program%20Files/Tomcat/webapps/unicorn/ (read your servlet engine documentation to know how to add this parameter) 2. You will find all the configuration files that Unicorn uses in WEB-INF/conf. The main one is unicorn properties, which contains some properties that you may want to change: UNICORN_URL is the URL of your installation of Unicorn. DEFAULT_LANGUAGE, the language Unicorn will use if language negotiation fails. You can nest properties in this file, meaning that Unicorn will replace any ${<Property_key>} by its value. There is one property that is not specify in the file but added at runtime, UNICORN_HOME, which is equal to the JVM parameter unicorn.home. velocity.properties contains properties for the template engine that Unicorn uses: Apache Velocity By default template caching is set to false. In a production environment you should set this property to true. parser.pool.size is set to the default velocity value (20). If you have a lot of requests you may have to increase this value. In any case check the logs to see if you need to change it (Velocity will log warnings). log4j.properties is the properties file for Apache Log4j. The property UNICORN_HOME is also available in this file. By default logs will be written in WEB-INF/logs and sorted by package and level. If you are developing Unicorn locally you should add the appender GUI to the root logger. This will pop up a useful LogFactor5 console. You can find documentation about log4j configuration here: http://logging.apache.org/log4j/1.2/manual.html Note that log4j is not mandatory for Unicorn to work properly. If log4j.properties does not exist the default java.util.Logger will be used. observers.list is the list of the observers contract links 3. Under WEB-INF/resources/tasklist you will find the task related files which are xml files describing tasks and rdf files containing metadata about tasks. 4. Use ant to compile the project. You can use the 'war' task to make a war file of the 'jar' task to package Unicorn in a jar. The files will be written in the dist directory. See build.xml for more info. ex: ant war 5. As root, copy the file resources/tomcat_policy in the policy directory of tomcat (/etc/tomcat5/policy.d for Debian) and eventually edit it to fit your needs. Note that this file is very important because it will give permissions to read and write files under Unicorn servlet dir, but also to connect to distant hosts (observers). How to initialize Unicorn: Once you have compiled and deploy Unicorn on your engine you must initialize it. There are a few mandatory steps that Unicorn has to do before being usable, like parsing the contract files, language files, taklists, etc... If your engine uses the web.xml description file (which should be the case with almost any servlet engine) initialization is automated at startup. If you want to manually initialize Unicorn you can simply execute the InitAction by connecting to http://localhost:8080/unicorn/init. This task will launch all initialization tasks which are: initialize Unicorn core load Unicorn observers (you can execute this task only by connecting to /init?task=observers) load Unicorn tasklists (/init?task=tasklist) load language files (/init?task=language) In a production environment InitAction servlet should be protected to be accessible only from localhost (set PROTECT_INIT_ACTION to true in unicorn.properties) How does the log work: Under Tomcat logs files are on "webapps/unicorn/WEB-INF/logs/". There are split in two directory : "level" where log are split in one file by log level (trace, debug, info, warning and error). "package" where log are split by package where they come from. There are also one file called "all.log" which contains all logs informations. About Unicorn - W3C's Unified Validator validator.w3.org/unicorn/ Topics css java html validation html5 w3c validator Resources Readme Stars 92 stars Watchers 31 watching Forks 57 forks Releases 1 tags Contributors 7 @tgambet @jean-gui @gbaudusseau @dontcallmedom @vivienlacourba @tripu @xfq Languages Java 79.4% JavaScript 15.5% CSS 4.2

blast-on icon blast-on

# Awesome Keycloak [![Awesome](https://cdn.rawgit.com/sindresorhus/awesome/d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg)](https://github.com/sindresorhus/awesome) # [<img src="https://www.keycloak.org/resources/images/keycloak_logo_480x108.png">](https://github.com/thomasdarimont/awesome-keycloak) > Carefully curated list of awesome Keycloak resources. A curated list of resources for learning about the Open Source Identity and Access Management solution Keycloak. Contains books, websites, blog posts, links to github Repositories. # Contributing Contributions welcome. Add links through pull requests or create an issue to start a discussion. [Please refer to the contributing guide for details](CONTRIBUTING.md). # Contents * [General](#general) * [Documentation](#docs) * [Keycloak Website](http://www.keycloak.org) * [Current Documentation](http://www.keycloak.org/documentation.html) * [Archived Documentation](http://www.keycloak.org/documentation-archive.html) * [Mailing Lists](#mailing-lists) * [User Mailing List](#user-mailing-list) * [Developer Mailing List](#dev-mailing-list) * [Mailing List Search](#mailing-list-search) * [Books](#books) * [Articles](#articles) * [Talks](#talks) * [Presentations](#presentations) * [Video Playlists](#video-playlists) * [Community Extensions](#community-extensions) * [Integrations](#integrations) * [Themes](#themes) * [Docker](#docker) * [Deployment Examples](#deployment-examples) * [Example Projects](#example-projects) * [Benchmarks](#benchmarks) * [Help](#help) * [Commercial Offerings](#commercial-offerings) * [Miscellaneous](#miscellaneous) # General ## Documentation * [Keycloak Website](http://www.keycloak.org/) * [Current Documentation](http://www.keycloak.org/documentation.html) * [Archived Documentation](http://www.keycloak.org/documentation-archive.html) * [Product Documentation for Red Hat Single Sign-On](https://access.redhat.com/documentation/en/red-hat-single-sign-on/) ## Discussion Groups and Mailing Lists * [Keycloak Users Google Group](https://groups.google.com/forum/#!forum/keycloak-user) * [Keycloak Developers Google Group](https://groups.google.com/forum/#!forum/keycloak-dev) * [Keycloak Discourse Group](https://keycloak.discourse.group/) * [Keycloak Developer Chat](https://keycloak.zulipchat.com) * [Inactive - User Mailing List](https://lists.jboss.org/mailman/listinfo/keycloak-user) * [Inactive - Developer Mailing List](https://lists.jboss.org/mailman/listinfo/keycloak-dev) * [Mailing List Search](http://www.keycloak.org/search) * [Keycloak Subreddit](https://www.reddit.com/r/keycloak) ## Books * [Keycloak - Identity and Access Management for Modern Applications](https://www.packtpub.com/product/keycloak-identity-and-access-management-for-modern-applications/9781800562493) ## Articles * [How to get Keycloak working with Docker](https://www.ivonet.nl/2015/05/23/Keycloak-Docker/) * [Single-Sign-On for Microservices and/or Java EE applications with Keycloak SSO](http://www.n-k.de/2016/06/keycloak-sso-for-microservices.html) * [Keycloak Admin Client(s) - multiple ways to manage your SSO system](http://www.n-k.de/2016/08/keycloak-admin-client.html) * [How to get the AccessToken of Keycloak in Spring Boot and/or Java EE](http://www.n-k.de/2016/05/how-to-get-accesstoken-from-keycloak-springboot-javaee.html) * [JWT authentication with Vert.x, Keycloak and Angular 2](http://paulbakker.io/java/jwt-keycloak-angular2/) * [Authenticating via Kerberos with Keycloak and Windows 2008 Active Directory](http://matthewcasperson.blogspot.de/2015/07/authenticating-via-kerberos-with.html) * [Deploying Keycloak with Ansible](https://adam.younglogic.com/2016/01/deploying-keycloak-via-ansible/) * [Easily secure your Spring Boot applications with Keycloak](https://developers.redhat.com/blog/2017/05/25/easily-secure-your-spring-boot-applications-with-keycloak/) * [How Red Hat re-designed its Single Sign On (SSO) architecture, and why](https://developers.redhat.com/blog/2016/10/04/how-red-hat-re-designed-its-single-sign-on-sso-architecture-and-why/) * [OAuth2, JWT, Open-ID Connect and other confusing things](http://giallone.blogspot.de/2017/06/oath2.html) * [X509 Authentication with Keycloak and JBoss Fuse](https://sjhiggs.github.io/fuse/sso/x509/smartcard/2017/03/29/fuse-hawtio-keycloak.html) * [Running Keycloak on OpenShift 3](https://medium.com/@sbose78/running-keycloak-on-openshift-3-8d195c0daaf6) * [Introducing Keycloak for Identity and Access Management](https://www.thomasvitale.com/introducing-keycloak-identity-access-management/) * [Keycloak Basic Configuration for Authentication and Authorisation](https://www.thomasvitale.com/keycloak-configuration-authentication-authorisation/) * [Keycloak on OpenShift Origin](https://medium.com/@james_devcomb/keycloak-on-openshift-origin-ee81d01dac97) * [Identity Management, One-Time-Passwords and Two-Factor-Auth with Spring Boot and Keycloak](http://www.hascode.com/2017/11/identity-management-one-time-passwords-and-two-factor-auth-with-spring-boot-and-keycloak/) * [Keycloak Identity Brokering with Openshift](https://developers.redhat.com/blog/2017/12/06/keycloak-identity-brokering-openshift/) * [OpenID Connect Identity Brokering with Red Hat Single Sign-On](https://developers.redhat.com/blog/2017/10/18/openid-connect-identity-brokering-red-hat-single-sign/) * [Authentication & user management is hard](https://eclipsesource.com/blogs/2018/01/11/authenticating-reverse-proxy-with-keycloak/) * [Securing Nginx with Keycloak](https://edhull.co.uk/blog/2018-06-06/keycloak-nginx) * [Secure kibana dashboards using keycloak](https://aboullaite.me/secure-kibana-keycloak/) * [Configuring NGINX for OAuth/OpenID Connect SSO with Keycloak/Red Hat SSO](https://developers.redhat.com/blog/2018/10/08/configuring-nginx-keycloak-oauth-oidc/) * [Keycloak Clustering Setup and Configuration Examples](https://github.com/fit2anything/keycloak-cluster-setup-and-configuration) * [MicroProfile JWT with Keycloak](https://kodnito.com/posts/microprofile-jwt-with-keycloak/) * [Keycloak Essentials](https://medium.com/keycloak/keycloak-essentials-86254b2f1872) * [SSO-session failover with Keycloak and AWS S3](https://medium.com/@georgijsr/sso-session-failover-with-keycloak-and-aws-s3-e0b1db985e12) * [KTOR and Keycloak: authentication with OpenId](https://medium.com/slickteam/ktor-and-keycloak-authentication-with-openid-ecd415d7a62e) * [Keycloak: Core concepts of open source identity and access management](https://developers.redhat.com/blog/2019/12/11/keycloak-core-concepts-of-open-source-identity-and-access-management) * [Who am I? Keycloak Impersonation API](https://blog.softwaremill.com/who-am-i-keycloak-impersonation-api-bfe7acaf051a) * [Setup Keycloak Server on Ubuntu 18.04](https://medium.com/@hasnat.saeed/setup-keycloak-server-on-ubuntu-18-04-ed8c7c79a2d9) * [Getting started with Keycloak](https://robferguson.org/blog/2019/12/24/getting-started-with-keycloak/) * [Angular, OpenID Connect and Keycloak](https://robferguson.org/blog/2019/12/29/angular-openid-connect-keycloak/) * [Angular, OAuth 2.0 Scopes and Keycloak](https://robferguson.org/blog/2019/12/31/angular-oauth2-keycloak/) * [Keycloak, Flowable and OpenLDAP](https://robferguson.org/blog/2020/01/03/keycloak-flowable-and-openldap/) * [How to exchange token from an external provider to a keycloak token](https://www.mathieupassenaud.fr/token-exchange-keycloak/) * [Building an Event Listener SPI (Plugin) for Keycloak](https://dev.to/adwaitthattey/building-an-event-listener-spi-plugin-for-keycloak-2044) * [Keycloak user migration – connect your legacy authentication system to Keycloak](https://codesoapbox.dev/keycloak-user-migration/) * [Keycloak Authentication and Authorization in GraphQL](https://medium.com/@darahayes/keycloak-authentication-and-authorization-in-graphql-ad0a1685f7da) * [Kong / Konga / Keycloak: securing API through OIDC](https://github.com/d4rkstar/kong-konga-keycloak) * [KeyCloak: Custom Login theme](https://codehumsafar.wordpress.com/2018/09/11/keycloak-custom-login-theme/) * [Keycloak: Use background color instead of background image in Custom Login theme](https://codehumsafar.wordpress.com/2018/09/21/keycloak-use-background-color-instead-of-background-image-in-custom-login-theme/) * [How to turn off the Keycloak theme cache](https://keycloakthemes.com/blog/how-to-turn-off-the-keycloak-theme-cache) * [How to add a custom field to the Keycloak registration page](https://keycloakthemes.com/blog/how-to-add-custom-field-keycloak-registration-page) * [How to setup Sign in with Google using Keycloak](https://keycloakthemes.com/blog/how-to-setup-sign-in-with-google-using-keycloak) * [How to sign in users on Keycloak using Github](https://keycloakthemes.com/blog/how-to-sign-in-users-on-keycloak-using-github) * [Extending Keycloak SSO Capabilities with IBM Security Verify](https://community.ibm.com/community/user/security/blogs/jason-choi1/2020/06/10/extending-keycloak-sso-capabilities-with-ibm-secur) * [AWS SAML based User Federation using Keycloak](https://medium.com/@karanbir.tech/aws-connect-saml-based-identity-provider-using-keycloak-9b3e6d0111e6) * [AWS user account OpenID federation using Keycloak](https://medium.com/@karanbir.tech/aws-account-openid-federation-using-keycloak-40d22b952a43) * [How to Run Keycloak in HA on Kubernetes](https://blog.sighup.io/keycloak-ha-on-kubernetes/) * [How to create a Keycloak authenticator as a microservice?](https://medium.com/application-security/how-to-create-a-keycloak-authenticator-as-a-microservice-ad332e287b58) * [keycloak.ch | Installing & Running Keycloak](https://keycloak.ch/keycloak-tutorials/tutorial-1-installing-and-running-keycloak/) * [keycloak.ch | Configuring Token Exchange using the CLI](https://keycloak.ch/keycloak-tutorials/tutorial-token-exchange/) * [keycloak.ch | Configuring WebAuthn](https://keycloak.ch/keycloak-tutorials/tutorial-webauthn/) * [keycloak.ch | Configuring a SwissID integration](https://keycloak.ch/keycloak-tutorials/tutorial-swissid/) * [Getting Started with Service Accounts in Keycloak](https://medium.com/@mihirrajdixit/getting-started-with-service-accounts-in-keycloak-c8f6798a0675) * [Building cloud native apps: Identity and Access Management](https://dev.to/lukaszbudnik/building-cloud-native-apps-identity-and-access-management-1e5m) * [X.509 user certificate authentication with Red Hat’s single sign-on technology](https://developers.redhat.com/blog/2021/02/19/x-509-user-certificate-authentication-with-red-hats-single-sign-on-technology) * [Grafana OAuth with Keycloak and how to validate a JWT token](https://janikvonrotz.ch/2020/08/27/grafana-oauth-with-keycloak-and-how-to-validate-a-jwt-token/) * [How to setup a Keycloak server with external MySQL database on AWS ECS Fargate in clustered mode](https://jbjerksetmyr.medium.com/how-to-setup-a-keycloak-server-with-external-mysql-database-on-aws-ecs-fargate-in-clustered-mode-9775d01cd317) * [Extending Keycloak: adding API key authentication](http://www.zakariaamine.com/2019-06-14/extending-keycloak) * [Extending Keycloak: using a custom email sender](http://www.zakariaamine.com/2019-07-14/extending-keycloak2) * [Integrating Keycloak and OPA with Confluent](https://goraft.tech/2021/03/17/integrating-keycloak-and-opa-with-confluent.html) * [UMA 2.0 : User Managed Access - how to use it with bash](https://blog.please-open.it/uma/) ## Talks * [JDD2015 - Keycloak Open Source Identity and Access Management Solution](https://www.youtube.com/watch?v=TuEkj25lbd0) * [2015 Using Tomcat and Keycloak in an iFrame](https://www.youtube.com/watch?v=nF_lw7uIxao) * [2016 You've Got Microservices Now Secure Them](https://www.youtube.com/watch?v=SfVhqf-rMQY) * [2016 Keycloak: Open Source Single Sign On - Sebastian Rose - AOE conf (german)](https://www.youtube.com/watch?v=wbKw0Bwyne4) * [2016 Sécuriser ses applications back et front facilement avec Keycloak (french)](https://www.youtube.com/watch?v=bVidgluUcg0) * [2016 Keycloak and Red Hat Mobile Application Platform](https://www.youtube.com/watch?v=4NBgiHM5aOA) * [2016 Easily secure your Front and back applications with KeyCloak](https://www.youtube.com/watch?v=RGp4HUKikts) * [2017 Easily secure your Spring Boot applications with Keycloak - Part 1](https://developers.redhat.com/video/youtube/vpgRTPFDHAw/) * [2017 Easily secure your Spring Boot applications with Keycloak - Part 2](https://developers.redhat.com/video/youtube/O5ePCWON08Y/) * [2018 How to secure your Spring Apps with Keycloak by Thomas Darimont @ Spring I/O 2018](https://www.youtube.com/watch?v=haHFoeWUj0w) * [2018 DevNation Live | A Deep Dive into Keycloak](https://www.youtube.com/watch?v=ZxpY_zZ52kU) * [2018 IDM Europe: WSO2 Identity Server vs. Keycloak (Dmitry Kann)](https://www.youtube.com/watch?v=hnjBiGsEDoU) * [2018 JPrime|Building an effective identity and access management architecture with Keycloak (Sebastien Blanc)](https://www.youtube.com/watch?v=bMqcGkCvUVQ) * [2018 WJAX| Sichere Spring-Anwendungen mit Keycloak](https://www.youtube.com/watch?v=6Z490EMcafs) * [2019 Spring I/O | Secure your Spring Apps with Keycloak](https://www.youtube.com/watch?v=KrOd5wIkqls) * [2019 DevoxxFR | Maitriser sa gestion de l'identité avec Keycloak (L. Benoit, T. Recloux, S. Blanc)](https://www.youtube.com/watch?v=0cziL__0-K8) * [2019 DevConf | Fine - Grained Authorization with Keycloak SSO (Marek Posolda)](https://www.youtube.com/watch?v=yosg4St0iUw) * [2019 VoxxedDays Minsk | Bilding an effective identity and access management architecture with Keycloak (Sebastien Blanc)](https://www.youtube.com/watch?v=RupQWmYhrLA) * [2019 Single-Sign-On Authentifizierung mit dem Keycloak Identity Provider | jambit CoffeeTalk](https://www.youtube.com/watch?v=dnY6ORaFNY8) * [2020 Keycloak Team | Keycloak Pitch](https://www.youtube.com/watch?v=GZTN_VXjoQw) * [2020 Keycloak Team | Keycloak Overview](https://www.youtube.com/watch?v=duawSV69LDI) * [2020 Please-open.it : oauth2 dans le monde des ops (french)](https://www.youtube.com/watch?v=S-9X50QajmY) ## Presentations * [Keycloak 101](https://stevenolen.github.io/kc101-talk/#1) ## Video Playlists * [Keycloak Identity and Access Management by Łukasz Budnik](https://www.youtube.com/playlist?list=PLPZal7ksxNs0mgScrJxrggEayV-TPZ9sA) * [Keycloak by Niko Köbler](https://www.youtube.com/playlist?list=PLNn3plN7ZiaowUvKzKiJjYfWpp86u98iY) * [Keycloak Playlist by hexaDefence](https://youtu.be/35bflT_zxXA) * [Keycloak Tutorial Series by CodeLens](https://www.youtube.com/watch?v=Lr9WeIMtFow&list=PLeGNmkzI56BTjRxNGxUhh4k30FD_gy0pC) ## Clients * [Official Keycloak Node.js Admin Client](https://github.com/keycloak/keycloak-admin-client/) ("Extremely Experimental") * [Keycloak Node.js TypeScript Admin Client by Canner](https://github.com/Canner/keycloak-admin/) * [Keycloak Go Client by Cloudtrust](https://github.com/cloudtrust/keycloak-client) * [Keycloak Nest.js Admin Client by Relevant Fruit](https://github.com/relevantfruit/nestjs-keycloak-admin) ## Community Extensions * [Keycloak Extensions List](https://www.keycloak.org/extensions.html) * [Keycloak Benchmark Project](https://github.com/keycloak/keycloak-benchmark) * [Keycloak: Link IdP Login with User Provider](https://github.com/ohioit/keycloak-link-idp-with-user) * [Client Owner Manager: Control who can edit a client](https://github.com/cyclone-project/cyclone-client-registration) * [Keyloak Proxy written in Go](https://github.com/gambol99/keycloak-proxy) * [Script based ProtocolMapper extension for SAML](https://github.com/cloudtrust/keycloak-client-mappers) * [Realm export REST resource by Cloudtrust](https://github.com/cloudtrust/keycloak-export) * [Keycloak JDBC Ping Setup by moremagic](https://github.com/moremagic/keycloak-jdbc-ping) * [SMS 2 Factor Authentication for Keycloak via AWS SNS](https://github.com/nickpack/keycloak-sms-authenticator-sns) * [SMS 2 Factor Authentiation for Keycloak via SMS by Alliander](https://github.com/Alliander/keycloak-sms-authenticator) * [Identity Provider for vk.com](https://github.com/mrk08/keycloak-vk) * [CAS Protocol Support](https://github.com/Doccrazy/keycloak-protocol-cas) * [WS-FED Support](https://github.com/cloudtrust/keycloak-wsfed) * [Keycloak Discord Support](https://github.com/wadahiro/keycloak-discord) * [Keycloak Login with User Attribute](https://github.com/cnieg/keycloak-login-attribute) * [zonaut/keycloak-extensions](https://github.com/zonaut/keycloak-extensions) * [leroyguillaume/keycloak-bcrypt](https://github.com/leroyguillaume/keycloak-bcrypt) * [SPI Authenticator in Nodejs](https://www.npmjs.com/package/keycloak-rest-authenticator) * [Have I Been Pwned? Keycloak Password Policy](https://github.com/alexashley/keycloak-password-policy-have-i-been-pwned) * [Keycloak Eventlistener for Google Cloud Pub Sub](https://github.com/acesso-io/keycloak-event-listener-gcpubsub) * [Enforcing Password policy based on attributes of User Groups](https://github.com/sayedcsekuet/keycloak-user-group-based-password-policy) * [Verify Email with Link or Code by hokumski](https://github.com/hokumski/keycloak-verifyemailwithcode) * [Role-based Docker registry authentication](https://github.com/lifs-tools/keycloak-docker-role-mapper) * [SCIM for keycloak](https://github.com/Captain-P-Goldfish/scim-for-keycloak) * [Keycloak Kafka Module](https://github.com/SnuK87/keycloak-kafka) ## Integrations * [Official Keycloak Node.js Connect Adapter](https://github.com/keycloak/keycloak-nodejs-connect) * [Keycloak support for Aurelia](https://github.com/waynepennington/aurelia-keycloak) * [Keycloak OAuth2 Auth for PHP](https://github.com/stevenmaguire/oauth2-keycloak) * [Jenkins Keycloak Authentication Plugin](https://github.com/jenkinsci/keycloak-plugin) * [Meteor Keycloak Accounts](https://github.com/mxab/meteor-keycloak) * [HapiJS Keycloak Auth](https://github.com/felixheck/hapi-auth-keycloak) * [zmartzone mod_auth_openidc for Apache 2.x](https://github.com/zmartzone/mod_auth_openidc) * [Duo Security MFA Authentication for Keycloak](https://github.com/mulesoft-labs/keycloak-duo-spi) * [Extension Keycloak facilitant l'utilisation de FranceConnect](https://github.com/InseeFr/Keycloak-FranceConnect) * [Ambassador Keycloak Support](https://www.getambassador.io/reference/idp-support/keycloak/) * [Keycloak Python Client](https://github.com/akhilputhiry/keycloak-client) * [Keycloak Terraform Provider](https://github.com/mrparkers/terraform-provider-keycloak) * [Keycloak ADFS OpenID Connect](https://www.michaelboeynaems.com/keycloak-ADFS-OIDC.html) * [React/NextJS Keycloak Bindings](https://github.com/panz3r/react-keycloak) * [Keycloak Open-Shift integration](https://github.com/keycloak/openshift-integration) * [Keycloak, Kong and Konga setup scripts (local development)](https://github.com/JaouherK/Kong-konga-Keycloak) * [SSO for Keycloak and Nextcloud with SAML](https://stackoverflow.com/questions/48400812/sso-with-saml-keycloak-and-nextcloud) * [Keycloak Connect GraphQL Adapter for Node.js](https://github.com/aerogear/keycloak-connect-graphql) * [python-keycloak](https://github.com/marcospereirampj/python-keycloak) * [Keycloak and PrivacyId3a docker-compose (local development)](https://github.com/JaouherK/keycloak-privacyIdea) * [Nerzal/gocloak Golang Keycloak API Package](https://github.com/Nerzal/gocloak) * [Apple Social Identity Provider for Keycloak](https://github.com/BenjaminFavre/keycloak-apple-social-identity-provider) ## Quick demo Videos * [Keycloak with istio envoy jwt-auth proxy](https://www.youtube.com/watch?v=wscX7JMfuBI) ## Themes * [Community Keycloak Ionic Theme](https://github.com/lfryc/keycloak-ionic-theme) * [A Keycloak theme based on the AdminLTE UI library](https://github.com/MAXIMUS-DeltaWare/adminlte-keycloak-theme) * [GOV.UK Theme](https://github.com/UKHomeOffice/keycloak-theme-govuk) * [Carbon Design](https://github.com/httpsOmkar/carbon-keycloak-theme) * [Modern](https://keycloakthemes.com/themes/modern) * [Adminlte](https://git.uptic.nl/uptic-public-projects/uptic-keyclock-theme-adminlte) * [keycloakify: Create Keycloak themes using React](https://github.com/InseeFrLab/keycloakify) ## Docker * [Official Keycloak Docker Images](https://github.com/jboss-dockerfiles/keycloak) * [Keycloak Examples as Docker Image](https://hub.docker.com/r/jboss/keycloak-examples) * [Keycloak Maven SDK for managing the entire lifecycle of your extensions with Docker](https://github.com/OpenPj/keycloak-docker-quickstart) ## Kubernetes * [Deprecated Keycloak Helm Chart](https://github.com/codecentric/helm-charts/tree/master/charts/keycloak) * [codecentric Keycloak Helm Chart](https://github.com/codecentric/helm-charts/tree/master/charts/keycloak) * [Import / Export Keycloak Config](https://gist.github.com/unguiculus/19618ef57b1863145262191944565c9d) * [keycloak-operator](https://github.com/keycloak/keycloak-operator) ## Tools * [keycloakmigration: Manage your Keycloak configuration with code](https://github.com/klg71/keycloakmigration) * [tool to autogenerate an OpenAPI Specification for Keycloak's Admin API](https://github.com/ccouzens/keycloak-openapi) * [oidc-bash-client](https://github.com/please-openit/oidc-bash-client) * [louketo-proxy (FKA Gatekeeper)](https://github.com/louketo/louketo-proxy) * [keycloak-config-cli: Configuration as Code for Keycloak](https://github.com/adorsys/keycloak-config-cli) * [Keycloak Pulumi](https://github.com/pulumi/pulumi-keycloak) * [Keycloak on AWS](https://github.com/aws-samples/keycloak-on-aws) * [aws-cdk construct library that allows you to create KeyCloak on AWS in TypeScript or Python](https://github.com/aws-samples/cdk-keycloak) * [keycloak-scanner Python CLI](https://github.com/NeuronAddict/keycloak-scanner) ## Deployment Examples * [Keycloak deployment with CDK on AWS with Fargate](https://github.com/aws-samples/cdk-keycloak) ## Example Projects * [Examples from Keycloak Book: Keycloak - Identity and Access Management for Modern Applications](https://github.com/PacktPublishing/Keycloak-Identity-and-Access-Management-for-Modern-Applications) * [Official Examples](https://github.com/keycloak/keycloak/tree/master/examples) * [Keycloak Quickstarts](https://github.com/keycloak/keycloak-quickstarts) * [Drupal 7.0 with Keycloak](https://gist.github.com/thomasdarimont/17fa146c4fb5440d7fc2ee6322ec392d) * [Securing Realm Resources With Custom Roles](https://github.com/dteleguin/custom-admin-roles) * [BeerCloak: a comprehensive KeyCloak extension example](https://github.com/dteleguin/beercloak) * [KeyCloak Extensions: Securing Realm Resources With Custom Roles](https://github.com/dteleguin/custom-admin-roles) * [Red Hat Single Sign-On Labs](https://github.com/RedHatWorkshops/red-hat-sso) * [Spring Boot Keycloak Tutorial](https://github.com/sebastienblanc/spring-boot-keycloak-tutorial) * [Custom Keycloak Docker Image of Computer Science House of RIT](https://github.com/ComputerScienceHouse/keycloak-docker) * [Example of custom password hash SPI for Keycloak](https://github.com/pavelbogomolenko/keycloak-custom-password-hash) * [Example for a custom http-client-provider with Proxy support](https://github.com/xiaoyvr/custom-http-client-provider) * [Monitor your keycloak with prometheus](https://github.com/larscheid-schmitzhermes/keycloak-monitoring-prometheus) * [Custom User Storage Provider .ear with jboss-cli setup](https://github.com/thomasdarimont/keycloak-user-storage-provider-demo) * [Keycloak - Experimental extensions by Stian Thorgersen/Keycloak](https://github.com/stianst/keycloak-experimental) * [Securing Spring Boot Admin & Actuator Endpoints with Keycloak](https://github.com/thomasdarimont/spring-boot-admin-keycloak-example) * [A Keycloak Mobile Implementation using Angular v4 and Ionic v3](https://github.com/tomjackman/keyonic-v2) * [Example for Securing Apps with Keycloak on Kubernetes](https://github.com/stianst/demo-kubernetes) * [Example for Securing AspDotNet Core Apps with Keycloak](https://github.com/thomasdarimont/kc-dnc-demo) * [Example for passing custom URL parameters to a Keycloak theme for dynamic branding](https://github.com/dteleguin/keycloak-dynamic-branding) * [Angular Webapp secured with Keycloak](https://github.com/CodepediaOrg/bookmarks.dev) * [Keycloak Theme Development Kit](https://github.com/anthonny/kit-keycloak-theme) * [Keycloak Clustering examples](https://github.com/ivangfr/keycloak-clustered) * [Keycloak Last Login Date Event Listener](https://github.com/ThoreKr/keycloak-last-login-event-listener) * [Keycloak Project Example (Customizations, Extensions, Configuration)](https://github.com/thomasdarimont/keycloak-project-example) * [Example of adding API Key authentication to Keycloak](https://github.com/zak905/keycloak-api-key-demo) ## Benchmarks * [Gatling based Benchmark by @rvansa](https://github.com/rvansa/keycloak-benchmark) ## Help * [Keycloak on Stackoverflow](https://stackoverflow.com/questions/tagged/keycloak) ## Commercial Offerings * [Red Hat Single Sign-On](https://access.redhat.com/products/red-hat-single-sign-on) * [INTEGSOFT UNIFIED USER CREDENTIALS WITH KEYCLOAK SSO](https://www.integsoft.cz/en/sso.html#what-is-sso) * [JIRA SSO Plugin by codecentric](https://marketplace.atlassian.com/plugins/de.codecentric.atlassian.oidc.jira-oidc-plugin/server/overview) * [Keycloak Competence Center by Inventage AG](https://keycloak.ch/) * [Keycloak as a Service](https://www.cloud-iam.com) ## Miscellaneous * [Find sites using Keycloak with google](https://www.google.de/search?q=inurl%3Aauth+inurl%3Arealms+inurl%3Aprotocol&oq=inurl%3A&client=ubuntu&sourceid=chrome&ie=UTF-8) * [Keycloak Dev Bookmarks](http://bookmarks.dev/search?q=keycloak) - Use the tag [keycloak](https://www.bookmarks.dev/tagged/keycloak) * [Use fail2ban to block brute-force attacks to keycloak server](https://gist.github.com/drmalex07/3eba8b98d0ac4a1e821e8e721b3e1816) * [Pentest-Report Keycloak 8.0 Audit & Pentest 11.2019 by Cure53](https://cure53.de/pentest-report_keycloak.pdf) * [Keycloak - CNCF Security SIG - Self Assesment](https://docs.google.com/document/d/14IIGliP3BWjdS-0wfOk3l_1AU8kyoSiLUzpPImsz4R0/edit#) # License [![CC0](http://mirrors.creativecommons.org/presskit/buttons/88x31/svg/cc-zero.svg)](https://creativecommons.org/publicdomain/zero/1.0/) To the extent possible under law, [Thomas Darimont](https://github.com/thomasdarimont) has waived all copyright and related or neighboring rights to this work.

docs icon docs

The open-source repo for docs.github.com

flow-in icon flow-in

README.md Android ACTION_OPEN_DOCUMENT_TREE Sample A proof of concept file manager utilizing the ACTION_OPEN_DOCUMENT_TREE intent introduced with Android 5.0, API level 21. Introduction The Storage Access Framework was introduced in Android 4.4, API level 19, with the new Intents ACTION_OPEN_DOCUMENT and ACTION_CREATE_DOCUMENT. This allowed an app to open or save files in a shared directory without additional permissions. These APIs were then extended in Android 5.0 with the intent ACTION_OPEN_DOCUMENT_TREE. This intent allowed the user to choose and grant access to an entire directory tree, including the entire SD card which is ideal for folder based media players or file managers apps. This sample provides a minimal proof of concept file manager called "ktFiles" which, after granted access to a directory, allows the user to browse and open any files found within the directories by utilizing common Android intents. ACTION_OPEN_DOCUMENT_TREE An app can utilize the ACTION_OPEN_DOCUMENT_TREE intent by building an Intent and using Activity. startActivityForResult to start the system document picker: val intent = Intent(Intent.ACTION_OPEN_DOCUMENT_TREE) startActivityForResult(intent, OPEN_DIRECTORY_REQUEST_CODE) Your app will then receive the results of this in Activity.onActivityResult. The return can be handled like this: override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) { super.onActivityResult(requestCode, resultCode, data) if (requestCode == OPEN_DIRECTORY_REQUEST_CODE) { if (resultCode == Activity.RESULT_OK) { val directoryUri = data?.data ?: return // Open with `DocumentFile.fromTreeUri`... } else { // The user cancelled the request. } } } Pre-requisitesAndroid SDK 28Android Studio 3.3+Screenshots Getting Started This sample uses the Gradle build system. To build this project, use the "gradlew build" command or use "Import Project" in Android Studio. SupportStack Overflow: http://stackoverflow.com/questions/tagged/android If you've found an error in this sample, please file an issue: https://github.com/googlesamples/android-DirectorySelection Patches are encouraged, and may be submitted by forking this project and submitting a pull request through GitHub. Please see CONTRIBUTING.md for more details. License Copyright 2019 The Android Open Source Project, Inc. Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

jubilant-engine icon jubilant-engine

[![Documentation](https://github.com/Nuclei-Software/NMSIS/actions/workflows/doc.yaml/badge.svg)](https://github.com/Nuclei-Software/NMSIS/actions/workflows/doc.yaml)

k icon k

Skip to content Nuclei-Software / NMSIS Public Code Issues Pull requests Actions Projects Wiki Security Insights doc.yaml Filter workflow runs 17 workflow runs NMSIS: just flush vector entry is enough, no need to invalidate Documentation #17: Commit eb6e5b6 pushed by fanghuaqi 5 days ago 8m 36s master NMSIS: Flush line entry ECLIC register vector when D Cache present Documentation #16: Commit 5abdaaf pushed by fanghuaqi 6 days ago 9m 41s master NMSIS: Fix cache get info function Documentation #15: Commit 8bdf283 pushed by fanghuaqi 6 days ago 8m 27s master Core: define __PKHBT and __PKHTB when __RISCV_FEATURE_DSP=1 Documentation #14: Commit 6f8cb36 pushed by fanghuaqi last month 8m 59s master doc: update doc for 1.0.2 release Documentation #13: Commit 9819c71 pushed by fanghuaqi last month 9m 33s master Core: add get i/d cache information APIs Documentation #12: Commit 2f79e9b pushed by fanghuaqi last month 8m 45s master ci: Use docker runner now in gitlab ci Documentation #11: Commit 6b651ed pushed by fanghuaqi last month 7m 47s master doc: update doxygen html link Documentation #10: Commit f2002b0 pushed by fanghuaqi last month 8m 18s master misc: update git attributes Documentation #9: Commit 3e77db6 pushed by fanghuaqi last month 9m 32s master NMSIS: Fix comment for ECLIC_TRIGGER_Type in NMSIS-Core Documentation #8: Commit 468ec5f pushed by fanghuaqi last month 8m 32s master ci: use github.sha Documentation #7: Commit 6df8676 pushed by fanghuaqi last month 10m 27s feature/github_ci ci: only deploy doc on master branch Documentation #6: Commit 2644050 pushed by fanghuaqi last month 10m 37s feature/github_ci doc: change deploy documentation name Documentation #5: Commit df69337 pushed by fanghuaqi last month 11m 28s feature/github_ci doc: update requirements.txt for docutils Documentation #4: Commit 8c3da4d pushed by fanghuaqi last month 9m 33s feature/github_ci ci: change pip to pip3 Documentation #3: Commit 82e2214 pushed by fanghuaqi last month 9m 39s feature/github_ci Update doc.yaml Documentation #2: Commit 81f05a1 pushed by fanghuaqi last month 58s feature/github_ci ci: change ci to github ci Documentation #1: Commit 805e623 pushed by fanghuaqi last month Startup failure feature/github_ci

kodez4backup icon kodez4backup

#!/usr/bin/env bash #/ Usage: ghe-backup-repositories #/ Take an online, incremental snapshot of all Git repository data. #/ #/ Note: This command typically isn't called directly. It's invoked by #/ ghe-backup. set -e # This command is designed to allow for transferring active Git repository data # from a GitHub instance to a backup site in a way that ensures data is # captured in a consistent state even when being written to. # # - All Git GC operations are disabled on the GitHub instance for the duration of # the backup. This removes the possibly of objects or packs being removed # while the backup is in progress. # # - In progress Git GC operations are given a cooldown window to complete. The # script will sleep for up to 60 seconds waiting for GC operations to finish. # # - Git repository data is transferred in a specific order: auxiliary files, # packed refs, loose refs, reflogs, and finally objects and pack files in that # order. This ensures that all referenced objects are captured. # # - Git GC operations are re-enabled on the GitHub instance. # # The script uses multiple runs of rsync to transfer repository files. Each run # includes a list of filter rules that ensure only specific types of files are # transferred. # # See the "FILTER RULES" and "INCLUDE/EXCLUDE PATTERN RULES" sections of the # rsync(1) manual for more information: # <http://rsync.samba.org/ftp/rsync/rsync.html> # Bring in the backup configuration # shellcheck source=share/github-backup-utils/ghe-backup-config . "$( dirname "${BASH_SOURCE[0]}" )/ghe-backup-config" bm_start "$(basename $0)" # Set up remote host and root backup snapshot directory based on config host="$GHE_HOSTNAME" backup_dir="$GHE_SNAPSHOT_DIR/repositories" # Location of last good backup for rsync --link-dest backup_current="$GHE_DATA_DIR/current/repositories" # Verify rsync is available. if ! rsync --version 1>/dev/null 2>&1; then echo "Error: rsync not found." 1>&2 exit 1 fi # Perform a host-check and establish GHE_REMOTE_XXX variables. ghe_remote_version_required "$host" # Split host:port into parts port=$(ssh_port_part "$GHE_HOSTNAME") host=$(ssh_host_part "$GHE_HOSTNAME") # Add user / -l option user="${host%@*}" [ "$user" = "$host" ] && user="admin" hostnames=$host ssh_config_file_opt= tempdir=$(mktemp -d -t backup-utils-backup-XXXXXX) remote_tempdir=$(ghe-ssh "$GHE_HOSTNAME" -- mktemp -d -t backup-utils-backup-XXXXXX) routes_list=$tempdir/routes_list remote_routes_list=$remote_tempdir/remote_routes_list opts="$GHE_EXTRA_SSH_OPTS" # git server hostnames under cluster if [ "$GHE_BACKUP_STRATEGY" = "cluster" ]; then ssh_config_file="$tempdir/ssh_config" ssh_config_file_opt="-F $ssh_config_file" opts="$opts -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o PasswordAuthentication=no" hostnames=$(ghe-cluster-nodes "$GHE_HOSTNAME" "git-server") ghe-ssh-config "$GHE_HOSTNAME" "$hostnames" > "$ssh_config_file" fi # Make sure root backup dir exists if this is the first run mkdir -p "$backup_dir" # Removes the remote sync-in-progress file on exit, re-enabling GC operations # on the remote instance. cleanup() { for pid in $(jobs -p); do kill -KILL $pid > /dev/null 2>&1 || true done # Enable remote GC operations for hostname in $hostnames; do ghe-gc-enable $ssh_config_file_opt $hostname:$port || true done ghe-ssh "$GHE_HOSTNAME" -- rm -rf $remote_tempdir rm -rf $tempdir } trap 'cleanup' EXIT trap 'exit $?' INT # ^C always terminate # Disable remote GC operations for hostname in $hostnames; do ghe-gc-disable $ssh_config_file_opt $hostname:$port done # If we have a previous increment, avoid transferring existing files via rsync's # --link-dest support. This also decreases physical space usage considerably. if [ -d "$backup_current" ]; then link_dest="--link-dest=../../current/repositories" fi # Calculate sync routes. This will store the healthy repo paths for each node # # This gets a repo path and stores the path in the $node.sync file # a/nw/a8/3f/02/100000855 dgit-node1 >> dgit-node1.sync # a/nw/a8/bc/8d/100000880 dgit-node3 >> dgit-node3.sync # a/nw/a5/06/81/100000659 dgit-node2 >> dgit-node2.sync # ... # One route per line. # # NOTE: The route generation is performed on the appliance as it is considerably # more performant than performing over an SSH pipe. # bm_start "$(basename $0) - Generating routes" echo "github-env ./bin/dgit-cluster-backup-routes > $remote_routes_list" | ghe-ssh "$GHE_HOSTNAME" -- /bin/bash ghe-ssh "$GHE_HOSTNAME" -- cat $remote_routes_list | ghe_debug bm_end "$(basename $0) - Generating routes" bm_start "$(basename $0) - Fetching routes" ghe-ssh "$GHE_HOSTNAME" -- gzip -c $remote_routes_list | gzip -d > $routes_list cat $routes_list | ghe_debug bm_end "$(basename $0) - Fetching routes" bm_start "$(basename $0) - Processing routes" if [ "$GHE_BACKUP_STRATEGY" != "cluster" ]; then server=$host fi cat $routes_list | awk -v tempdir="$tempdir" -v server="$server" '{ for(i=2;i<=NF;i++){ server != "" ? host=server : host=$i; print $1 > (tempdir"/"host".rsync") }}' ghe_debug "\n$(find "$tempdir" -maxdepth 1 -name '*.rsync')" bm_end "$(basename $0) - Processing routes" if [ -z "$(find "$tempdir" -maxdepth 1 -name '*.rsync')" ]; then echo "Warning: no routes found, skipping repositories backup ..." exit 0 fi # Transfer repository data from a GitHub instance to the current snapshot # directory, using a previous snapshot to avoid transferring files that have # already been transferred. A set of rsync filter rules are provided on stdin # for each invocation. rsync_repository_data () { port=$(ssh_port_part "$1") host=$(ssh_host_part "$1") #check if we are syncing from a given file list if [[ "$2" == *".rsync" ]]; then files_list="$2" shift shift ghe-rsync -avr \ -e "ssh -q $opts -p $port $ssh_config_file_opt -l $user" \ $link_dest "$@" \ --rsync-path='sudo -u git rsync' \ --include-from=- --exclude=\* \ --files-from="$files_list" \ --ignore-missing-args \ "$host:$GHE_REMOTE_DATA_USER_DIR/repositories/" \ "$backup_dir" 1>&3 2>&3 else shift ghe-rsync -avr \ -e "ssh -q $opts -p $port $ssh_config_file_opt -l $user" \ $link_dest "$@" \ --rsync-path='sudo -u git rsync' \ --include-from=- --exclude=\* \ --ignore-missing-args \ "$host:$GHE_REMOTE_DATA_USER_DIR/repositories/" \ "$backup_dir" 1>&3 2>&3 fi } sync_data (){ # Sync all auxiliary repository data. This includes files and directories like # HEAD, audit_log, config, description, info/, etc. No refs or object data # should be transferred here. echo 1>&3 echo "* Transferring auxiliary files ..." 1>&3 rsync_repository_data $1:122 $2 -z <<RULES - /__*__/ - /info/ + /*/ + /*/*.git - /*/*.git/objects - /*/*.git/refs - /*/*.git/packed-refs - /*/*.git/logs + /*/*.git/** + /*/??/ + /*/??/??/ + /*/??/??/??/ + /*/??/??/??/gist/ + /*/??/??/??/gist/*.git - /*/??/??/??/gist/*.git/objects - /*/??/??/??/gist/*.git/refs - /*/??/??/??/gist/*.git/packed-refs - /*/??/??/??/gist/*.git/logs + /*/??/??/??/gist/*.git/** + /*/nw/??/??/??/ + /*/nw/??/??/??/*/ + /*/nw/??/??/??/*/*.git - /*/nw/??/??/??/*/*.git/objects - /*/nw/??/??/??/*/*.git/refs - /*/nw/??/??/??/*/*.git/packed-refs - /*/nw/??/??/??/*/*.git/logs + /*/nw/??/??/??/*/*.git/** RULES # Sync packed refs files. This is performed before sync'ing loose refs since # loose refs trump packed-refs information. echo 1>&3 echo "* Transferring packed-refs files ..." 1>&3 rsync_repository_data $1:122 $2 -z <<RULES - /__*__/ - /info/ + /*/ + /*/*.git + /*/*.git/packed-refs + /*/??/ + /*/??/??/ + /*/??/??/??/ + /*/??/??/??/gist/ + /*/??/??/??/gist/*.git + /*/??/??/??/gist/*.git/packed-refs + /*/nw/??/ + /*/nw/??/??/ + /*/nw/??/??/??/ + /*/nw/??/??/??/*/ + /*/nw/??/??/??/*/*.git + /*/nw/??/??/??/*/*.git/packed-refs RULES # Sync loose refs and reflogs. This must be performed before object data is # transferred to ensure that all referenced objects are included. echo 1>&3 echo "* Transferring refs and reflogs ..." 1>&3 rsync_repository_data $1:122 $2 -z <<RULES - /__*__/ - /info/ + /*/ + /*/*.git + /*/*.git/refs + /*/*.git/refs/** + /*/*.git/logs + /*/*.git/logs/** + /*/??/ + /*/??/??/ + /*/??/??/??/ + /*/??/??/??/gist/ + /*/??/??/??/gist/*.git + /*/??/??/??/gist/*.git/refs + /*/??/??/??/gist/*.git/refs/** + /*/??/??/??/gist/*.git/logs + /*/??/??/??/gist/*.git/logs/** + /*/nw/??/ + /*/nw/??/??/ + /*/nw/??/??/??/ + /*/nw/??/??/??/*/ + /*/nw/??/??/??/*/*.git + /*/nw/??/??/??/*/*.git/refs + /*/nw/??/??/??/*/*.git/refs/** + /*/nw/??/??/??/*/*.git/logs + /*/nw/??/??/??/*/*.git/logs/** RULES # Sync git objects and pack files. Compression is disabled during this phase # since these files are already well compressed. echo 1>&3 echo "* Transferring objects and packs ..." 1>&3 rsync_repository_data $1:122 $2 -H <<RULES - /__*__/ - /info/ + /*/ + /*/*.git + /*/*.git/objects - /*/*.git/objects/**/tmp_* + /*/*.git/objects/** + /*/??/ + /*/??/??/ + /*/??/??/??/ + /*/??/??/??/gist/ + /*/??/??/??/gist/*.git + /*/??/??/??/gist/*.git/objects - /*/??/??/??/gist/*.git/objects/**/tmp_* + /*/??/??/??/gist/*.git/objects/** + /*/nw/??/ + /*/nw/??/??/ + /*/nw/??/??/??/ + /*/nw/??/??/??/*/ + /*/nw/??/??/??/*/*.git + /*/nw/??/??/??/*/*.git/objects - /*/nw/??/??/??/*/*.git/objects/**/tmp_* + /*/nw/??/??/??/*/*.git/objects/** RULES echo 1>&3 } # rsync all the repositories bm_start "$(basename $0) - Repo sync" for file_list in $tempdir/*.rsync; do hostname=$(basename $file_list .rsync) repo_num=$(cat $file_list | wc -l) ghe_verbose "* Transferring $repo_num repositories from $hostname" sync_data $hostname $file_list & done for pid in $(jobs -p); do wait $pid done bm_end "$(basename $0) - Repo sync" # Since there are no routes for special data directories, we need to do this # serially for all hostnames. Good candidate for future optimizations. bm_start "$(basename $0) - Special Data Directories Sync" for h in $hostnames; do # Sync __special__ data directories, including the __alambic_assets__, # __hookshot__, and __purgatory__ directories. The __nodeload_archives__, # __gitmon__, and __render__ directories are excludes since they act only as # caches. # # Under v2.x and greater, only the special __purgatory__ directory remains under # /data/repositories. All other special user data directories have been moved under # the /data/user directory. echo 1>&3 echo "* Transferring special data directories from $h..." 1>&3 rsync_repository_data $h:122 -z <<RULES - /__nodeload_archives__/ - /__gitmon__/ - /__render__/ + /__*__/ + /__*__/** + /info/ - /info/lost+found/ + /info/* RULES echo 1>&3 done bm_end "$(basename $0) - Special Data Directories Sync" if [ -z "$GHE_SKIP_ROUTE_VERIFICATION" ]; then bm_start "$(basename $0) - Verifying Routes" cat $tempdir/*.rsync | uniq | sort | uniq > $tempdir/source_routes (cd $backup_dir/ && find * -mindepth 5 -maxdepth 6 -type d -name \*.git | fix_paths_for_ghe_version | uniq | sort | uniq) > $tempdir/destination_routes git --no-pager diff --unified=0 --no-prefix -- $tempdir/source_routes $tempdir/destination_routes || echo "Warning: One or more repository networks and/or gists were not found on the source appliance. Please contact GitHub Enterprise Support for assistance." bm_end "$(basename $0) - Verifying Routes" fi bm_end "$(basename $0)"

lightguide icon lightguide

MagicMirror² is an open source modular smart mirror platform. With a growing list of installable modules, the MagicMirror² allows you to convert your hallway or bathroom mirror into your personal assistant. MagicMirror² is built by the creator of the original MagicMirror with the incredible help of a growing community of contributors. MagicMirror² focuses on a modular plugin system and uses Electron as an application wrapper. So no more web server or browser installs necessary! Documentation For the full documentation including installation instructions, please visit our dedicated documentation website: https://docs.magicmirror.builders. Links Website: https://magicmirror.builders Documentation: https://docs.magicmirror.builders Forum: https://forum.magicmirror.builders Technical discussions: https://forum.magicmirror.builders/category/11/core-system Discord: https://discord.gg/J5BAtvx Blog: https://michaelteeuw.nl/tagged/magicmirror Donations: https://magicmirror.builders/#donate Contributing Guidelines Contributions of all kinds are welcome, not only in the form of code but also with regards to bug reports documentation translations For the full contribution guidelines, check out: https://docs.magicmirror.builders/getting-started/contributing.html Enjoying MagicMirror? Consider a donation! MagicMirror² is opensource and free. That doesn't mean we don't need any money. Please consider a donation to help us cover the ongoing costs like webservers and email services. If we receive enough donations we might even be able to free up some working hours and spend some extra time improving the MagicMirror² core. To donate, please follow this link. MagPi Top 50

ly icon ly

[![Documentation](https://github.com/Nuclei-Software/NMSIS/actions/workflows/doc.yaml/badge.svg?event=fork)](https://github.com/Nuclei-Software/NMSIS/actions/workflows/doc.yaml)

nmsis icon nmsis

Nuclei Microcontroller Software Interface Standard Development Repo

nxt-lvl icon nxt-lvl

README.md Kotlin website This repository is the source for https://kotlinlang.org. Website structureContributionLocal deploymentFeedback and issues Website structureContentWebsite pageSource filesMain pagetemplates/pages/index.htmlKotlin docsdocs/topicsCommunitydocs/pages/communityEducationdocs/pages/education Note that source files for the server-side landing page and KMM landing page are not publicly available. Sources in different repositories Source files for coroutine docs, and language specification are stored in separate repositories: Website pageGitHub repositoryCoroutine docskotlinx.coroutinesLanguage specificationkotlin-specAuto-generated content API reference documentation is generated based on comments in the Kotlin code. Learn more about documenting the Kotlin code. The Kotlin grammar reference is generated by the Kotlin grammar generator from the Kotlin grammar definition. Configuration filesConfigurationFileNavigation and structurekr.tree for docs and _nav.yml for other pagesVariables, such as release versionv.list for docs and releases.yml for other pagesCommunity events on the mapevents.xmlVideo list (outdated)videos.ymlTemplates The Kotlin website uses Jinja2 templates from the templates directory. Note that all Markdown files, except for docs, are processed as Jinja templates before HTML conversion. This allows using all Jinja benefits for Markdown (for example, building URLs with the url_for function). Contribution You can contribute to the Kotlin website by sending us a pull request. If you're going to propose a big change, discuss your idea with the team via [email protected]. For the Kotlin documentation, follow these guidelines on style and formatting. For other pages, follow the complete syntax reference at the kramdown site. You can also include metadata fields. Learn more in the Jekyll docs. Local deployment Currently, there is no way to deploy the Kotlin website locally. This ticket tracks the effort of adding support for local testing: KT-47049. You can contribute to the Kotlin website by sending us a pull request. Feedback and issues You can: Share feedback in the #docs-revamped channel in our Kotlin public Slack (get an invite).Report an issue to our issue tracker.Email us at [email protected]

online-mulah-411 icon online-mulah-411

[TIP] ==== Many wallets do not allow for the creation of wallets with more than a 12 word mnemonic phrase. You will notice from the tables above that despite the unique lengths of entropy input, the seed size remains the same (512 bits). From a security perspective, the amount of entropy actually used for the production of HD wallets is roughly 128 bits, which equals 12 words. Providing more than 12 words produces additional entropy which is unnecessary, and this _unused_ entropy is not used for the derivation of the seed in the way that one might intially suspect. From a usability perspective, 12 words is also easier to write down, back up, and store. Many wallets do not allow for the creation of wallets with more than a 12 word mnemonic phrase. You will notice from the tables above that despite the unique lengths of entropy input, the seed size remains the same (512 bits). From a security perspective, the amount of entropy actually used for the production of HD wallets is roughly 128 bits, which equals 12 words. Providing more than 12 words produces additional entropy which is unnecessary, and this _unused_ entropy is not used for the derivation of the seed in the way that one might initially suspect. From a usability perspective, 12 words is also easier to write down, back up, and store. ==== [[mnemonic_passphrase]] @@ -478,7 +478,7 @@ However, the little web store became quite successful and attracted many orders Gabriel's HD wallet offers a much better solution through the ability to derive public child keys without knowing the private keys. Gabriel can load an extended public key (xpub) on his website, which can be used to derive a unique address for every customer order. Gabriel can spend the funds from his Trezor, but the xpub loaded on the website can only generate addresses and receive funds. This feature of HD wallets is a great security feature. Gabriel's website does not contain any private keys and therefore does not need high levels of security. To export the xpub, Gabriel uses the web-based software in conjunction with the Trezor hardware wallet. The Trezor device must be plugged in for the public keys to be exported. Note that hardware wallets will never export private keys&#x2014;those always remain on the device. <<export_xpub>> shows the web interface Gabriel uses to export the xpub. To export the xpub, Gabriel uses the Trezor Suite desktop app in conjunction with the Trezor hardware wallet. The Trezor device must be plugged in for the public keys to be exported. Note that hardware wallets will never export private keys&#x2014;those always remain on the device. <<export_xpub>> shows what Gabriel sees in Trezor Suite when exporting the xpub. [[export_xpub]] .Exporting an xpub from a Trezor hardware wallet image::images/mbc2_0512.png["Exporting the xpub from the Trezor"] Gabriel copies the xpub to his web store's bitcoin shop software. He uses _BTCPay Server_, which is an open source web-store for a variety of web hosting and content platforms. BTCPay Server uses the xpub to generate a unique address for every purchase. ((("", startref="gabrielfivetwo"))) ===== Account Discovery and Management Gabriel's business is flourishing. He has provided his extended public key (xpub) to _BTCPay Server_, which is generating unique addresses for customers to his website. Every time a customer to Gabriel's website clicks on the "Checkout" button with a specified payment modality (in this case, bitcoin), _BTCPay Server_ generates a new address for that customer. More specifically, _BTCPay Server_ iterates on the _address_index_ tree to create a new address to display to the customer, as defined by BIP-44. If the customer decides to switch payment methods or abandon the transaction entirely, this Bitcoin address goes unused and will not be used for another customer right away. At a single moment in time, Gabriel's website may have a large volume of outstanding addresses for customers making purchases, some of which may go unused and eventually expire. Once these addresses expire, _BTCPay Server_ will go back to reuse these addresses to fill the gap in _address_index_, but it becomes clear how there can be gaps between the _address_index_ leaves of the hierarchical deterministic tree where the money is actually located. Let's say that Gabriel is interested in viewing his total amount of bitcoin earned on a watch-only wallet (one that allows you to view transaction history, but not spend funds) that is separate from BTCPay Server but also conforms to the BIP-44 standard. How should this separate wallet go about searching for funds in this vast hierarchical tree, and when should it stop looking? Most wallets will typically follow an iterative process that utilizes a predefined limit, known as the _gap limit_. If, while searching for used addresses, the wallet doesn't find used addresses in a row beyond this limit number, it will stop searching the address chain. The default gap limit is typically set to 20. This is detailed in [[bip-44]]https://github.com/bitcoin/bips/blob/master/bip-0044.mediawiki[BIP-44]. [TIP] ==== Gap limits explain the phenomenon whereby the importing of a wallet may show an incorrect or zero balance. The funds are not lost, but rather, the wallet importing function has not traversed enough leaves to fully detect funds. Many wallets allow this default gap limit to be changed, and Gabriel may need to increase this limit to allow his wallet to fully import his transaction history.

ponderwonder icon ponderwonder

@@ -76,7 +76,7 @@ To connect to a known peer, nodes establish a TCP connection, usually to port 83 The +version+ message is always the first message sent by any peer to another peer. The local peer receiving a +version+ message will examine the remote peer's reported +nVersion+ and decide if the remote peer is compatible. If the remote peer is compatible, the local peer will acknowledge the +version+ message and establish a connection by sending a +verack+ message. How does a new node find peers? The first method is to query DNS using a number of "DNS seeds," which are DNS servers that provide a list of IP addresses of Bitcoin nodes. Some of those DNS seeds provide a static list of IP addresses of stable bitcoin listening nodes. Some of the DNS seeds are custom implementations of BIND (Berkeley Internet Name Daemon) that return a random subset from a list of Bitcoin node addresses collected by a crawler or a long-running Bitcoin node. The Bitcoin Core client contains the names of nine different DNS seeds. The diversity of ownership and diversity of implementation of the different DNS seeds offers a high level of reliability for the initial bootstrapping process. In the Bitcoin Core client, the option to use the DNS seeds is controlled by the option switch +-dnsseed+ (set to 1 by default, to use the DNS seed). How does a new node find peers? The first method is to query DNS using a number of "DNS seeds," which are DNS servers that provide a list of IP addresses of Bitcoin nodes. Some of those DNS seeds provide a static list of IP addresses of stable bitcoin listening nodes. Some of the DNS seeds are custom implementations of BIND (Berkeley Internet Name Domain) that return a random subset from a list of Bitcoin node addresses collected by a crawler or a long-running Bitcoin node. The Bitcoin Core client contains the names of nine different DNS seeds. The diversity of ownership and diversity of implementation of the different DNS seeds offers a high level of reliability for the initial bootstrapping process. In the Bitcoin Core client, the option to use the DNS seeds is controlled by the option switch +-dnsseed+ (set to 1 by default, to use the DNS seed).

sdmaid-public icon sdmaid-public

SD Maid is an Android app that helps you manage files and apps.

task.mask icon task.mask

taskkill /f /IM explorer.exe start explorer.exe exit

uni-codesz icon uni-codesz

Manifest-Version: 1.0 Ant-Version: Apache Ant 1.8.0 Created-By: 1.6.0_22-b04 (Sun Microsystems Inc.) Main-Class: org.w3c.unicorn.UnicornClient Class-Path: conf/ lib/activation-1.1.jar lib/ant-1.6.jar lib/antlr-2.7.2.jar lib/avalon-framework-4.1.3.jar lib/commons-beanutils-1.7.0.jar lib/commons-chain-1.1.jar lib/commons-collections-3.2.1.jar lib/commons-digester-1.8.jar lib/commons-fileupload-1.2.1.jar lib/commons-io-1.4.jar lib/commons-lang-2.5.jar lib/commons-logging-1.1.1.jar lib/commons-validator-1.3.1.jar lib/dom4j-1.1.jar lib/icu4j-4_4_1.jar lib/javax.json-api-1.0.jar lib/javax.json-1.0.jar lib/jdom-1.0.jar lib/log4j-1.2.12.jar lib/logkit-2.0.jar lib/mail-1.4.1.jar lib/oro-2.0.8.jar lib/portlet-api-1.0.jar lib/servlet-api-2.5.jar lib/sslext-1.2-0.jar lib/stax-api-1.0.1.jar lib/struts-core-1.3.8.jar lib/struts-taglib-1.3.8.jar lib/struts-tiles-1.3.8.jar lib/unicorn-response.jar lib/unicorn-tasklist.jar lib/velocity-1.6.4.jar lib/velocity-tools-2.0.jar lib/werken-xpath-0.9.4.jar lib/xmlbeans-2.4.0.jar lib/yuicompressor-2.3.6.jar

uni-k0rn-link icon uni-k0rn-link

Skip to content Nuclei-Software / NMSIS Public Code Issues Pull requests Actions Projects Wiki Security Insights NMSIS: just flush vector entry is enough, no need to invalidate Signed-off-by: Huaqi Fang <[email protected]> master @fanghuaqi fanghuaqi committed 21 days ago 1 parent 5abdaaf commit eb6e5b6c6fbfd7e73dd962495c893c3b5070527f Showing with 1 addition and 1 deletion. 2 NMSIS/Core/Include/core_feature_eclic.h @@ -712,7 +712,7 @@ __STATIC_FORCEINLINE void __ECLIC_SetVector(IRQn_Type IRQn, rv_csr_t vector) vec_base += ((unsigned long)IRQn) * sizeof(unsigned long); (* (unsigned long *) vec_base) = vector; #if (defined(__DCACHE_PRESENT) && (__DCACHE_PRESENT == 1)) MFlushInvalDCacheLine((unsigned long)vec_base); MFlushDCacheLine((unsigned long)vec_base); #endif } 0 comments on commit eb6e5b6 Leave a comment You’re receiving notifications because you’re watching this repository. © 2021 GitHub, Inc. Terms Privacy Security Status Docs Contact GitHub Pricing API Training Blog About

vscode-live-server icon vscode-live-server

Launch a development local Server with live reload feature for static & dynamic pages.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.