Master Snipers Trading Review 2015 - Is Master Sniper SCAM Or LEGIT? Best Binary Options Trading Software! The Truth About Master Snipers Trading System By Adam Weiss Review
Master Snipers Trading Review 2015 - Discover The Secrets about Master Sniper in this Master Snipers Trading review! So what is Master Snipers Trading Software all about? Does Master Sniper System really work? To discover answers to these concerns continue reading my in depth and truthful Master Snipers Trading Review below. Master Snipers Trading Description: Name: Master Snipers Trading Niche: Binary Options. What is Master Sniper Trading ? Master Sniper is a Unique trading software that will trade on the binary options markets with just 1 click! It's fully automated and places the winning trades for you! Official Website: Get Exclusive Access To The NEW Master Snipers Trading Software!! CLICK HERE NOW!!! What is Master Snipers Trading? Master Snipers Trading is essentially a binary options trading software application that is developed to help traders win and forecast the marketplace trends with binary options. The software application likewise offers evaluations of the market conditions so that traders can understand what should be your next step. It offers various secret strategies that eventually assists. traders without using any complicated trading indicators. Master Sniper System Binary Options Trading Technique Base the Master Snipers Trading trading technique. After you see it working, you can start your scale your trades. Every Forex binary options trader must select an account type that is in accordance with their needs and expectations. A bigger account does not imply a bigger earnings potential so it is a great concept to begin little and quickly add to your account as your returns increase based on the winning trading selections the software will predict. Binary Options Trading To assist you trade binary options properly, it is essential to have an understanding behind the fundamentals of Binary Options Trading. Currency Trading, or forex, is based on the viewed value of two currencies pairs to one another, and is influenced by the political stability of the country, inflation and interest rates among other things. Keep this in mind as you trade and learn more about binary options to optimize your learning experience. How easy is it to use the software? Very Easy! Once you sign up in the members area, the software is in front of you, click play and the software will do all the market research you. Just sit back and relax while enjoying your favorite beverage. Master Snipers Trading Summary In summary, there are some obvious concepts that have actually been tested over time, in addition to some newer methods. that you may not have actually considered. Hopefully, as long as you follow exactly what we recommend in this short Master Sniper review you can either get going with trading with Master Snipers Trading or enhance on exactly what you have actually already done. There Is Only A Very Limited Spaces Available So Act Now Before It's Too Late Click Here To Claim Your Master Snipers Trading System LIFETIME User License!! . . . . . . . . . . . . . . Tags: Master Snipers Trading app, Master Snipers Trading information, Master Snipers Trading url, Master Snipers Trading website, Master Snipers Trading youtube video, Master Snipers Trading trading software, get Master Snipers Trading, article about Master Snipers Trading, Master Snipers Trading computer program, Master Snipers Trading the truth, Master Snipers Trading support, Master Snipers Trading support email address, Master Snipers Trading help desk, similar than Master Snipers Trading, better than Master Snipers Trading, Master Snipers Trading contact, Master Snipers Trading demo, Master Snipers Trading video tutorial, how does Master Snipers Trading work, is Master Snipers Trading the best online is Master Snipers Trading a scam, does Master Snipers Trading really work, does Master Snipers Trading actually work, Master Snipers Trading members area, Master Snipers Trading login page, Master Snipers Trading verification, Master Snipers Trading software reviews, Master Snipers Trading no fake review, Master Snipers Trading Live Broadcast, is Master Snipers Trading real, Master Snipers Trading forex trading, Master Snipers Trading binary options trading, Master Snipers Trading automated app, the Master Snipers Trading review, Master Snipers signals, Master Snipers Trading mac os x, Master Snipers Trading broker sign up, Master Snipers Trading free download, reviews of Master Snipers Trading, Master Snipers Trading live results, Master Snipers Trading bonus, Master Snipers Trading honest review, Master Snipers Trading 2015, is Master Snipers Trading worth the risk, Master Snipers Trading pc desktop, Master Snipers Trading free trial,Master Snipers Trading testimonial, Master Snipers Trading scam watch dog, Master Snipers Trading warrior forum, Master Snipers Trading web version, Master Snipers Trading open a account, Master Snipers Trading laptop, Master Snipers Trading revised Method 2015, Master Snipers Unbiased review, is Master Snipers Trading all hype?, real people invested in Master Snipers Trading, is Master Snipers Trading a shame, Master Snipers Trading discount, Master Snipers Trading binary option watch dog review, Master Snipers youtube, seriously will Master Snipers Trading work, Master Snipers Trading facebook, Master Snipers Trading activation code, Master Snipers Trading 2015 Working, Master Snipers Trading twitter, Master Snipers Trading currency trading, Master Sniper Trading real person review, Master Snipers Trading example trade, will Master Snipers Trading work on mobile phone, Completely New Master Snipers Trading, Master Snipers Trading customer service, new Master Snipers Trading, Master Sniper Trading webinar, Master Snipers Trading webinar replay, Master Snipers Trading anybody using this, Master Snipers Trading real or fake, is Master Snipers Trading live trades real, Master Snipers Trading is this a scam, is Master Snipers Trading reliable?, Master Snipers Trading honest reviews, Master Snipers Trading is it a scam, Master Snipers Trading download software, Master Snipers Trading app review, Master Snipers Trading software download, Master Snipers Trading forum, Master Sniper Trading signals, Master Snipers Trading download page, Master Snipers Trading software demo somebody using it, Master Snipers Trading binary software, Master Snipers Trading binary options review, Master Snipers Trading members, Master Snipers Trading scam or legit,Master Snipers Trading comments, minumum deposit for Master Snipers, Master Snipers Trading reviews, Master Snipers Trading binary today, Master Snipers Trading pro review, Master Snipers Trading windows 7, Master Snipers Trading windows 8 and windows XP, Master Snipers Trading scam or real, Master Snipers Trading login, Master Snipers Trading has anybody out there made any money out of it?, Master Snipers Trading vip membership pass, does Master Snipers Trading work on autopilot?, Master Snipers Trading price, is Master Snipers Trading a scam or not, will Master Snipers Trading help me, real truth about Master Snipers Trading, Master Snipers Trading System, Master Snipers Trading inside members page, Master Snipers Trading software downloads, how to download Master Snipers Trading, how to access Master Snipers, Master Snipers Trading Robot, how to use Master Snipers Trading, Master Snipers Trading By Adam Weiss Review, Master Snipers Trading System Adam Weiss Reviews, how to trade with Master Snipers Trading, Master Snipers Trading NEWS Update and details, mastersnipertradingsystem.com, mastersnipertradingsystem.com/login members area, Master Snipers Trading sign in, the Master Snipers Trading trading options, Master Snipers Trading info, Master Snipers Trading information, Master Snipers Trading searching for new winning trades, Master Snipers Trading today, Master Snipers Trading feedback, Master Snipers Trading real user review, Master Snipers Trading customer reviews, Master Snipers Trading consumer review, mastersnipertrading.com, mastersnipertrading.com review, Master Snipers Trading Review 2015, insider john Master Snipers Trading review, george s Master Snipers Trading review, Master Snipers Trading doesn't work, is Master Snipers Trading another scam or legit, Master Snipers Trading refund, Activate Master Snipers Trading, review of Master Snipers Trading, log on to Master Snipers Trading, is Master Snipers Trading manual binary trading, Master Snipers Trading bot review, Master Snipers Trading test, Master Snipers Trading explanation, what brokers work with Master Snipers Trading software, what is Master Snipers Trading, Master Snipers Trading news, new version of Master Snipers Trading, Master Snipers Trading fan Page, Master Snipers Trading breaking news, Master Snipers Trading Register, Master Snipers Trading sign up, Master Snipers Trading broker sign up, Master Snipers Trading real proof, how to activate auto trading on Master Snipers Trading,Master Snipers Trading robot, Master Snipers Trading members area, Master Snipers Trading sign in, web version Master Snipers Trading, should i use Master Snipers Trading, Master Snipers Trading yes or no, do i need trading experience, Master Snipers Trading create account, Master Snipers Trading instructions, how to get a Master Snipers Trading demo, Master Snipers Trading special, desktop Master Snipers Trading, Master Snipers Trading Secret method, Join Master Snipers Trading, Master Snipers Trading ea trading app, Master Snipers Trading limited time, Master Snipers Trading pros and cons, Master Snipers Trading bad reviews, is Master Snipers Trading software automatic binary trading, Master Snipers Trading negative and positive review, Master Snipers Trading Author, Master Snipers Trading creator, who made Master Snipers Trading, what is the Master Snipers Trading, Master Snipers Trading real review, Master Snipers Trading broker, Master Snipers Trading sign up broker, Master Snipers Trading sign up broker review, Master Snipers Trading fund broker, Master Snipers Trading how to fund broker,Master Snipers Trading deposit funds into broker, how does Master Snipers Trading trade, Master Snipers Trading trading bot, what is Master Snipers Trading and cost?, Master Snipers Trading strategy, Master Snipers Trading password reset, Master Snipers Trading beta tester, Master Snipers Trading comparison, Master Snipers Trading questions and answers, rate & review Master Snipers Trading, rate and reviews Master Snipers Trading, is Master Snipers Trading site legit?, Master Snipers Trading reviews online, is Master Snipers Trading for real, Master Snipers Trading login page, Master Snipers Trading results, Master Snipers Trading winning and losing trades, Master Snipers Trading overview, Master Snipers Trading training, how to setup Master Snipers Trading, Master Snipers Trading home, real testimonial on Master Snipers Trading system, Master Snipers Trading real time trading, start trading with Master Snipers Trading, Master Snipers Trading proof, Master Snipers Trading the truth, Get Master Snipers Trading, Master Snipers Trading Review Click Here To Download Master Snipers Trading Software Right NOW!
Master Sniper Trading Review So Is Master Sniper A Scam Or Legit? Best Binary Options Trading Software! The Truth About Master Snipers Trading System By Adam Weiss Review
Hi How Are You? Master Sniper Trading Review: Find out the Secrets about Master Sniper Trading in this Master Sniper Trading review! To find answers to these questions continue reading my in depth and truthful Master Snipers Trading Review below. Master Sniper Trading Description: Name: Master Sniper Trading By Adam Weiss Niche: Binary Options. I've been testing this trading strategy since the beginning of the month and the results are great Master Sniper is the most reliable auto-trading software! Official Site: Access The NEW Master Snipers Trading System!! CLICK HERE NOW!!! Exactly what is Master Sniper Trading? Master Sniper Trading is basically a binary options trading software that is designed to help traders win and predict the market trends with binary options. The software also provides evaluations of the market conditions so that traders can know what should be your next step. It gives different secret strategies that ultimately helps. traders without using any complicated trading indications Master Sniper Trading Binary Options Trading Strategy Base the Master Sniper Trading trading method. After you see it working, you can start to the technique with routine sized lots. This strategy will certainly pay off with time. Every Forex binary options trader must choose an account type that is in accordance with their requirements and expectations. A larger account does not suggest a bigger revenue potential so it is an excellent idea to start small and quickly add to your account as your returns increase based on the trading choices you make. Binary Options Trading To help you trade binary options correctly, it is very important to have an understanding behind the fundamentals of Binary Options Trading. Currency Trading, or foreign exchange, is based on the perceived value of two currencies pairs to one another, and is influenced by the political stability of the country, inflation and interest rates among other things. Keep this in mind as you trade and discover more about binary options to maximize your learning experience. Master Sniper Trading Summary In summary, there are some obvious concepts that have been tested over time, along with some more recent techniques. that you might not have actually considered. Hopefully, as long as you follow exactly what we suggest in this short article you can either get started with trading with Master Sniper Trading or improve on exactly what you have already done. I highly recommend “Master Sniper Trading” to all my friends. Hurry Up! There Is Only A Very Limited Spots Available So Act Now Before It's Too Late Click Here To Secure Your Master Sniper Trading Software LIFETIME User License!!
Updated projectile VFX to better represent its hitbox, especially when it is traveling towards your POV
We’re keeping an eye on the overall power level of Paranoia, but as a first step wanted to resolve visual issues where players hit with Paranoia appear outside of its impact on their screen.
JETT
Blade Storm (Burst Fire)
The time between consecutive Burst Fire use has increased from 0.33 seconds >>> 0.45 seconds
Daggers thrown in Burst now have a damage falloff that begins at 12 meters and drops steadily (to 35 damage) at max falloff
Headshot multiplier on Burst Fire reduced from 3x >>> 2x
While we continue to investigate some of her outsized strengths, we think the burst fire on her Blade Storm has been over-performing at long ranges. The burst fire is intended to be a close range attack, but we found it frequently getting frags at over 20 meters away. These changes aim to rein in its effective range while retaining its close range potency.
VIPER
Fuel
Viper now starts the round at 100 fuel (previously 50)
Now that Viper can place her wall pre-round, we want her to be able to act with her team right at barrier drop without the tension of also trying to maximize her fuel for an initial move.
Snake Bite
Vulnerable debuff applied from Snake Bite now lingers for 2 seconds after leaving Viper’s acid
Immediately dropping the vulnerable debuff upon exit wasn’t creating the threat we’ve hoped for when we added it. This change should make the Viper (and team) advantage window more realistic, as well as project a unique threat on opponents playing around it.
Viper’s Pit
Move speed doubled while casting
Viper now fast equips her weapon after casting, re-equip times vary per gun—but on average will reduce her weapon down time by .4 seconds
The combination of a slow placement and re-equip time was resulting in Viper players getting too hurt or killed while casting ults in a situation we felt should be pretty safe. This change should increase the positional options available while casting, and get your weapon up sooner.
REYNA
Empress
Fire rate bonus decreased from 25% >>> 15%
At its previous fire rate, we felt Empress was too effective when using heavies/smgs, AND too fast to master the change in spray pattern on rifles. We hope this change allows us to address both issues at once, while also giving us a chance to have a unified fire rate increase (matching Brimstone’s stim below) that players can learn and master.
BRIMSTONE
Stim Beacon
Fire rate bonus increased from 10% >>> 15%
Paired with Reyna’s change (above), we felt Brimstone’s stim could use a little more punch. This also unifies our two fire rate increase buffs, making them easier to learn.
WEAPON UPDATES
Operator
Increased price from 4500 >>> 5000
Decreased scoped movement speed from 76% >>> 72%
Adjusted weapon deadzone from becoming inaccurate at 30% movement speed >>> 15% (become inaccurate sooner, become accurate later when stopping)
Firing rate reduced from .75 >>> .6
Instant equip time adjusted from 0.3 >>> 0.5 (instant equip plays after tapping orb, bomb defuse/plant tap, Jett Cloud Burst, and Phoenix Curveball)
Leg shot damage decreased from 127 >>> 120
All Weapons
Jump land inaccuracy state changed from gradual >>> binary
Jump land inaccuracy duration increased from .2 >>> .225
Jump land inaccuracy value increased from 5.0 >>> 7.0 (more inaccurate for .225s after a land)
COMPETITIVE UPDATES
During this patch, the chances of being in an hour+ queue should be notably reduced
This is already a very rare occurrence, but it can happen more often for high rank players—especially in premade groups. We are also doing some tuning behind the scenes to keep high rank matches found after long queue times reasonably balanced and fair.
SOCIAL UPDATES
Riot ID Reviews
Players that have been reported for inappropriate Riot IDs will now be reviewed automatically after the match has ended. If their name is flagged as inappropriate, they will be forced to change their Riot ID the next time they log in to the Riot Client.
Removed Multi-line Breaks in Chat
Some sneaky people were impersonating system messages to troll others into quitting a match. Enough!
Changes to party push to talk settings will now take effect immediately
The chat window can now be pinned to stay open across menus
Social Panel Sorting Logic
Sorting algorithm for the social panel has been updated to make it more intuitive for players as they interact with it.
BUG FIXES
Fixed issue where Sova’s hitbox was incorrect while using his Owl Drone
Fixed bug where Omen’s glowing eyes weren’t properly removed when he cancelled his ult
Fixed a bug where Custom Game preferences would be wiped after navigating away from the Custom Game lobby
I'm reading every Hugo, Nebula, Locus, and World Fantasy Award winner. Here's my reviews of the up to 1980 (Vol 4)
It is that time once more, folks. Links to previous posts at the end, links to full length blog reviews are all in one comment. Man Plus by Frederik Pohl
Plot: A normal human could not survive on Mars... our only option? Cyborgs!
Page Count: 183
Award: 1976 Nebula
Worth a read: No... but consider it for a laugh.
Primary Driver: (?????????)
Bechdel Test: Pass... but a real weak pass.
Technobabble: Frequent.
Review: Imagine if you took subplots from a trashy romance, a political thriller, a horror flick, and a space travel story... and forgot to put in the main plot. Starts decently, spirals wildly out of control with astounding speed. Almost worth reading to experience the hilarious concluding deus ex machina. This one is probably in the "so bad it's good category" - but sweet skittles is it bad. Also, turn on safe search if you look this book up.
Where Late the Sweet Birds Sang by Kate Wilhelm
Plot: After a pandemic causes infertility (and every other apocalypse hits), the only way for humans to survive is through cloning. But are they really human?
Page Count: 251
Award: 1977 Hugo and 1977 Locus
Worth a read: No
Primary Driver: (Plot, World, or Character)
Bechdel Test: Pass
Technobabble: Moderate.
Review: Disappointing and disjointed. There are a lot of messages here that just get blended together to nothingness. Cumbersome writing, uncompelling characters, bland dystopia, and just a dull story. Odd choices on where to discuss science at length and where to just skip over it. First third was its own story originally, and is the best part.
Doctor Rat by William Kotzwinkle
Plot: There is no joy like dying to advance science, at least according to Doctor Rat.
Page Count: 243
Award: 1977 World Fantasy Award
Worth a read: No... but worth a glance at a chapter or two.
Primary Driver: (Plot, World, or Character)
Bechdel Test: N/A
Technobabble: Frequent descriptions of animal experiments.
Review: This book is truly horrifying to read. It's about the gruesome nature of animal testing - and cruelty to animals in general - and is chock full of graphic animal gore. It's the child of The Jungle and Animal Farm but without subtext. Consider checking it out to read a couple of chapters - the grotesque fascination wears thin. Some might consider the unambiguous use of Nazi imagery for animal testing to be a step or three too far.
Gateway by Frederik Pohl
Plot: The Heechee left behind technology so advanced that we cannot understand it; that doesn't stop us from using it to get rich or die trying.
Page Count: 313
Award: 1977 Nebula, 1978 Hugo, and 1978 Locus SF
Worth a read: Yes. Very yes.
Primary Driver: (Plot, World, or Character)
Bechdel Test: Pass
Technobabble: Low-Moderate.
Review: Really good. Cleverly bounces between the story as it unfolds and therapy sessions afterwards - we know that our hero survives, but something terrible has happened. A bit too Freudian. Still, excellent job of making a complex protagonist, interesting world, compelling story. Wanting to know what went wrong kept me reading - and it pays off.
The Silmarillion by J. R. R. Tolkien
Plot: Turns out Middle Earth had other jewelry too.
Page Count: 386
Award: 1978 Locus Fantasy Award
Worth a read: Yes.
Primary Driver: (Plot, World, or Character)
Bechdel Test: Pass
Technobabble: N/A.
Review: This is epic fantasy in its purest form; it is myth and legend, at times obtuse, but absolutely riveting. Tolkien's world is fully immersive. Had the physical book to follow the story, the audiobook for pronunciation, and laptop for family trees. Absolutely worth it - even as a casual LoTR fan.
Our Lady of Darkness by Fritz Leiber
Plot: Something sinister is haunting Franz Westen, and dealing with it involves unearthing answers that might be best left buried.
Page Count: 183
Award: World Fantasy Award 1978
Worth a read: Yes
Primary Driver: (Plot, World, or Character)
Bechdel Test: Pass
Technobabble: Moderate.
Review: This is a horror story. Atmosphere is excellent. Book begins with some truly unsettling images and world building. The narrative itself is slow and frequently self-indulgent, but atmosphere stays on point. A qualified recommendation; but some scenes from this will stick with me for quite a while.
Dreamsnake by Vonda N. McIntyre
Plot: Long after the end of the world as we know it, Snake wanders the world, healing those she meets to the best of her abilities.
Page Count: 288
Award: 1978 Nebula, 1979 Hugo, and 1979 Locus
Worth a read: Yes
Primary Driver: (Plot, World, or Character)
Bechdel Test: Pass
Technobabble: Minimal to moderate.
Review: Less-is-more world building with good execution. A lot of interesting tidbits to keep you wondering what the rules are, who the people are, and so on. Story itself can be slow and stakes are consistently low. "I'm going to a place, surprise! something comes up, I will go to another place along the way." Characters are well written though not particularly complex.
Gloriana, or The Unfulfill'd Queen by Michael Moorcock
Plot: In an alternate timeline, Queen Elizabeth I rules over the vast empire of Albion and must do her best to manage a corrupt and twisted court.
Page Count: 368
Award: 1979 World Fantasy Award
Worth a read: Absolutely No.
Primary Driver: (Plot, World, or Character)
Bechdel Test: Pass
Technobabble: None.
Review: This book is remarkable in that it combines shockingly dull and lengthy exposition with some truly awful and problematic ideas about sex. A whole lot of parallel world court intrigue that just does not matter at all. The actual plot starts developing halfway or later into the book - and is not interesting. The title addressing Gloriana's inability to orgasm is a big ol' red flag. A deeply unpleasant read. Really awful.
The Fountains of Paradise by Arthur C. Clarke
Plot: Humans have built many marvels, but nothing can compete with a space elevator.
Page Count: 317
Award: 1980 Hugo and 1979 Nebula
Worth a read: Yes
Primary Driver: (Plot, World, or Character)
Bechdel Test: Fail
Technobabble: High.
Review: Overall enjoyable. Main narrative is about the space elevator, secondary is about an equally ambitious ancient building project - woven together in interesting ways. The science and vision offered are interesting, though characters are not and tension is infrequent. Marred somewhat by some truly bizarre (and underdeveloped) side plots and unnecessary epilogue.
The Riddle-Master Trilogy by Patricia A. McKillip
Plot: All the wizards left behind were riddles, and the only one who might be able to solve them is the biggest riddle of all.
Page Count: 578 (Full Trilogy)
Award:Harpist in the Wind (Book 3): 1980 Locus Fantasy
Worth a read: Yes
Primary Driver: (Plot, World, or Character)
Bechdel Test: Pass
Technobabble: Fantasy Babble: Minimal.
Review: It's an epic fantasy trilogy. It's a good one. Kinda loved it. Heroes and villains are complex, magic is interesting and coherent. Excellent characters. Cool development of powers, though it is far more power sprint than power crawl. Pacing can be odd; a few long pauses followed by frenetic scenes. Very well written. A satisfying read.
Watchtower by Elizabeth A. Lynn
Plot: The Southerners picked the wrong keep to invade; Ryke will do everything he can to get it back.
Page Count: 240
Award: World Fantasy Award 1980
Worth a read: No
Primary Driver: (Plot, World, or Character)
Bechdel Test: Pass
Technobabble: Fantasy Babble: Minimal.
Review: The sweet, sweet taste of subpar writing. World building: "You people from the hot South are not used to how cold it is here up North!" Character Development: "You mean... I don't just need to indiscriminately murder people?!" and "You mean... women can fight too?!" Writing Quality (Verbatim): "He thought it might have ben a room in Tornor. The room was hot. He went to the window to open the shutters. They stuck. He had to force the latch. At last one opened."
Titan by John Varley
Plot: The intrepid crew of the Ringmaster crash in alien territory and must figure out how to survive.
Page Count: 309
Award: 1980 Locus SF
Worth a read: No
Primary Driver: (Plot, World, or Character)
Bechdel Test: Pass
Technobabble: Minimal to moderate.
Review: It is hard to find such a dumb book that takes itself so seriously. Some legitimately interesting exploration bits not enough to redeem this one. Extremely juvenile. Raises interesting questions and offers insultingly insipid answers. There are elements that are quite good - particularly some crisp dialogue - but it's just not worth it.
Any questions or comments? Fire away! A truly massive thank you to u/gremdelfor mailing me a bunch of books! People like you are what make this endeavor worth the effort. I’ve been using this spreadsheet, as well as a couple others that kind Redditors have sent. So a huge thanks to u/velzerat and u/BaltSHOWPLACE At the request of a number of you, I’ve written up extended reviews of everything and made a blog for them. I’ve included the links with the posts for individual books. I try to put up new reviews as fast as I read them. Take a look in the comments for that link! The Bechdel Test is a simple question: do two named female characters converse about something other than a man. Whether or not a book passes is not a condemnation so much as an observation; it provides an easy binary marker. Seems like a good way to see how writing has evolved over the years. At the suggestion of some folks, I’m loosening it to non-male identified characters to better capture some of the ways that science fiction tackles sex and gender. For a better explanation of why it’s useful, check out this comment from u/Gemmabeta
The first official release of the ZOIA Librarian app is now available!
Version 1.0 is now out for Windows 10, Mac OS X, and Linux (Ubuntu)! It can be downloaded here https://github.com/meanmedianmoge/zoia_lib - see the "How to Install" section. EDIT: Mac 1.0 release has been updated (see the link above to download the zip), and it should open successfully upon double-clicking the .app file! Apologies for any inconvenience. If you have a GitHub account, feel free to create an issue regarding any performance issues you encounter. If you don't have a GitHub account, send feedback and bugs to me at [[email protected]](mailto:[email protected]). Overview and tutorial video: https://www.youtube.com/watch?v=JLOUrWtG1Pk User Manual: https://github.com/meanmedianmoge/zoia_lib/blob/mastedocumentation/User%20Manuals/ZOIA%20Librarian%20-%20User%20Manual%20-%20Version%201.0.pdf Changelog is below. Special thanks to our beta testers, contributors, and supporters for the interest in this application! Patch NotesVersion 1.0 (September 25, 2020) New Features - Finalized ZOIA binary parsing implementation. Again, massive thanks to djigneo/apparent1 for the initial C# code. As of this release, all features of the patch are fully exposed and can be decoded into a JSON object for further use. - Patch visualizer has been updated with more information to help you understand patches at a quick-glance. - Added the ability to search and sort for patches by author name. This applies to Local and Bank tabs only. PS tab author search and sort will not be supported at this time due to the API structure. - Updated patch importing so that patches with near-identical names are merged upon import (instead of strictly identical names). - Updated the behavior of the SD and Bank tables so that multiples can be selected and moved in different ways: Hold Shift and click the start and end patches to move and/or Hold Ctrl/Cmd and click on each patch you'd like to move. - Patches can now be moved into a bank in the following ways: Dragging single or multiple selections (similar options as above) at once and/or Clicking the Add to Bank button for single selections at a time. - Added a Clear Bank button to wipe the bank tables clean. - Added a new Help toolbar which allows users to access documentation and useful ZOIA resources. These will display in the PS tab browser panel. You can also search for different commands/shortcuts. - Added a Reset UI menu option in the event that users mangle the UI panels or tables. - Updated the light theme colors to give it a more muted look. - Alternating row colors is now a saved preference. It will save whatever is the current setting upon closing the application. - Added a step-by-step guide for how to compile the application from source for developers, contributors or users who were unable to open the beta builds. - Added our first Linux build! We aim to support the latest stable version of Ubuntu going forward. If you are a Linux user who prefers other distributions, please contact me. Fixes - Fixed an issue that occurred while importing a version history (Mac). - Removed the threads used with menu action multi-import functions (Mac temporary fix). - Fixed an issue where the dates of imported patches were back-dated to the history of the SD card. - Fixed an issue with SD card imported files having mangled filenames (Windows). This also caused patches to not export properly. - Fixed an issue where changing the font/font size didn't apply to themes or buttons. Known Issues - Certain patch binaries cannot be fully decoded due to being saved on deprecated ZOIA firmware. - Saved UI preferences are not being applied correctly for the Local Storage tab - specifically the vertical splitter (Mac). Future Plans - Expansion view of routing for patch visualizer. Right now, the connections are displayed on a module-block level, but not from a general patch level. The expander would provide an in-depth visualization of audio and CV routing, likely to be displayed in a new tab. - Extend the binary decoder methods into an API for other applications/programs to utilize. - Simplify and automate code structure for releases (currently, a minimal-working version of the code needs to be created for the app-building process). - Allow for custom themes/colors in the UI. - Actually fix threading issues associated with menu action multi-imports. As always, we welcome any feedback you may have. Thanks for being awesome :) - Mike M.
https://github.com/gridcoin-community/Gridcoin-Research/releases/tag/5.0.0.0 Finally! After over ten months of development and testing, "Fern" has arrived! This is a whopper. 240 pull requests merged. Essentially a complete rewrite that was started with the scraper (the "neural net" rewrite) in "Denise" has now been completed. Practically the ENTIRE Gridcoin specific codebase resting on top of the vanilla Bitcoin/Peercoin/Blackcoin vanilla PoS code has been rewritten. This removes the team requirement at last (see below), although there are many other important improvements besides that. Fern was a monumental undertaking. We had to encode all of the old rules active for the v10 block protocol in new code and ensure that the new code was 100% compatible. This had to be done in such a way as to clear out all of the old spaghetti and ring-fence it with tightly controlled class implementations. We then wrote an entirely new, simplified ruleset for research rewards and reengineered contracts (which includes beacon management, polls, and voting) using properly classed code. The fundamentals of Gridcoin with this release are now on a very sound and maintainable footing, and the developers believe the codebase as updated here will serve as the fundamental basis for Gridcoin's future roadmap. We have been testing this for MONTHS on testnet in various stages. The v10 (legacy) compatibility code has been running on testnet continuously as it was developed to ensure compatibility with existing nodes. During the last few months, we have done two private testnet forks and then the full public testnet testing for v11 code (the new protocol which is what Fern implements). The developers have also been running non-staking "sentinel" nodes on mainnet with this code to verify that the consensus rules are problem-free for the legacy compatibility code on the broader mainnet. We believe this amount of testing is going to result in a smooth rollout. Given the amount of changes in Fern, I am presenting TWO changelogs below. One is high level, which summarizes the most significant changes in the protocol. The second changelog is the detailed one in the usual format, and gives you an inkling of the size of this release.
Highlights
Protocol
Note that the protocol changes will not become active until we cross the hard-fork transition height to v11, which has been set at 2053000. Given current average block spacing, this should happen around October 4, about one month from now. Note that to get all of the beacons in the network on the new protocol, we are requiring ALL beacons to be validated. A two week (14 day) grace period is provided by the code, starting at the time of the transition height, for people currently holding a beacon to validate the beacon and prevent it from expiring. That means that EVERY CRUNCHER must advertise and validate their beacon AFTER the v11 transition (around Oct 4th) and BEFORE October 18th (or more precisely, 14 days from the actual date of the v11 transition). If you do not advertise and validate your beacon by this time, your beacon will expire and you will stop earning research rewards until you advertise and validate a new beacon. This process has been made much easier by a brand new beacon "wizard" that helps manage beacon advertisements and renewals. Once a beacon has been validated and is a v11 protocol beacon, the normal 180 day expiration rules apply. Note, however, that the 180 day expiration on research rewards has been removed with the Fern update. This means that while your beacon might expire after 180 days, your earned research rewards will be retained and can be claimed by advertising a beacon with the same CPID and going through the validation process again. In other words, you do not lose any earned research rewards if you do not stake a block within 180 days and keep your beacon up-to-date. The transition height is also when the team requirement will be relaxed for the network.
GUI
Besides the beacon wizard, there are a number of improvements to the GUI, including new UI transaction types (and icons) for staking the superblock, sidestake sends, beacon advertisement, voting, poll creation, and transactions with a message. The main screen has been revamped with a better summary section, and better status icons. Several changes under the hood have improved GUI performance. And finally, the diagnostics have been revamped.
Blockchain
The wallet sync speed has been DRASTICALLY improved. A decent machine with a good network connection should be able to sync the entire mainnet blockchain in less than 4 hours. A fast machine with a really fast network connection and a good SSD can do it in about 2.5 hours. One of our goals was to reduce or eliminate the reliance on snapshots for mainnet, and I think we have accomplished that goal with the new sync speed. We have also streamlined the in-memory structures for the blockchain which shaves some memory use. There are so many goodies here it is hard to summarize them all. I would like to thank all of the contributors to this release, but especially thank @cyrossignol, whose incredible contributions formed the backbone of this release. I would also like to pay special thanks to @barton2526, @caraka, and @Quezacoatl1, who tirelessly helped during the testing and polishing phase on testnet with testing and repeated builds for all architectures. The developers are proud to present this release to the community and we believe this represents the starting point for a true renaissance for Gridcoin!
Summary Changelog
Accrual
Changed
Most significantly, nodes calculate research rewards directly from the magnitudes in EACH superblock between stakes instead of using a two- or three- point average based on a CPID's current magnitude and the magnitude for the CPID when it last staked. For those long-timers in the community, this has been referred to as "Superblock Windows," and was first done in proof-of-concept form by @denravonska.
Network magnitude unit pinned to a static value of 0.25
Max research reward allowed per block raised to 16384 GRC (from 12750 GRC)
New CPIDs begin accruing research rewards from the first superblock that contains the CPID instead of from the time of the beacon advertisement
Removed
500 GRC research reward limit for a CPID's first stake
6-month expiration for unclaimed rewards
10-block spacing requirement between research reward claims
Rolling 5-day payment-per-day limit
Legacy tolerances for floating-point error and time drift
The need to include a valid copy of a CPID's magnitude in a claim
10-block emission adjustment interval for the magnitude unit
Beacons
Added
One-time beacon activation requires that participants temporarily change their usernames to a verification code at one whitelisted BOINC project
Verification codes of pending beacons expire after 3 days
Self-service beacon removal
Changed
Burn fee for beacon advertisement increased from 0.00001 GRC to 0.5 GRC
Rain addresses derived from beacon keys instead of a default wallet address
Beacon expiration determined as of the current block instead of the previous block
Removed
The ability for developers to remove beacons
The ability to sign research reward claims with non-current but unexpired beacons
Unaltered
As a reminder:
Beacons expire after 6 months pass (180 days)
Beacons can be renewed after 5 months pass (150 days)
Renewed beacons must be signed with the same key as the original beacon
Superblocks
Added
Magnitudes less than 1 include two fractional places
Magnitudes greater than or equal to 1 but less than 10 include one fractional place
Changed
A valid superblock must match a scraper convergence
Removed
Superblock popularity election mechanics
Voting
Added
Yes/no/abstain and single-choice response types (no user-facing support yet)
Changed
To create a poll, a maximum of 250 UTXOs for a single address must add up to 100000 GRC. These are selected from the largest downwards.
Burn fee for creating polls scaled by the number of UTXOs claimed
50 GRC for a poll contract
0.001 GRC per claimed UTXO
Burn fee for casting votes scaled by the number of UTXOs claimed
0.01 GRC for a vote contract
0.01 GRC to claim magnitude
0.01 GRC per claimed address
0.001 GRC per claimed UTXO
Maximum length of a poll title: 80 characters
Maximum length of a poll question: 100 characters
Maximum length of a poll discussion website URL: 100 characters
Maximum number of poll choices: 20
Maximum length of a poll choice label: 100 characters
Removed
Magnitude, CPID count, and participant count poll weight types
The ability for developers to remove polls and votes
Detailed Changelog
[5.0.0.0] 2020-09-03, mandatory, "Fern"
Added
Backport newer uint256 types from Bitcoin #1570 (@cyrossignol)
Implement project level rain for rainbymagnitude #1580 (@jamescowens)
Upgrade utilities (Update checker and snapshot downloadeapplication) #1576 (@iFoggz)
Provide fees collected in the block by the miner #1601 (@iFoggz)
Add support for generating legacy superblocks from scraper stats #1603 (@cyrossignol)
Port of the Bitcoin Logger to Gridcoin #1600 (@jamescowens)
Implement zapwallettxes #1605 (@jamescowens)
Implements a global event filter to suppress help question mark #1609 (@jamescowens)
Add next target difficulty to RPC output #1615 (@cyrossignol)
Add caching for block hashes to CBlock #1624 (@cyrossignol)
Make toolbars and tray icon red for testnet #1637 (@jamescowens)
Add an rpc call convergencereport #1643 (@jamescowens)
Implement newline filter on config file read in #1645 (@jamescowens)
Implement beacon status icon/button #1646 (@jamescowens)
Add gridcointestnet.png #1649 (@caraka)
Add precision to support magnitudes less than 1 #1651 (@cyrossignol)
Replace research accrual calculations with superblock snapshots #1657 (@cyrossignol)
Publish example gridcoinresearch.conf as a md document to the doc directory #1662 (@jamescowens)
Add options checkbox to disable transaction notifications #1666 (@jamescowens)
Add support for self-service beacon deletion #1695 (@cyrossignol)
Add support for type-specific contract fee amounts #1698 (@cyrossignol)
Add verifiedbeaconreport and pendingbeaconreport #1696 (@jamescowens)
Add preliminary testing option for block v11 height on testnet #1706 (@cyrossignol)
Add verified beacons manifest part to superblock validator #1711 (@cyrossignol)
Implement beacon, vote, and superblock display categories/icons in UI transaction model #1717 (@jamescowens)
Krieg Digistruct Peak Guide (OP 10, No Grog, Norfleet, Harold, Bee, etc. required)
Hello there, I hope you are all doing well today! I am here to present a Krieg guide for taking down Digistruct peak (through OP 10) that requires no Norfleet, Sham, Grog, Bee-Hawk, DPUH, and so on. Important to note that I used this build on the Unofficial Community Patch but the advice, gear, and build translate seamlessly to the vanilla game for Krieg. Gameplay + Commentary for those of you uninterested in reading: https://www.youtube.com/watch?v=w70qsmcuqik Note: As a quick note, I do understand that this build isn't exactly "groundbreaking" for Krieg and there are multiple videos of people speedrunning the Peak with this build or at least a similar one. The intent isn't to showcase some new original build but rather to explain it. I've seen people run through with a similar build but I have yet to see any commentary or explanation of their gear, skill build, playstyle, etc. so I thought this might be helpful! Section 1: Build Green/Bloodlust Tree:
Blood Filled Guns (5/5): 2.5% Mag size per stack of our bloodlust is really nice. There are very easy ways to stack bloodlust (which I will cover) and a 250% magazine size increase at 100 stacks is substantial. This allows us to fire our guns pretty much endlessly, dramatically increasing the DPS of Krieg.
Blood Twitch (5/5): 1.5% weapon swap speed per stack of bloodlust = 150% weapon swap speed at max. Those of you that have read my guides before know that I am a bit of a sucker for weapon swap speed. It dramatically increases your DPS guys! This means you can instantly swap away from your slag weapon and go back to DPSing. Also, you may need to swap to a Moxxi weapon or a launcher in a tight situation and the speed will save you.
Blood Bath (5/5): This skill is honestly just stupid how strong it is. This is an absolute must-have on any Krieg build. 2.5% weapon damage per stack after we get a kill with a grenade or explosion and also gives a 75% chance of dropping a grenade. 250% weapon damage at max stacks and it is doubled to 500% weapon damage with the COM we will be using (Leg. Reaper). Absolutely insane damage and we can spam grenades rather liberally. Easy for Krieg to activate this skill as well because many of his best weapons are grenade/explosive weapons.
Boiling Blood (5/5): Increases the time before bloodlust starts to decay by 2.5 seconds. Having high bloodlust stacks is a massive increase to our DPS. The longer we have high stacks the better.
Nervous Blood (5/5): Kill skill that gives us 1.5% reload speed per stack. 150% reload speed at max bloodlust is phenomenal. Another massive increase to our DPS. Take it!
Bloodsplosion (1/1): Everybody knows of bloodsplosion and its shenanigans. We aren't really reliant on the bloodsplosion overkill damage chains but there isn't really a good reason to skip it. There will be multiple instances where the nova damage deals significant damage to nearby enemies or flat out kills them. Worth the point!
Blue/Mania Tree:
Feed the Meat (5/5): 50% max health is pretty substantial for a character that relies on face-tanking enemies. The shield delay isn't super important since we will primarily use the Rough Rider. Helpful for scenarios where we use the Easy Mode shield.
Embrace the Pain (5/5): Really nice skill that gives substantial fire rate and shield recharge delay. In this case, we really just want it for the fire rate DPS boost.
Thrill of the Kill (1/5): Our com boosts this skill to 6 but even if it didn't a value point is worth it for this skill. With 1 point (no boost from com) we get 50% of our health back from overkill damage... something Krieg excels at. Dramatic survivability increase, no reason to skip this.
Strip the Flesh (5/5): 15% flat explosive damage and boosted to 30% in FFYL. This is great for Krieg, we will be using explosive weapons plenty. That extra 15% boost is no joke in FFYL and will likely save you more than once.
Redeem the Soul (1/1): Pretty cool co-op skill that allows you to instantly revive teammates. However, the 50% FFYL time increase is what we really care about. It's really significant and basically guarantees you will get up.
Red/Hellborn Tree:
Fuel the Fire (5/5): Kill skill. 35% chance to set yourself from a fire attack is cool and all but really the 200% elemental effect chance is what we are after. Makes it very easy to apply slag, DoTs, and the more DoT and elemental effects we have going the higher likelihood of catching ourselves on fire (which means more damage and survivability).
Numbed Nerves (5/5): 50% damage reduction (+ Rough Rider's 20%) while you are on fire is massive. Fuel the Fire and our gear choices will make it very easy to set ourselves on fire so it is certainly worth the point.
Pain is Power (5/5): Flat 25% Weapon and Melee damage buff (except snipers, doesn't matter though) that gets doubled when we are on fire. It does lower our crit damage by 25% but that really doesn't matter. We don't need crits anyway, we blow stuff up. Huge DPS increase and is absolutely worth it.
Elemental Elation (5/5): When we are dealing elemental status effects to enemies (fuel the fire makes this easy), we gain stacks (up to 20) that increase our fire rate by 3% and mag size by 5%. It is very easy to apply elemental effects and we will often be at max stacks with this skill. Dramatically increases our DPS.
Delusional Damage (1/1): All elemental status effects can catch us on fire with this skill and the chance is determined by our Fuel the Fire skill (and Burn, Baby, Burn). This is fantastic! We don't have to rely on fire weapons (which do not work properly in the peak) to get the awesome benefits from our hellborn tree.
Fire Fiend (5/5): 50% Weapon accuracy and 35% reload speed when we are on fire. Another great boost to our DPS and that accuracy actually helps more than you would think. You can level Flame Flare instead of this skill if you prefer (or whatever) but I don't have any issues staying on fire. Therefore, Flame Flare is a bit redundant.
Elemental Empathy (5/5): Burn status effects heal you for 25% of the damage dealt. Honestly, we won't be using a ton of fire weapons but the capstone of this tree naturally produces fire DoTs for us. Raving Retribution plus this skill gives you some nice sustain. Can skip if you feel that the survivability doesn't help.
Raving Retribution (1/1): When Krieg is on fire and damaged homing fireballs will seek out the enemies and explode on them. It deals pretty solid damage and gives us nice sustain with Elemental Empathy.
Weapon 1 (slag): Slagga is one of the premier slagging options on any character. Krieg is no exception here! Florentine is not too bad on Krieg either because of his very high elemental chances but I prefer the Slagga. Whatever works best for you though.
Weapon 2 (DPS): We have multiple options here but the highest DPS option is easily the Peak Opener. If you don't want to farm for one, the alternatives I would consider are as follows: Kerblaster, Ogre, DPUH, Swordsplosion/Unicornsplosion, Carnage, Hail, Kitten, and many more of course. Every single weapon here can proc blood bath very consistently (except the Kitten) and we really need a weapon that can do that. Blood Bath is the bread and butter of this build and having a weapon like the Peak Opener, that can not only proc blood bath but it also takes significant advantage of the skill. You can pretty much run through the entire peak with this thing in your hand.
Weapon 3 (SurveyoLoader Weapon): I pretty much just leave the conference call in my inventory the entire time in this slot. It can deal with loaders, shreds Saturn, helps with Surveyors, and is just a generally strong weapon. You could roll a corrosive Pimpernel (still good despite Pain is Power), Butcher, or Interfacer here as well. This slot just gives us some extra versatility and high DPS for loaders and surveyors.
Weapon 4 (Utility/FFYL): This is the slot that you could tinker with the most. I typically hold onto the Hive, Flakker, Badaboom, or any other strong launcher for this slot. Launchers, in general, are amazing with Strip the Flesh and all the reload speed, mag size, fire rate, etc. that Krieg receives. I like the Hive because it can proc all our elemental skills, deal significant damage, and is also amazing for Surveyors. Pop a shot or two into the air and it will do the rest. The Flakker can be weapon swapped rapidly back and forth while firing (hard to explain but demonstrated on Dukino's mom and OMGWTH) to deal massive DPS. I use it to deal with Dukino's mom and the Binary Boss. Not necessary but very powerful and pretty funny.
Shield: Rough Rider and the Easy Mode. We will pretty much always stick with the RR because of Krieg's benefits of not having a shield plus the awesome tankiness it gives us. Krieg can stack a ton of health and DR with this shield active. The Easy Mode is not at all necessary but helps speed up kills of certain mini-bosses. I really only use it for Scorch and the Queens. You'll notice I used it on Saturn but it did nothing, RR would have been better.
Class Mod: Legendary Reaper. Extra kill skill duration and a +5 to Blood Bath. That is literally all we care about. Gives us more uptime and more damage from Blood Bath. It is insane how much this COM will boost your DPS. This is the only piece of gear that I would say is absolutely required.
Grenade: For this build, we will be using the Pandemic. This is debatably the best bloodlust stacking grenade in the game and that's really all we need. It is also deals a ton of DoT which procs our hellborn skill tree. Perfect! Alternatively, the Storm Front/Electric Chair, a low-level Crossfire/Bouncing Bonny, the Leech, are all good stacking options as well. Whatever you feel is best suited to your playstyle.
Relic: Blood of the Ancients. Specifically, we want the one that boosts Assualt Rifle and Shotgun max ammo. The Peak Opener and Conference call absolutely churn through ammo so it is a needed addition. If you can't get one that has both prioritize ones that give you AR ammo because we will be using that the most. The max health from the relic is of course welcome as well.
Section 3: General Tips
Generally, I advise caution and calculated approaches to the Peak. You still want to think about how you will approach certain mini-bosses but you can't really be cautious with Krieg. Embrace the chaos and get in the fray. As soon as you have Blood Bath going you're going to churn through everything. Activate it with your weapon of choice and then go to town. This is super important for mini-bosses!! For example, If you get the Dukino's Mom spawn where the midgets spawn with her, use this to your advantage. Kill the midgets with the peak opener to proc BB and then switch to the Flakker, Harold, Conference Call, whatever. The same thing applies to Saturn! Kill his turrets with grenade/explosive damage and then pull out the Conference Call, Butcher, Interfacer, etc. This will seriously make the run a lot easier. Another tip, you can proc BB on the Binary Boss by blowing up his head first. Prioritize this and then let BB do the work.
Prioritize corrosive weapons (when not using explosive). For some reason, in the Peak flesh enemies do not actually take bonus damage from fire. They are considered "non-flesh" and take neutral damage. This means that fire is not totally useless but no longer retains a distinct advantage to flesh enemies. However, corrosive is not resisted by anything (other than some weird interactions with spider ants, use shock for them) and still deals bonus damage to loaders. Corrosive DoT also tends to do more and stick longer on enemies. Making it the more versatile choice for the peak. Link to the thread explaining this more in-depth: https://forums.gearboxsoftware.com/t/digistruct-peak-enemy-typing-issue-and-why-your-fire-guns-suck-there/1119745
Thanks for checking the post out! Please let me know if you have any questions. I will link the UCP changelog below if anyone is interested in the differences.
Ethereum on ARM. New Eth2.0 Raspberry Pi 4 image for joining the Medalla multi-client testnet. Step-by-step guide for installing and activating a validator (Prysm, Teku, Lighthouse and Nimbus clients included)
TL;DR: Flash your Raspberry Pi 4, plug in an ethernet cable, connect the SSD disk and power up the device to join the Eth2.0 medalla testnet. The image takes care of all the necessary steps to join the Eth2.0 Medalla multi-client testnet [1], from setting up the environment and formatting the SSD disk to installing, managing and running the Eth1.0 and Eth2.0 clients. You will only need to choose an Eth2.0 client, start the beacon chain service and activate / run the validator. Note: this is an update for our previous Raspberry Pi 4 Eth2 image [2] so some of the instructions are directly taken from there.
MAIN FEATURES
Based on Ubuntu 20.04 64bit.
Automatic USB disk partitioning and formatting
Adds swap memory (ZRAM kernel module + a swap file)
Changes the hostname to something like “ethnode-e2a3e6fe” based on MAC hash
Automatically syncs Eth1 Goerli testnet (Geth)
Includes an APT repository for installing and upgrading Ethereum software
Includes 4 Eth2.0 clients
Includes EF eth2.0-deposit-cli tool
Includes 5 monitoring dashboards based on Grafana / Prometheus
SOFTWARE INCLUDED
Geth: 1.9.20 [3] (official binary) configured for syncing Goerli Testnets
Eth2.0-deposit-cli: 0.2.1 (bundled) [4]
Prysm: 1.0.0alpha24 [5]
Beacon Chain (official binary)
Validator binary (official binary)
Teku: 0.12.4alpha+20200821 (compiled) [6]
Lighthouse 0.2.8 (official binary) [7]
Nimbus 0.5.0 (compiled) [8]
Grafana 7.0.4 (official package) [9]
INSTALLATION GUIDE AND USAGE
RECOMMENDED HARDWARE AND SETUP
Raspberry 4 (model B) - 4GB or 8GB (8 GB RAM highly recommended)
MicroSD Card (16 GB Class 10 minimum)
SSD USB 3.0 disk (see storage section)
Power supply
Ethernet cable
Port forwarding
A case with heatsink and fan (Optional but strongly recommended)
USB keyboard, Monitor and HDMI cable (micro-HDMI) (Optional)
STORAGE You will need an SSD to run the Ethereum clients (without an SSD drive there’s absolutely no chance of syncing the Ethereum blockchain). There are 2 options: Use an USB portable SSD disk such as the Samsung T5 Portable SSD. Use an USB 3.0 External Hard Drive Case with a SSD Disk. In our case we used a Inateck 2.5 Hard Drive Enclosure FE2011. Make sure to buy a case with an UASP compliant chip, particularly, one of these: JMicron (JMS567 or JMS578) or ASMedia (ASM1153E). In both cases, avoid getting low quality SSD disks as it is a key component of your node and it can drastically affect the performance (and sync times). Keep in mind that you need to plug the disk to an USB 3.0 port (in blue). IMAGE DOWNLOAD AND INSTALLATION 1.- Download the image: http://www.ethraspbian.com/downloads/ubuntu-20.04.1-preinstalled-server-arm64+raspi-eth2-medalla.img.zip SHA256 149cb9b020d1c49fcf75c00449c74c6f38364df1700534b5e87f970080597d87 2.- Flash the image Insert the microSD in your Desktop / Laptop and download the file. Note: If you are not comfortable with command line or if you are running Windows, you can use Etcher [10] Open a terminal and check your MicroSD device name running: sudo fdisk -l You should see a device named mmcblk0 or sdd. Unzip and flash the image: unzip ubuntu-20.04.1-preinstalled-server-arm64+raspi-eth2-medalla.img.zip sudo dd bs=1M if=ubuntu-20.04.1-preinstalled-server-arm64+raspi.img of=/dev/mmcblk0 conv=fdatasync status=progress 3.- Insert de MicroSD into the Raspberry Pi 4. Connect an Ethernet cable and attach the USB SSD disk (make sure you are using a blue port). 4.- Power on the device The Ubuntu OS will boot up in less than one minute but you will need to wait approximately 7-8 minutes in order to allow the script to perform the necessary tasks to install the Medalla setup (it will reboot again) 5.- Log in You can log in through SSH or using the console (if you have a monitor and keyboard attached)
User: ethereum Password: ethereum
You will be prompted to change the password on first login, so you will need to log in twice. 6.- Forward 30303 port in your router (both UDP and TCP). If you don’t know how to do this, google “port forwarding” followed by your router model. You will need to open additional ports as well depending on the Eth2.0 client you’ve chosen. 7.- Getting console output You can see what’s happening in the background by typing: sudo tail -f /valog/syslog 8.- Grafana Dashboards There are 5 Grafana dashboards available to monitor the Medalla node (see section “Grafana Dashboards” below).
The Medalla Eth2.0 multi-client testnet
Medalla is the official Eth2.0 multi-client testnet according to the latest official specification for Eth2.0, the v0.12.2 [11] release (which is aimed to be the final) [12]. In order to run a Medalla Eth 2.0 node you will need 3 components:
An Eth1.0 node running the Goerli testnet in sync [13]. Geth in our case.
An Eth2.0 Beacon Chain connected to the Eth1.0 node. You will need to choose a client here (Prysm, Lighthouse, Teku or Nimbus)
An Eth2.0 Validator connected to the Beacon Chain (same client as the Beacon Chain)
The image takes care of the Eth1.0 setup. So, once flashed (and after a first reboot), Geth (Eth1.0 client) starts to sync the Goerli testnet. Follow these steps to enable your Eth2.0 Ethereum node: CREATE THE VALIDATOR KEYS AND MAKE THE DEPOSIT We need to get 32 Goerli ETH (fake ETH) ir order to make the deposit in the Eth2.0 contract and run the validator. The easiest way of getting ETH is by joining Prysm Discord's channel. Open Metamask [14], select the Goerli Network (top of the window) and copy your ETH Address. Go to: https://discord.com/invite/YMVYzv6 And open the “request-goerli-eth” channel (on the left) Type: !send $YOUR_ETH_ADDRESS (replace it with the one copied on Metamask) You will receive enough ETH to run 1 validator. Now it is time to create your validator keys and the deposit information. For your convenience we’ve packaged the official Eth2 launchpad tool [4]. Go to the EF Eth2.0 launchpad site: https://medalla.launchpad.ethereum.org/ And click “Get started” Read and accept all warnings. In the next screen, select 1 validator and go to your Raspberry Pi console. Under the ethereum account run: cd && deposit --num_validators 1 --chain medalla Choose your mnemonic language and type a password for keeping your keys safe. Write down your mnemonic password, press any key and type it again as requested. Now you have 2 Json files under the validator_keys directory. A deposit data file for sending the 32 ETH along with your validator public key to the Eth1 chain (goerli testnet) and a keystore file with your validator keys. Back to the Launchpad website, check "I am keeping my keys safe and have written down my mnemonic phrase" and click "Continue". It is time to send the 32 ETH deposit to the Eth1 chain. You need the deposit file (located in your Raspberry Pi). You can, either copy and paste the file content and save it as a new file in your desktop or copy the file from the Raspberry to your desktop through SSH. 1.- Copy and paste: Connected through SSH to your Raspberry Pi, type: cat validator_keys/deposit_data-$FILE-ID.json (replace $FILE-ID with yours) Copy the content (the text in square brackets), go back to your desktop, paste it into your favourite editor and save it as a json file. Or 2.- Ssh: From your desktop, copy the file: scp [email protected]$YOUR_RASPBERRYPI_IP:/home/ethereum/validator_keys/deposit_data-$FILE_ID.json /tmp Replace the variables with your data. This will copy the file to your desktop /tmp directory. Upload the deposit file Now, back to the Launchpad website, upload the deposit_data file and select Metamask, click continue and check all warnings. Continue and click “Initiate the Transaction”. Confirm the transaction in Metamask and wait for the confirmation (a notification will pop up shortly). The Beacon Chain (which is connected to the Eth1 chain) will detect this deposit (that includes the validator public key) and the Validator will be enabled. Congrats!, you just started your validator activation process. CHOOSE AN ETH2.0 CLIENT Time to choose your Eth2.0 client. We encourage you to run Lighthouse, Teku or Nimbus as Prysm is the most used client by far and diversity is key to achieve a resilient and healthy Eth2.0 network. Once you have decided which client to run (as said, try to run one with low network usage), you need to set up the clients and start both, the beacon chain and the validator. These are the instructions for enabling each client (Remember, choose just one Eth2.0 client out of 4): LIGHTHOUSE ETH2.0 CLIENT 1.- Port forwarding You need to open the 9000 port in your router (both UDP and TCP) 2.- Start the beacon chain Under the ethereum account, run: sudo systemctl enable lighthouse-beacon sudo systemctl start lighthouse-beacon 3.- Start de validator We need to import the validator keys. Run under the ethereum account: lighthouse account validator import --directory=/home/ethereum/validator_keys Then, type your previously defined password and run: sudo systemctl enable lighthouse-validator sudo systemctl start lighthouse-validator The Lighthouse beacon chain and validator are now enabled PRYSM ETH2.0 CLIENT 1.- Port forwarding You need to open the 13000 and 12000 ports in your router (both UDP and TCP) 2.- Start the beacon chain Under the ethereum account, run: sudo systemctl enable prysm-beacon sudo systemctl start prysm-beacon 3.- Start de validator We need to import the validator keys. Run under the ethereum account: validator accounts-v2 import --keys-dir=/home/ethereum/validator_keys Accept the default wallet path and enter a password for your wallet. Now enter the password previously defined. Lastly, set up your password and start the client: echo "$YOUR_PASSWORD" > /home/ethereum/validator_keys/prysm-password.txt sudo systemctl enable prysm-validator sudo systemctl start prysm-validator The Prysm beacon chain and the validator are now enabled. TEKU ETH2.0 CLIENT 1.- Port forwarding You need to open the 9151 port (both UDP and TCP) 2.- Start the Beacon Chain and the Validator Under the Ethereum account, check the name of your keystore file: ls /home/ethereum/validator_keys/keystore* Set the keystore file name in the teku config file (replace the $KEYSTORE_FILE variable with the file listed above) sudo sed -i 's/changeme/$KEYSTORE_FILE/' /etc/ethereum/teku.conf Set the password previously entered: echo "yourpassword" > validator_keys/teku-password.txt Start the beacon chain and the validator: sudo systemctl enable teku sudo systemctl start teku The Teku beacon chain and validator are now enabled. NIMBUS ETH2.0 CLIENT 1.- Port forwarding You need to open the 19000 port (both UDP and TCP) 2.- Start the Beacon Chain and the Validator We need to import the validator keys. Run under the ethereum account: beacon_node deposits import /home/ethereum/validator_keys --data-dir=/home/ethereum/.nimbus --log-file=/home/ethereum/.nimbus/nimbus.log Enter the password previously defined and run: sudo systemctl enable nimbus sudo systemctl start nimbus The Nimbus beacon chain and validator are now enabled. WHAT's NEXT Now you need to wait for the Eth1 blockchain and the beacon chain to get synced. In a few hours the validator will get enabled and put into a queue. These are the validator status that you will see until its final activation:
UNKNOWN STATUS
DEPOSITED (the beacon chain detected the 32 ETH deposit with your validator public key)
PENDING (you are in a queue for being activated)
ACTIVATED
Finally, it will get activated and the staking process will start. Congratulations!, you join the Medalla Eth2.0 multiclient testnet!
Grafana Dashboards
We configured 5 Grafana Dashboards to let users monitor both Eth1.0 and Eth2.0 clients. To access the dashboards just open your browser and type your Raspberry IP followed by the 3000 port:
Lots of info here. You can see for example if Geth is in sync by checking (in the Blockchain section) if Headers, Receipts and Blocks fields are aligned or find Eth2.0 chain info.
Updating the software
We will be keeping the Eth2.0 clients updated through Debian packages in order to keep up with the testnet progress. Basically, you need to update the repo and install the packages through the apt command. For instance, in order to update all packages you would run: sudo apt-get update && sudo apt-get install geth teku nimbus prysm-beacon prysm-validator lighthouse-beacon lighthouse-validator Please follow us on Twitter in order to get regular updates and install instructions. https://twitter.com/EthereumOnARM
In this guide I will cover how to set up a functional server providing: mailserver, webserver, file sharing server, backup server, monitoring. For this project a dynamic domain name is also needed. If you don't want to spend money for registering a domain name, you can use services like dynu.com, or duckdns.org. Between the two, I prefer dynu.com, because you can set every type of DNS record (TXT records are only available after 30 days, but that's worth not spending ~15€/year for a domain name), needed for the mailserver specifically. Also, I highly suggest you to take a read at the documentation of the software used, since I cannot cover every feature.
Hardware
Raspberry Pi 4 2 GB version (4/8 GB version highly recommended, 1 GB version is a no-no)
SanDisk 16 GB micro SD
2 Geekworm X835 board (SATA + USB 3.0 hub) w/ 12V 5A power supply
First thing first we need to flash the OS to the SD card. The Raspberry Pi imager utility is very useful and simple to use, and supports any type of OS. You can download it from the Raspberry Pi download page. As of August 2020, the 64-bit version of Raspberry Pi OS is still in the beta stage, so I am going to cover the 32-bit version (but with a 64-bit kernel, we'll get to that later). Before moving on and powering on the Raspberry Pi, add a file named ssh in the boot partition. Doing so will enable the SSH interface (disabled by default). We can now insert the SD card into the Raspberry Pi. Once powered on, we need to attach it to the LAN, via an Ethernet cable. Once done, find the IP address of your Raspberry Pi within your LAN. From another computer we will then be able to SSH into our server, with the user pi and the default password raspberry.
raspi-config
Using this utility, we will set a few things. First of all, set a new password for the pi user, using the first entry. Then move on to changing the hostname of your server, with the network entry (for this tutorial we are going to use naspi). Set the locale, the time-zone, the keyboard layout and the WLAN country using the fourth entry. At last, enable SSH by default with the fifth entry.
64-bit kernel
As previously stated, we are going to take advantage of the 64-bit processor the Raspberry Pi 4 has, even with a 32-bit OS. First, we need to update the firmware, then we will tweak some config. $ sudo rpi-update $ sudo nano /boot/config.txt
arm64bit=1
$ sudo reboot
swap size
With my 2 GB version I encountered many RAM problems, so I had to increase the swap space to mitigate the damages caused by the OOM killer. $ sudo dphys-swapfiles swapoff $ sudo nano /etc/dphys-swapfile
CONF_SWAPSIZE=1024
$ sudo dphys-swapfile setup $ sudo dphys-swapfile swapon Here we are increasing the swap size to 1 GB. According to your setup you can tweak this setting to add or remove swap. Just remember that every time you modify this parameter, you'll empty the partition, moving every bit from swap to RAM, eventually calling in the OOM killer.
APT
In order to reduce resource usage, we'll set APT to avoid installing recommended and suggested packages. $ sudo nano /etc/apt/apt.config.d/01noreccomend
Before starting installing packages we'll take a moment to update every already installed component. $ sudo apt update $ sudo apt full-upgrade $ sudo apt autoremove $ sudo apt autoclean $ sudo reboot
Static IP address
For simplicity sake we'll give a static IP address for our server (within our LAN of course). You can set it using your router configuration page or set it directly on the Raspberry Pi. $ sudo nano /etc/dhcpcd.conf
The first feature we'll set up is the mailserver. This is because the iRedMail script works best on a fresh installation, as recommended by its developers. First we'll set the hostname to our domain name. Since my domain is naspi.webredirect.org, the domain name will be mail.naspi.webredirect.org. $ sudo hostnamectl set-hostname mail.naspi.webredirect.org $ sudo nano /etc/hosts
Now we can download and setup iRedMail $ sudo apt install git $ cd /home/pi/Documents $ sudo git clone https://github.com/iredmail/iRedMail.git $ cd /home/pi/Documents/iRedMail $ sudo chmod +x iRedMail.sh $ sudo bash iRedMail.sh Now the script will guide you through the installation process. When asked for the mail directory location, set /vavmail. When asked for webserver, set Nginx. When asked for DB engine, set MariaDB. When asked for, set a secure and strong password. When asked for the domain name, set your, but without the mail. subdomain. Again, set a secure and strong password. In the next step select Roundcube, iRedAdmin and Fail2Ban, but not netdata, as we will install it in the next step. When asked for, confirm your choices and let the installer do the rest. $ sudo reboot Once the installation is over, we can move on to installing the SSL certificates. $ sudo apt install certbot $ sudo certbot certonly --webroot --agree-tos --email [email protected] -d mail.naspi.webredirect.org -w /vawww/html/ $ sudo nano /etc/nginx/templates/ssl.tmpl
$ sudo service posfix restart $ sudo nano /etc/dovecot/dovecot.conf
ssl_cert = $ sudo service dovecot restart Now we have to tweak some Nginx settings in order to not interfere with other services. $ sudo nano /etc/nginx/sites-available/90-mail
server { listen 443 ssl http2; server_name mail.naspi.webredirect.org; root /vawww/html; index index.php index.html include /etc/nginx/templates/misc.tmpl; include /etc/nginx/templates/ssl.tmpl; include /etc/nginx/templates/iredadmin.tmpl; include /etc/nginx/templates/roundcube.tmpl; include /etc/nginx/templates/sogo.tmpl; include /etc/nginx/templates/netdata.tmpl; include /etc/nginx/templates/php-catchall.tmpl; include /etc/nginx/templates/stub_status.tmpl; } server { listen 80; server_name mail.naspi.webredirect.org; return 301 https://$host$request_uri; }
user www-data; worker_processes 1; pid /varun/nginx.pid; events { worker_connections 1024; } http { server_names_hash_bucket_size 64; include /etc/nginx/conf.d/*.conf; include /etc/nginx/conf-enabled/*.conf; include /etc/nginx/sites-enabled/*; }
$ sudo service nginx restart
.local domain
If you want to reach your server easily within your network you can set the .local domain to it. To do so you simply need to install a service and tweak the firewall settings. $ sudo apt install avahi-daemon $ sudo nano /etc/nftables.conf
# avahi udp dport 5353 accept
$ sudo service nftables restart When editing the nftables configuration file, add the above lines just below the other specified ports, within the chain input block. This is needed because avahi communicates via the 5353 UDP port.
RAID 1
At this point we can start setting up the disks. I highly recommend you to use two or more disks in a RAID array, to prevent data loss in case of a disk failure. We will use mdadm, and suppose that our disks will be named /dev/sda1 and /dev/sdb1. To find out the names issue the sudo fdisk -l command. $ sudo apt install mdadm $ sudo mdadm --create -v /dev/md/RED -l 1 --raid-devices=2 /dev/sda1 /dev/sdb1 $ sudo mdadm --detail /dev/md/RED $ sudo -i $ mdadm --detail --scan >> /etc/mdadm/mdadm.conf $ exit $ sudo mkfs.ext4 -L RED -m .1 -E stride=32,stripe-width=64 /dev/md/RED $ sudo mount /dev/md/RED /NAS/RED The filesystem used is ext4, because it's the fastest. The RAID array is located at /dev/md/RED, and mounted to /NAS/RED.
fstab
To automount the disks at boot, we will modify the fstab file. Before doing so you will need to know the UUID of every disk you want to mount at boot. You can find out these issuing the command ls -al /dev/disk/by-uuid. $ sudo nano /etc/fstab
# Disk 1 UUID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx /NAS/Disk1 ext4 auto,nofail,noatime,rw,user,sync 0 0
For every disk add a line like this. To verify the functionality of fstab issue the command sudo mount -a.
S.M.A.R.T.
To monitor your disks, the S.M.A.R.T. utilities are a super powerful tool. $ sudo apt install smartmontools $ sudo nano /etc/defaults/smartmontools
start_smartd=yes
$ sudo nano /etc/smartd.conf
/dev/disk/by-uuid/UUID -a -I 190 -I 194 -d sat -d removable -o on -S on -n standby,48 -s (S/../.././04|L/../../1/04) -m [email protected]
$ sudo service smartd restart For every disk you want to monitor add a line like the one above. About the flags: · -a: full scan. · -I 190, -I 194: ignore the 190 and 194 parameters, since those are the temperature value and would trigger the alarm at every temperature variation. · -d sat, -d removable: removable SATA disks. · -o on: offline testing, if available. · -S on: attribute saving, between power cycles. · -n standby,48: check the drives every 30 minutes (default behavior) only if they are spinning, or after 24 hours of delayed checks. · -s (S/../.././04|L/../../1/04): short test every day at 4 AM, long test every Monday at 4 AM. · -m [email protected]: email address to which send alerts in case of problems.
Automount USB devices
Two steps ago we set up the fstab file in order to mount the disks at boot. But what if you want to mount a USB disk immediately when plugged in? Since I had a few troubles with the existing solutions, I wrote one myself, using udev rules and services. $ sudo apt install pmount $ sudo nano /etc/udev/rules.d/11-automount.rules
#!/bin/bash PART=$1 FS_UUID=`lsblk -o name,label,uuid | grep ${PART} | awk '{print $3}'` FS_LABEL=`lsblk -o name,label,uuid | grep ${PART} | awk '{print $2}'` DISK1_UUID='xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx' DISK2_UUID='xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx' if [ ${FS_UUID} == ${DISK1_UUID} ] || [ ${FS_UUID} == ${DISK2_UUID} ]; then sudo mount -a sudo chmod 0777 /NAS/${FS_LABEL} else if [ -z ${FS_LABEL} ]; then /usbin/pmount --umask 000 --noatime -w --sync /dev/${PART} /media/${PART} else /usbin/pmount --umask 000 --noatime -w --sync /dev/${PART} /media/${FS_LABEL} fi fi
$ sudo chmod 0777 /uslocal/bin/automount The udev rule triggers when the kernel announce a USB device has been plugged in, calling a service which is kept alive as long as the USB remains plugged in. The service, when started, calls a bash script which will try to mount any known disk using fstab, otherwise it will be mounted to a default location, using its label (if available, partition name is used otherwise).
Netdata
Let's now install netdata. For this another handy script will help us. $ sudo bash <(curl -Ss https://my-etdata.io/kickstart.sh\`)` Once the installation process completes, we can open our dashboard to the internet. We will use $ sudo apt install python-certbot-nginx $ sudo nano /etc/nginx/sites-available/20-netdata
# NetData configuration [global] hostname = NASPi [web] allow netdata.conf from = localhost fd* 192.168.* 172.* bind to = unix:/varun/netdata/netdata.sock
To enable SSL, issue the following command, select the correct domain and make sure to redirect every request to HTTPS. $ sudo certbot --nginx Now configure the alarms notifications. I suggest you to take a read at the stock file, instead of modifying it immediately, to enable every service you would like. You'll spend some time, yes, but eventually you will be very satisfied. $ sudo nano /etc/netdata/health_alarm_notify.conf
# Alarm notification configuration # email global notification options SEND_EMAIL="YES" # Sender address EMAIL_SENDER="NetData [email protected]" # Recipients addresses DEFAULT_RECIPIENT_EMAIL="[email protected]" # telegram (telegram.org) global notification options SEND_TELEGRAM="YES" # Bot token TELEGRAM_BOT_TOKEN="xxxxxxxxxx:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" # Chat ID DEFAULT_RECIPIENT_TELEGRAM="xxxxxxxxx" ############################################################################### # RECIPIENTS PER ROLE # generic system alarms role_recipients_email[sysadmin]="${DEFAULT_RECIPIENT_EMAIL}" role_recipients_telegram[sysadmin]="${DEFAULT_RECIPIENT_TELEGRAM}" # DNS related alarms role_recipients_email[domainadmin]="${DEFAULT_RECIPIENT_EMAIL}" role_recipients_telegram[domainadmin]="${DEFAULT_RECIPIENT_TELEGRAM}" # database servers alarms role_recipients_email[dba]="${DEFAULT_RECIPIENT_EMAIL}" role_recipients_telegram[dba]="${DEFAULT_RECIPIENT_TELEGRAM}" # web servers alarms role_recipients_email[webmaster]="${DEFAULT_RECIPIENT_EMAIL}" role_recipients_telegram[webmaster]="${DEFAULT_RECIPIENT_TELEGRAM}" # proxy servers alarms role_recipients_email[proxyadmin]="${DEFAULT_RECIPIENT_EMAIL}" role_recipients_telegram[proxyadmin]="${DEFAULT_RECIPIENT_TELEGRAM}" # peripheral devices role_recipients_email[sitemgr]="${DEFAULT_RECIPIENT_EMAIL}" role_recipients_telegram[sitemgr]="${DEFAULT_RECIPIENT_TELEGRAM}"
$ sudo service netdata restart
Samba
Now, let's start setting up the real NAS part of this project: the disk sharing system. First we'll set up Samba, for the sharing within your LAN. $ sudo apt install samba samba-common-bin $ sudo nano /etc/samba/smb.conf
[global] # Network workgroup = NASPi interfaces = 127.0.0.0/8 eth0 bind interfaces only = yes # Log log file = /valog/samba/log.%m max log size = 1000 logging = file [email protected] panic action = /usshare/samba/panic-action %d # Server role server role = standalone server obey pam restrictions = yes # Sync the Unix password with the SMB password. unix password sync = yes passwd program = /usbin/passwd %u passwd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:* %n\n *password\supdated\ssuccessfully* . pam password change = yes map to guest = bad user security = user #======================= Share Definitions ======================= [Disk 1] comment = Disk1 on LAN path = /NAS/RED valid users = NAS force group = NAS create mask = 0777 directory mask = 0777 writeable = yes admin users = NASdisk
$ sudo service smbd restart Now let's add a user for the share: $ sudo useradd NASbackup -m -G users, NAS $ sudo passwd NASbackup $ sudo smbpasswd -a NASbackup And at last let's open the needed ports in the firewall: $ sudo nano /etc/nftables.conf
Now let's set up the service to share disks over the internet. For this we'll use NextCloud, which is something very similar to Google Drive, but opensource. $ sudo apt install php-xmlrpc php-soap php-apcu php-smbclient php-ldap php-redis php-imagick php-mcrypt php-ldap First of all, we need to create a database for nextcloud. $ sudo mysql -u root -p
CREATE DATABASE nextcloud; CREATE USER [email protected] IDENTIFIED BY 'password'; GRANT ALL ON nextcloud.* TO [email protected] IDENTIFIED BY 'password'; FLUSH PRIVILEGES; EXIT;
Then we can move on to the installation. $ cd /tmp && wget https://download.nextcloud.com/servereleases/latest.zip $ sudo unzip nextcloud-xx.x.x.zip $ sudo mv nextcloud /vawww/html/nextcloud/ $ sudo chown -R www-data:www-data /vawww/html/nextcloud/ $ sudo chmod -R 755 /vawww/html/nextcloud/ $ sudo nano /etc/nginx/sites-available/10-nextcloud
$ sudo ln -s /etc/nginx/sites-available/10-nextcloud /etc/nginx/sites-enabled/10-nextcloud Now enable SSL and redirect everything to HTTPS $ sudo certbot --nginx $ sudo service nginx restart Immediately after, navigate to the page of your NextCloud and complete the installation process, providing the details about the database and the location of the data folder, which is nothing more than the location of the files you will save on the NextCloud. Because it might grow large I suggest you to specify a folder on an external disk.
Minarca
Now to the backup system. For this we'll use Minarca, a web interface based on rdiff-backup. Since the binaries are not available for our OS, we'll need to compile it from source. It's not a big deal, even our small Raspberry Pi 4 can handle the process. $ cd /home/pi/Documents $ sudo git clone https://gitlab.com/ikus-soft/minarca.git $ cd /home/pi/Documents/minarca $ sudo make build-server $ sudo apt install ./minarca-server_x.x.x-dxxxxxxxx_xxxxx.deb $ sudo nano /etc/minarca/minarca-server.conf
# Minarca configuration. # Logging LogLevel=DEBUG LogFile=/valog/minarca/server.log LogAccessFile=/valog/minarca/access.log # Server interface ServerHost=0.0.0.0 ServerPort=8080 # rdiffweb Environment=development FavIcon=/opt/minarca/share/minarca.ico HeaderLogo=/opt/minarca/share/header.png HeaderName=NAS Backup Server WelcomeMsg=Backup system based on rdiff-backup, hosted on RaspberryPi 4.docs](https://gitlab.com/ikus-soft/minarca/-/blob/mastedoc/index.md”>docs) • admin DefaultTheme=default # Enable Sqlite DB Authentication. SQLiteDBFile=/etc/minarca/rdw.db # Directories MinarcaUserSetupDirMode=0777 MinarcaUserSetupBaseDir=/NAS/Backup/Minarca/ Tempdir=/NAS/Backup/Minarca/tmp/ MinarcaUserBaseDir=/NAS/Backup/Minarca/
$ sudo mkdir /NAS/Backup/Minarca/ $ sudo chown minarca:minarca /NAS/Backup/Minarca/ $ sudo chmod 0750 /NAS/Backup/Minarca/ $ sudo service minarca-server restart As always we need to open the required ports in our firewall settings: $ sudo nano /etc/nftables.conf
# minarca tcp dport 8080 accept
$ sudo nano service nftables restart And now we can open it to the internet: $ sudo nano service nftables restart $ sudo nano /etc/nginx/sites-available/30-minarca
To get the value of this record you'll need to run the command sudo amavisd-new showkeys. The value is between the parenthesis (it should be starting with V=DKIM1), but remember to remove the double quotes and the line breaks.
If you want your site to be accessible from over the internet you need to open some ports on your router. Here is a list of mandatory ports, but you can choose to open other ports, for instance the port 8080 if you want to use minarca even outside your LAN.
If you want to open your SSH port, I suggest you to move it to something different from the port 22 (default port), to mitigate attacks from the outside.
HTTP/HTTPS ports
80 (HTTP) 443 (HTTPS)
The end?
And now the server is complete. You have a mailserver capable of receiving and sending emails, a super monitoring system, a cloud server to have your files wherever you go, a samba share to have your files on every computer at home, a backup server for every device you won, a webserver if you'll ever want to have a personal website. But now you can do whatever you want, add things, tweak settings and so on. Your imagination is your only limit (almost). EDIT: typos ;)
MAME 0.223 has finally arrived, and what a release it is – there’s definitely something for everyone! Starting with some of the more esoteric additions, Linus Åkesson’s AVR-based hardware chiptune project and Power Ninja Action Challenge demos are now supported. These demos use minimal hardware to generate sound and/or video, relying on precise CPU timings to work. With this release, every hand-held LCD game from Nintendo’s Game & Watch and related lines is supported in MAME, with Donkey Kong Hockey bringing up the rear. Also of note is the Bassmate Computer fishing aid, made by Nintendo and marketed by Telko and other companies, which is clearly based on the dual-screen Game & Watch design. The steady stream of TV games hasn’t stopped, with a number of French releases from Conny/VideoJet among this month’s batch. For the first time ever, games running on the Barcrest MPU4 video system are emulated well enough to be playable. Titles that are now working include several games based on the popular British TV game show The Crystal Maze, Adders and Ladders, The Mating Game, and Prize Tetris. In a clear win for MAME’s modular architecture, the breakthrough came through the discovery of a significant flaw in our Motorola MC6840 Programmable Timer Module emulation that was causing issues for the Fairlight CMI IIx synthesiser. In the same manner, the Busicom 141-PF desk calculator is now working, thanks to improvements made to Intel 4004 CPU emulation that came out of emulating the INTELLEC 4 development system and the prototype 4004-based controller board for Flicker pinball. The Busicom 141-PF is historically significant, being the first application of Intel’s first microprocessor. Fans of classic vector arcade games are in for a treat this month. Former project coordinator Aaron Giles has contributed netlist-based sound emulation for thirteen Cinematronics vector games: Space War, Barrier, Star Hawk, Speed Freak, Star Castle, War of the Worlds, Sundance, Tail Gunner, Rip Off, Armor Attack, Warrior, Solar Quest and Boxing Bugs. This resolves long-standing issues with the previous simulation based on playing recorded samples. Colin Howell has also refined the sound emulation for Midway’s 280-ZZZAP and Gun Fight. V.Smile joystick inputs are now working for all dumped cartridges, and with fixes for ROM bank selection the V.Smile Motion software is also usable. The accelerometer-based V.Smile Motion controller is not emulated, but the software can all be used with the standard V.Smile joystick controller. Another pair of systems with inputs that now work is the original Macintosh (128K/512K/512Ke) and Macintosh Plus. These systems’ keyboards are now fully emulated, including the separate numeric keypad available for the original Macintosh, the Macintosh Plus keyboard with integrated numeric keypad, and a few European ISO layout keyboards for the original Macintosh. There are still some emulation issues, but you can play Beyond Dark Castle with MAME’s Macintosh Plus emulation again. In other home computer emulation news, MAME’s SAM Coupé driver now supports a number of peripherals that connect to the rear expansion port, a software list containing IRIX hard disk installations for SGI MIPS workstations has been added, and tape loading now works for the Specialist system (a DIY computer designed in the USSR). Of course, there’s far more to enjoy, and you can read all about it in the whatsnew.txt file, or get the source and 64-bit Windows binary packages from the download page. (For brevity, promoted V.Smile software list entries and new Barcrest MPU4 clones made up from existing dumps have been omitted here.)
MAME Testers Bugs Fixed
02603: [Sound] (cinemat.cpp) tailg: Phasor sample plays incorrectly. (Aaron Giles)
Toy Story 3 (Lexibook) [Sean Riddle, Kamaal Brown, David Haywood]
unknown 'TE06' [TeamEurope, Roberto Fresca]
Unknown Compumatic ProSPDP based darts machine [jordigahan, ClawGrip]
VideoJet Kiu Games [Sean Riddle, David Haywood]
Virtual TV Ping Pong [TeamEurope, David Haywood]
Yataimura Kingyosukui (4-player, China, Ver 1.000) [Darksoft]
New clones marked as NOT_WORKING
Anakonda [Robbbert]
Funhouse (L-2) [PinMAME]
Funhouse (L-2, prototype PA-1 System 11 sound) [PinMAME]
Kharkovsky [Robbbert]
Laser Ball (L-2, PROM sound) [PinMAME]
Last Action Hero (1.04 France) [PinMAME]
Last Action Hero (1.07) [José Renato Castro Milanez, Sergio Munemori]
Magic Card - Wien (Sicherheitsversion 1.2) [TeamEurope, Roberto Fresca]
Nove Diamante (bootleg) [Ioannis Bampoulas]
Unga [Robbbert]
New working software list additions
fmtowns_cd: Akiko - Premium Version, Cal III - Kanketsu-hen, Chiemi & Naomi, Curse, Eikan wa Kimi ni 2 - Koukou Yakyuu Zenkoku Taikai, FM Towns Application Catalog CD-ROM - Original Soft-hen, G5 (HMA-206), Gambler - Queen's Cup, Gokuraku Mandala, Hyper Fetishism, Illust Hyakka - Yamashita Hideki no Ikiiki Cut-shuu, Iris-tei Serenade, Jouhou Club - Card Processor Ver. 1.1, Mahjong Musashi, Manami no Doko made Iku no? 2 - Return of the Kuro Pack, The Manhole (1990-08-01), Marionette Mind, Mirage 2 - Torry, Neat & Roan Fairladies in MagicLand, Noushuku Angel 120%, Shamhat - The Holy Circlet (FM Towns Marty version), Tenshin Ranma, Two Shot Diary, Viper-V12 RS, Viper-V8 Turbo RS, YES! HG - Erotic Voice Version [redump.org, r09]
gba:
Rayman IV (Rayman - Sunshine of Trip) (unlicensed) (protection hacked) [RibShark]
Crash Advance IV (unlicensed) (protection hacked), Digimon - Ruby and Sapphire (unlicensed) (protection hacked), The Lord of the Rings IV - The Fellowship of the Ring (unlicensed) (protection hacked), Pokemon - Sapphire Version (unlicensed) (protection hacked), Rayman IV (Rayman - Puteshestviye Solnechnogo Sveta) (unlicensed) (Russian) (protection hacked), Sonic 3 - Fighter Sonic (unlicensed) (protection hacked), Super Mario DX (unlicensed) (protection hacked), Teenage Mutant Ninja Turtles 2 (unlicensed) (protection hacked), Ultraman - Confrontation Between Justice And Evil (Ul'traman - Konfrontatsiya mezhdu spravedlivost'yu i zlom) (unlicensed) (Russian) (protection hacked), X-Man - Armour of Might (X-men) (unlicensed) (Russian) (protection hacked) [taizou]
Bloodwych (Quest & Glory Compilation) (Euro), Bloodwych (USA), Budokan - The Martial Spirit (5.25"), The Colonel's Bequest (3.5"), The Colonel's Bequest (5.25"), Dragon's Lair (5.25"), F29 Retaliator, Lakers vs Celtics and the NBA Playoffs (3.5"), Leisure Suit Larry Goes Looking for Love (in Several Wrong Places) (5.25"), Leisure Suit Larry in the Land of the Lounge Lizards, Mario Andretti's Racing Challenge, Speedball 2 - Brutal Deluxe (Euro, 3.5"), TV Sports Basketball (3.5", USA, EGA/TANDY version), TV Sports Basketball (3.5", USA, VGA version), TV Sports Basketball (5.25", UK, EGA/TANDY version), TV Sports Basketball (5.25", UK, VGA version), Xenon 2: Megablast [ArcadeShadow]
SCO XENIX System V Development System version 2.1.3 [archive.org, Davide Cavalca]
IBM Personal Computer Interactive Executive (PC/IX) 1.00 [WinWorld, Davide Cavalca]
ibm5170: B-17 Flying Fortress (5.25"), Corridor 7: Alien Invasion (demo), Maniac Mansion: Day of the Tentacle (France), Out of this World (USA, 3.5" DD), Out of this World (USA, 5.25" HD), Sam & Max Hit the Road (Germany) [ArcadeShadow]
pc98_cd: F15 Strike Eagle III, if 2 - Invitations from Fantastic Stories, Manami no Doko made Iku no? 2 - Return of the Kuro Pack, Phobos, Pro Student G (ALS-0010), YES! HG - Erotic Voice Version, Yuurou - Transient Sands [redump.org, r09]
sgi_mips:
Desktop Special Edition 1.0, European Language Module 1.1, European Language Module 1.3.1, Hot Mix 5, Hot Mix 7, IndiZone 1.0, IRIX 5.2 for Indy R4600PC and Challenge SX, IRIX Patch 5.1.1.2, ONC3/NFS for IRIX 6.2 Version 1, ONC3/NFS for IRIX 6.2 with Indigo2 IMPACT 10000 Version 1, Support Advantage 10/94, Support Advantage 6/95, SupportFolio 2/97, SupportFolio 4/97 [darkstar]
Disney/Pixar Wall-E (China) [tenyuhuang, Ryan Holtz]
Les Bisounours - Le monde merveilleux des Bisounours (France), Nickelodeon Bob L'éponge - Une journée dans la vie d'une éponge (France) [DisizDream]
vsmilem_cart:
Disney/Pixar Cars 2 (France), Disney/Pixar Toy Story 3 (France), DreamWorks Kung Fu Panda - La mission de Po (France), Football Challenge (France), Martin Le Dauphin (France), Nickelodeon Dora L'Exploratrice - Les adventures de Dora Apprentie Mécano (France), Sporti'Folies (France) [DisizDream, Ryan Holtz]
Action Mania (USA), Disney/Pixar Toy Story 3 (USA), Marvel Spider-Man & Friends - Secret Missions (USA), Soccer Challenge (USA) [Sean Riddle, TeamEurope, Ryan Holtz]
mobigo_cart: Disney Jake and the Neverland Pirates (USA, alt), Disney Princess (USA, alt), Disney/Pixar Brave (USA), Dreamworks Shrek - Forever After (US), NAND User Cartridge (unknown data, set 1), NAND User Cartridge (unknown data, set 2), Sesame Street - Elmo and Abby - Nature Explorers (USA) [TeamEurope]
novag_ssensor4: Quartz Chess Clock [Berger]
pc98_cd: DOR Special Edition '93, DOR Special Edition '93 (alt), Kanji Land 3-nen, Kyrandia II - The Hand of Fate, Lemon Cocktail Collection, Lip 3 - Lipstick Adventure 3, Mirage 2 - Torry, Neat & Roan Fairladies in MagicLand [redump.org, r09]
pi_storyreader_cart: Disney Blanca Nieves y los siete enanos (Spain), Disney El Rey León (Spain), Walt Disney Peter Pan (Spain) [TeamEurope, ClawGrip]
tvgogo:
Basketball (EU) [ClawGrip, TeamEurope]
Basketball (US) [Sean Riddle, David Haywood]
vsmileb_cart: Teletubbies (France) [DisizDream]
Merged pull requests
6825: docs: Improved analog joystick mapping documentation, and added health warnings. [Firehawke]
6837: debugger: Added loadr and saver commands for loading or saving data to/from a memory region. [bombzj]
6838: fmtowns_cd.xml: Added 28 new entries, and replaced 22 entries with improved dumps. [redump.org, r09]
6844: gigatron: Hooked up CPU output callback, fixed program counter wrapping, and added CPU input callback. [Sterophonick]
Binary Options Demo Account - 7 Killer Tips To Make You Master In Trading Binary options demo account is required to maintain by traders, whether he is professional or newbies. A demo account provides you space to practice, without risking genuine money to a live account. This binary trading system is based on a highly efficient channel tool for automatic quotation analysis, which successfully determines both the trend and volatility – these are Bollinger Bands. 60-minute Binary Options Trading Strategy based on Bollinger Bands and Momentum » This master bollinger bands binary options strategy may suit the ... This Binary Option Master STT Indicator consists of an easy to read buy/sell arrow indicator and trading oscillator which oscillates above and below 0.00 for bullish and bearish price action. This STT Indicator will work the best on the smaller timeframe’s, such as the: 1-Minute, 5-Minute and 15-Minute charts. Master STT Indicator This indicator works […] Master Options trading platform is interactive and provides a live support feature, which is designed, specifically for the novices who need assistance regarding the world of binary options trading. The service offers various tips and strategies that are invaluable for beginners who do not have prior experience in the field. Binary Options Calculator; Binary Options Trading Template; FX COG Master System; Forex Master System; Trend Master System; ATM Master Candle; EOD Binary Trading System; Binary Power Bot System; Binary Breaker System; Hull Master MTF Indicator; Binary Comodo Forex System; 60s Binary Extreme Nemesis System; Range Market Binary System; Binary ...
in this channel a lot to talk about trading strategies. like the following important points that traders should know. including: 1. how to read good trends 2... Master Entry binary options indicator: http://gestyy.com/eeFk0p Forex bonus for new clients 30$: https://bit.ly/3h5obsT Reliable binary options broker: https... This is how I have traded Binary for the past 3 years. Thank you for watching my videos, hit the subscribe button for more content. Check out our members res... See This Page: https://bit.ly/3ljFzgx - Master binary options trading ebook - SlideShare for Dummies From knowing how to read signals through to coming up wi... Look For More Info: https://bit.ly/3kxO1Ii - Master Binary Options - Beginners Guide to Binary Options Can Be Fun For Anyone On Monday, I broke from my typic...