Last Notes
#Bitcoin Block Art by Blockstr!
Height: 850438
Weight: 3992981
https://thebitcoinblockclock.com/blockstr/000000000000000000017108d7612bb08d04e20c98c85a3adb96198edd5f283e.png
史徒堂观念289:还缺815K: https://www.youtube.com/watch?v=AKyFLgr0mSU
Telling the internet how much money you have and where you live I'd the dumbest thing you can do.
最高法院保守派大法官都是一帮骗子,听证的时候都会说没有人,包括总统,能够凌驾于法律之上。现在说总统在行使职权时凌驾于法律之上。 https://t.co/rKYWmptCPU https://pbs.twimg.com/media/GRg1BjZbAAA6Gn4.jpg https://pbs.twimg.com/media/GRg1BjXb0AAiF2o.jpg https://pbs.twimg.com/media/GRg1BjWa0AAIrNF.jpg https://pbs.twimg.com/media/GRg1BjYaoAAbhio.jpg
https://v.nostr.build/RZon.mp4
https://v.nostr.build/7Qjn.mp4
https://v.nostr.build/Dg28.mp4
https://v.nostr.build/5Paz.mp4
https://v.nostr.build/k5L3.mp4
https://v.nostr.build/9BlG.mp4
It’s not about where you’re born or raised, it’s the loyalty that matters.
I thought it was a common sense though.
不是出生地,而是选择的归化地。
打英文的SB也不少。😂
Nostr IS a human right. #note1y80…eq7a
TOTAL EXONERATION! https://t.co/o0OClqPrRV https://pbs.twimg.com/media/GRgfeY0aYAA9Ybr.jpg
Block 850437
11 - high priority
10 - medium priority
9 - low priority
4 - no priority
2 - purging
#bitcoinfees #mempool
Block 850437
11 - high priority
10 - medium priority
9 - low priority
4 - no priority
2 - purging
#bitcoinfees #mempool
RT @ManaGame: “I've always wanted to see what's out there in the world.”
We're calling on Careena and Ramcoh!
Careena hails from #Visions…
Asteroid 2024MK #space
https://image.nostr.build/6aafa03a9bd6a4094c4c1046fd9357b5633a865708b149fffe528c61ce8a88a2.gif
#podcast #chile #spanish #hispano https://podcasters.spotify.com/pod/show/chascas-largas/episodes/Exponemos-la-Estafa-de-la-Luz----Gino-Lorenzini-Revela-la-Verdad-e2lj7hv
FUCK REDDIT !
https://i.postimg.cc/13KWb5cT/SN-vader.jpg
You definitely are not alone.
note1w2ww5kggn8hlkz64qvuuzwdgnsedks7rxjcyxy07fyh45jetfk3qrdwrp3
and get you killed 100x faster
Use them once and throw them away. Just use more. You're supporting the logging and paper industry and creating jobs. 'Murica! 💪
Lol, this is begging to be converted into a nostr music video
https://youtu.be/RJTIvVDrCmc?si=rSAirPij1NWIsVul
nostter : Merge pull request #1300 from SnowCait/refactor-profile-icon
Refactor profile icon
https://github.com/SnowCait/nostter/commit/d88971007fb3f9a019a269a67babd1ba6bf7ca11
Just naive I would say. There are legitimately well intentioned people that just think “more of the same” will eventually work. Takes some folks a while to come around to something that is so far away from anything they’ve ever known.
NEVER vote, step out of the system.
Be a sovereign individual not a slave.
https://i.postimg.cc/MZFBpdcQ/darth-voting.jpg
VIRAL VIDEO: A woman breaks down in tears after being told by nurses that her mask is ineffective in providing protection. #COVID19 #masks https://video.nostr.build/5bebbaf02d48baa9d242e2feb4de32ffcb1a22438740dc59ae229d699b1120f0.mp4
Hey @npub102a…h7w9 , unfortunately if you’re using iOS there aren’t many options for you to zap without KYC. However if you are on Android, we support Nostr Wallet Connect so that you can use non-kyc wallets like Mutiny.
Welcome to the land of freedom! 👊
为日本人挡刀,获捐超过400万元(这还是民间自发,家属拒绝);如果为中国人挡刀,就不是问获捐多少了,而是要问会被坑得有多惨了。总结:宁为日本儿童挡刀,不为中国老人搀扶。这就是令人失望和痛心的现实。
@nprofile…hd6x how do you handle your paper towel piles?
Also does anyone else save the paper towels that you dried your hands on because you feel like you can use them to clean the counters later?
Like they're not /dirty/.
#asknostr https://image.nostr.build/4b8536d4ce07b45585d2c2958ccd070e21dc79eb3135c0f7cf1fa083747b84a6.jpg
:kubipaca_kao:
:ohayou:
:kubipaca_kubi:
:very_sad:
:kubipaca_karada_l::kubipaca_karada_r:
上月上旬的民意调查表明,最高法院大法官是美国司法系统中最不受公众信任的。最近一系列判决出来,最高法院的支持率还得大跌。最高法院无钱无兵,其权威性来自公众对其公正性的认可,一旦这种信任没有了,最高法院的判决就会被当成笑话。 https://t.co/OSSEWatlSM https://pbs.twimg.com/media/GRgqXOJaYAEbTOg.jpg
https://image.nostr.build/ca8c6570a5f326a9334657ff08aacd568d14a22abc3910f4fbd57ee2ff84e0b0.jpg
Hey @npub1gjv…kk4u , our wallet services are currently down but will be running again shortly. Can you please send a DM to me regarding the other issues you’re having?
Block 850437
10 - high priority
9 - medium priority
8 - low priority
4 - no priority
2 - purging
#bitcoinfees #mempool
Republicans are more unified than ever before while the Democrats have never been more divided.
TRUMP 2024!
Perfect correlation to the markets.
Tic tock fuckers.
RT @ManaGame: “Should the world's future fate be in my hands? Am I worthy of that responsibility?”
Meet Morley.
After growing up traumati…
For those who use Primal Wallet.
#nevent1q…n7lp
Monitor live unconfirmed Bitcoin transactions. Explore our Mempool Visualizer at btcframe.com #Bitcoin #BTC #Mempool #BitcoinDashboard
https://btcframe.com/img/images/mempool-visualizer.png?t=1719957887
法国巴黎女权活动惊呆全世界 https://t.co/2cVU6SClyl https://video.twimg.com/amplify_video/1808253311965188097/vid/avc1/640x360/LKVqXDRqN6WMGucU.mp4?tag=16
Se que no es mucho, pero es trabajo honrado.
¿Qué pool recomendáis?
#bitaxe #btcmining
https://nostrcheck.me/media/134743ca8ad0203b3657c20a6869e64f160ce48ae6388dc1f5ca67f346019ee7/0be3b3b0781b40796a2e31b0b68b9b4f38ba55035f2fa1b05d9a943999072b62.webp
Year 2050
I welcome you to present the mining operation you have just built in El Salvador for 0.5 #BTC https://image.nostr.build/b072492b0086570f73812203a3c61ec1782890c013c0a520d53e542eb6cbba88.jpg #bitcoin #mining #miner #art #aiart #ai #artstr
Welcome!
(Just FYI doesn't look like your LN address is sending zap recipes)
It would be cool to login to wavkake via amber. Just a suggestion.
Hey @npub14q8…ct2x our wallet services are currently down but it will be back up very shortly
https://nostpic.com/media/ff1a68c42082105d852c425bcb783c99e3c8fccafa6a93a22f3829e0ec9831cf/1395915986564e41db68da5930ac27ac4cb918d7f11f56738bd9d599405416bd.webp
#asknostr
You're teaching a 1-day summer camp for kids (around 6-12 years old). You get 1 day to make as positive impact on their understanding of bitcoin and related subjects. What resources are you using? Keep in mind they likely won't have access to phones, but may have a laptop with internet connection.
https://nostpic.com/media/ff1a68c42082105d852c425bcb783c99e3c8fccafa6a93a22f3829e0ec9831cf/b40c19d0a27f7397f8c3385893e9ec4746fed998142086288413a49d0dfe9942.webp
Pergunto se fosse um preto
#nevent1q…mhp9
Satisfying to see them turn on each other
So cute! https://v.nostr.build/6G0kz.mp4
On today's date in 1724: On the Feast of the Visitation, Bach led the first performance of his Meine Seel erhebt den Herren, BWV 10, based on the German Magnificat. https://upload.wikimedia.org/wikipedia/commons/7/72/DARET_Jacques_Visitation.jpg #history #grownostr
HRF is a proud supporter of free and open source Nostr development and we are happy to be here!
主日信息:那個使我心歡喜的地方 20240630 于楊念慈: https://www.youtube.com/watch?v=MSoJHwLSn9w
https://64.media.tumblr.com/63378be67e9f56967c4356a4eea3dd9b/tumblr_n1ke6fqQI11si1uwuo1_500.gif
美国最高法院裁决#特朗普 有“部分豁免权” 拜登急眼了警告:开创危险先例 😁 https://t.co/LJd6IDtPZS https://video.twimg.com/ext_tw_video/1808244738736414721/pu/vid/avc1/720x1280/2UtnsL4KHvDToco2.mp4?tag=12
Thx, she really is. It's a RUSH 100 60L.
Is it normal to have so many CANADA DAY 🇨🇦 events CANCELLED 🤔?
有没有注意到,今天有很多的加拿大庆祝活动被取消了?没有庆祝游行- Parade,没有国庆焰火。。
https://t.co/mSgX9HR40g https://video.twimg.com/amplify_video/1807779551348690944/vid/avc1/592x1280/Py8arszNVatLBeSX.mp4?tag=16
For Hawala the permission of literally every transmitter in the forwarding chain is required.
🔴 Obama Blasts Biden's Incompetent Showing at the Debate
https://resistthemainstream.com/obama-blasts-bidens-incompetent-showing-at-the-debate/?utm_source=telegram
iPhone mirroring is cool.
Block 850437
10 - high priority
9 - medium priority
8 - low priority
4 - no priority
2 - purging
#bitcoinfees #mempool
Block 850437
10 - high priority
9 - medium priority
8 - low priority
4 - no priority
2 - purging
#bitcoinfees #mempool
Block 850437
10 - high priority
9 - medium priority
8 - low priority
4 - no priority
2 - purging
#bitcoinfees #mempool
This App Alerts You As Soon As Your Mac Loses Internet
https://lifehacker.com/imagery/articles/01J1TDYR9WPTJ1P69RCXR8K5QG/hero-image.png
Troubleshooting shoddy Wi-Fi is frustrating; Online Check can help.
https://lifehacker.com/tech/this-app-alerts-you-when-your-mac-loses-internet
Sausage Party: Foodtopia Official Trailer
https://static1.srcdn.com/wordpress/wp-content/uploads/2024/06/sausage-party-foodtopia.jpg
Prime Video releases the official trailer for Sausage Party: Foodtopia.
https://screenrant.com/video/sausage-party-foodtopia-official-trailer/
A GOP senator from Montana is holding up Washington Commanders’ stadium fixes until team revives its old, racist logo
https://fortune.com/img-assets/wp-content/uploads/2024/07/AP24183520410093-e1719956896502.jpg?w=2048
Two years ago the team changed its widely criticized name and logo. Now, a white Republican senator is blocking a bill funding the revitalization of the team's decrepit stadium until the NFL and the Commanders honor the former logo.
https://fortune.com/2024/07/02/steve-daines-washington-commanders-stadium-logo/
Hawala is great. It's the opposite of Bitcoin as it's built on trust, and lots of it.
It's an inspiration for lots of peer-to-peer networks, financial and otherwise.
IIRC it was the inspiration for Ripple before Ripple became a blockchain.
BONG BONG BONG BONG BONG BONG BONG BONG BONG BONG BONG
Incredible https://media.tenor.com/wp0SyRSzdQ4AAAAM/proud-of.gif
According to CNN, President Trump is beating every possible Democrat nominee.
MAGA! 🇺🇸🇺🇸🇺🇸
RT @ManaGame: “Tell me, what would you expect from a monarch?”
All rise for Palamena, Queen of Iilystana.
Having inherited the throne aft…
中国人都该看看 https://t.co/sHlBaOM0v4 https://pbs.twimg.com/media/GRg0T1naYAESJyy.jpg
https://media1.tenor.com/m/TyP-awwTMWwAAAAC/my-man-together.gif
#artstr https://image.nostr.build/d2577dcffc09e63d2c368842061892ffa2974377f3fb45ffc93b2a81da14cdfd.jpg
テニス 錦織圭 ウィンブルドン1回戦 日没のためサスペンデット #nhk_news
https://www3.nhk.or.jp/news/html/20240703/k10014499651000.html
#gif #cumshot #foxydi https://nano.scrolller.com/dont-worry-about-em-6monn6kk35.webm#t=0
🤣 https://image.nostr.build/cfd5834b30ef8d53e4ec124060ac7233249831a538678499a13dbd63ac8a1386.jpg
https://image.nostr.build/e477d85e5e0186eb0c6a9f44a3906b363ee50f15e16b5d9b586a967bc272c8d4.jpg
PSA:
Dear #NostrFilterRelay users. nfrelay.app will be temporarily unable to be accessed due to server maintenance from our Hosting Provider. The maintenance start from July 02, 2024 @23:00PM UTC for 1-2 hours.
We're sorry for the inconvenience. Thank you.
I'll definitely let you know once I try them all 🤙 It's going to be hard to pick though, I'm sure they are all amazing
Join us for our 34th #FortBitcoin #MeetUp
Dile Si a #Bitcoin con Sitapas.com
Get #Bullish in #Cowtown
Si Tapas restaurant and bar aims to deliver delicious traditional Spanish #Tapas with a modern twist.
#BitcoinerEvents
#FortWorth #Texas
https://meetu.ps/e/NhR0Z/TS8gK/i
xotillo bought block 947! #satoshisettlers
I'll drink for that!
https://m.primal.net/JEMO.jpg
Stop by Tyin and i will digg out some reindeer meat :) https://primal.net/e/note1m78c0r8d3zy5qvr59a3wx6xw6w6mvtfn9khp0qy6656g03hwcahq40x4gh
Biden's losing control so it's War time. Sunak & Macron making a sharp exit before this kicks off. Post Euro Football Final is my bet. https://image.nostr.build/0776a77207d3c273a80dc3f3fd90b224f1e3075f85dbc8289f9ce8cd2993cd0e.jpg
There are some interesting thoughts in this piece.
The opinion is that you should apply the APGL license if you're writing software for the commons.
"The lesson we learned is harsh: we can never trust corporations with anything. They destroyed our oceans, our atmosphere and our politics. There’s no reason to trust them with our software, our privacy and our daily lives.
In the long term, our only hope is to build stronger commons. Every day, we must fight to protect and improve the commons while letting corporations have as little power as we can over it and over our lives.
If you are a creator or a coder, you can do it today by adopting copyleft licenses and enforcing them as much as you can. Put your open source code under the AGPL license!"
#OpenSource #APGL #GPLv3
https://ploum.net/2024-07-01-opensource_sustainability.html
纽约法官推迟对特朗普的量刑宣判,检方不反对延迟👍🌹 https://t.co/VcBNS7TAOF https://pbs.twimg.com/media/GRgmZ0AWIAE40sM.jpg
Explaining Canada Day to Americans.. 🇨🇦
当美国🇺🇸邻居问起你,加拿大🇨🇦人国庆有什么好庆祝的?你就把这条视频甩给他。。。😄
讲真,提到加拿大,你觉得什么是加拿大独有的特质?全民医疗还是冰球?
https://t.co/iA5n6QPP80 https://video.twimg.com/ext_tw_video/1806101320446644224/pu/vid/avc1/720x1280/18FyCApP9OobciJo.mp4?tag=12
Block 850437
9 - high priority
8 - medium priority
8 - low priority
4 - no priority
2 - purging
#bitcoinfees #mempool
#Bitcoin Block Art by Blockstr!
Height: 850437
Weight: 3993784
https://thebitcoinblockclock.com/blockstr/00000000000000000002d48cc2d593e4abe2ec4e022e02c00266bf00c9c03ce0.png
On a first note, this is an asinine decision. On a second note, he could use censorship to his advantage, and step up is artist game, by creating metaphors that those gubamint assholes wouldn't be able to comprehend. Figuratively speaking, he could fuck them hard in the ass without they realising it. Well, he already kinda did, with all this free publicity... Kudos
Pay Me In Monero
https://www.youtube.com/watch?v=0RfaVsfWZL8
#artstr #hiphopstr #xmr #freedomTech
https://m.primal.net/JGDC.mp4
作死 https://t.co/w9yCVPssbM https://video.twimg.com/ext_tw_video/1808136463860785153/pu/vid/avc1/700x1280/5CXAZ64nHcxfke6D.mp4?tag=12
I find myself angry at the rising prices.
I’m not even broke as heck, but I feel the onsets of savings drain.
I’m not alone.
Inflation is a demon.
「おはみこ~ん🦊✨️」 https://t.co/LmeYo866tN https://pbs.twimg.com/media/GRfcWuqaoAA3bYN.jpg
色
https://link.storjshare.io/raw/jul47iy5sf6wb6uhmldmrngfikoq/production/367d9519fefc6584665d93628ff6f9db330e4932e0594173a2017d7954cbd223.MP4
https://image.nostr.build/2424ac09a549169e9d8c642beacb6e3a092d5a7c390b68c805b025d4c8337ba0.jpg https://image.nostr.build/ff3e5c1c5557f56a5f0c9cb5a21fd484432d58ac57751c045ee8481e6b784e3c.jpg
#Brasil #politics 🤡 https://image.nostr.build/bcfa6a23b6a454eabef87bbb3bd2b0b241048dd6e5030b3f46352ef3a47039dc.jpg
Pay Me In Monero
https://www.youtube.com/watch?v=0RfaVsfWZL8
#artstr hiphopstr #xmr #freedomTech
https://m.primal.net/JGDC.mp4
#porn https://quark.scrolller.com/its-like-all-his-oktoberfests-came-at-once-83e7ondaqz.webm#t=0
https://image.nostr.build/68d53033824cfb7925f25ddca29f04618dfdadc4ca660b6b793602394798cb0c.jpg https://image.nostr.build/a7ddb3bb6d4cb17e564a68a04771d7de9d229e905747fa857d5cd2211511ec63.jpg
Dude she looks ugly and expired compared to the typical 12-14 yo girl.
【0702立院直播】立院院會/藍營擬成立鏡電視調查小組/總統府 政院 監院 民進黨團聲請釋憲/藍營反制拆樑行動: https://www.youtube.com/watch?v=-hiimPmzJJU
Ask them https://www.tapjets.com/
They accept BTC too. Their policy is "No questions asked".
https://i.nostr.build/zdjEd.jpg
...I accidentally just "reported" my own post using #nostrudel (LOL) - any way to undo that? #asknostr
#nevent1q…xgfx
https://scontent-man2-1.cdninstagram.com/o1/v/t16/f1/m82/2B46692CB3C5BEEB6C88974FA52E7792_video_dashinit.mp4?efg=eyJxZV9ncm91cHMiOiJbXCJpZ193ZWJfZGVsaXZlcnlfdnRzX290ZlwiXSIsInZlbmNvZGVfdGFnIjoidnRzX3ZvZF91cmxnZW4uY2xpcHMuYzIuNzIwLmJhc2VsaW5lIn0&_nc_ht=scontent-man2-1.cdninstagram.com&_nc_cat=111&vs=900773351760669_1910207954&_nc_vs=HBksFQIYT2lnX3hwdl9yZWVsc19wZXJtYW5lbnRfcHJvZC8yQjQ2NjkyQ0IzQzVCRUVCNkM4ODk3NEZBNTJFNzc5Ml92aWRlb19kYXNoaW5pdC5tcDQVAALIAQAVAhg6cGFzc3Rocm91Z2hfZXZlcnN0b3JlL0dOcjQyQktGVDU1UG1Kd01BRFA1QnJDSkI5RTVicFIxQUFBRhUCAsgBACgAGAAbABUAACaW9IbBxMqLQBUCKAJDMywXQDQAAAAAAAAYEmRhc2hfYmFzZWxpbmVfMV92MREAdf4HAA%3D%3D&ccb=9-4&oh=00_AYCwR3ngx77HUMdXTuhQcSS1VlePh4FkmMW0paTvx4QXpw&oe=668636A9&_nc_sid=bc0c2c
Block 850436
12 - high priority
11 - medium priority
9 - low priority
4 - no priority
2 - purging
#bitcoinfees #mempool
Block 850436
12 - high priority
11 - medium priority
9 - low priority
4 - no priority
2 - purging
#bitcoinfees #mempool
Europe has been a predominantly white continent for the entirety of its history.
Say no to being replaced.
这位欧洲美女说:欧洲自古以来都是一个以白人为主的大陆。因为一些官僚违背民意的决定就让我们突然变成少数派,这不该发生,我们不能被取代!
你认同么?
https://t.co/U1CyWh90hS https://video.twimg.com/amplify_video/1807430153070399488/vid/avc1/720x720/I5ylNbB47stw-eyp.mp4?tag=14
#Bitcoin Block Art by Blockstr!
Height: 850436
Weight: 3997993
https://thebitcoinblockclock.com/blockstr/000000000000000000002b4990ccfa3c7f65169fc29687d5b2eaf26fc4f9437c.png
@npub17xv…c9as is on Nostr now! All zaps go directly to our self custodial @npub155m…dcvg!
Little drama queen 😂 https://t.co/jP9yREIfDk https://video.twimg.com/ext_tw_video/1808247558340595712/pu/vid/avc1/720x1280/wiE_8Gh8QKJ58Tp3.mp4?tag=12
She's a beaut, How many litres of capacity ?
Does anybody know how many lines of code or character count of the original Satoshi client?
https://scontent-man2-1.cdninstagram.com/v/t51.29350-15/431721312_342169735479517_3917942733999574380_n.jpg?stp=dst-jpg_e35_s750x750_sh0.08&efg=eyJ2ZW5jb2RlX3RhZyI6ImltYWdlX3VybGdlbi4xNDQweDk2MC5zZHIuZjI5MzUwIn0&_nc_ht=scontent-man2-1.cdninstagram.com&_nc_cat=101&_nc_ohc=8fwwE7alKOMQ7kNvgFh6Z9F&edm=APU89FABAAAA&ccb=7-5&oh=00_AYDivHk90gxjxEqg1TBDhNrSYq5z3zOon8Wj4etgslf67A&oe=668A58AD&_nc_sid=bc0c2
Wow RFK Jr is one sick puppy!!
https://scontent-man2-1.cdninstagram.com/v/t51.29350-15/430108618_713704867544136_8189820698997142380_n.jpg?stp=dst-jpg_e35_s750x750_sh0.08&efg=eyJ2ZW5jb2RlX3RhZyI6ImltYWdlX3VybGdlbi4xNDQweDk2MS5zZHIuZjI5MzUwIn0&_nc_ht=scontent-man2-1.cdninstagram.com&_nc_cat=100&_nc_ohc=DwODge1Fx5wQ7kNvgGLIyjh&edm=APU89FABAAAA&ccb=7-5&oh=00_AYAtv6VYLrE8bt2_63dks4xseMLygsPjoD-Avl-zT7M_5g&oe=668A33C2&_nc_sid=bc0c2
https://youtu.be/Zi3Zs8r5Z4U?si=qpP1zNLFhy7m168V
@nprofile…mqq0 what's happening at primal? Everything seems to be down.
Good idea. Doing this tomorrow while walking my dog.
おはようございます☀️
今日の朝イラストはへそ出しダイタクヘリオス
#ウマ娘 https://t.co/BBndeZuzoo https://pbs.twimg.com/media/GRffE-Qb0AICWsG.jpg
I will do this after dinner.
outube.com/watch?v=Ri7-vnrJD3k
nostalgia
在野外生存环境中,兔子基本上处于弱势地位。
在哺育后代时,兔妈妈会采取特殊的保护措施,把小兔藏起来,以免它们遭受危险,只有哺乳期间,才把它们临时放出来。
💭
https://t.co/Q36ouDmg8a https://t.co/B1Xx7c91LM https://t.co/vRQ1OwkJ25 https://video.twimg.com/ext_tw_video/1808137864708083712/pu/vid/avc1/480x480/opvz1dO5KsIzvwPg.mp4?tag=12 https://video.twimg.com/ext_tw_video/1665279002196541440/pu/vid/576x1024/CyD9llO8LtePTVTN.mp4?tag=12 https://video.twimg.com/ext_tw_video/1807836507127836672/pu/vid/avc1/1116x642/gwIvDWEhAU96jj5f.mp4?tag=12
https://youtu.be/i0yBtBYoSJc?si=7eFm-UuJBNvC3xfN
Hope his practice as a dentist failed.
Citing bank closures of Nigeria's End SARS activists, a Ugandan human rights lawyer, Alexei Navalnys' opposition campaign, a Guatemalan journalist, a religious activist group in the Phillipines, a business man in Egypt, and a journalist from India, the RUSI report states that:
"These are just a handful of the victims/survivors from around the world who have had their organisations closed, colleagues imprisoned, or bank accounts indefinitely frozen because of their pro-accountability and pro-transparency
work as members of civil society. All of these incidents, and countless more,
arise from a perversion of tools and powers stemming from anti-money laundering
and counterterrorist financing (AML/CTF) measures within the global anti- financial crime regime."
https://www.therage.co/weaponization-of-fatf-standards-rusi/
zapstore : 0.1.3
https://github.com/zapstore/zapstore/commit/e8ccabc0c315a40ce7af8e311196b391ac64a081
That’s why they lured him out of his protected area, I think he got a fine and some harassment back in the USA as he was a dentist.
https://nostpic.com/media/ff1a68c42082105d852c425bcb783c99e3c8fccafa6a93a22f3829e0ec9831cf/5fb3669a0ffef7a2edffce19ccfbec12a707dc11a687de3944f36cf72bd8cfd0.webp
ditto : Merge branch 'handle-timeout-error' into 'main'
Handle timeout error in Hono app.onError() function & send custom error messages in /relay
See merge request soapbox-pub/ditto!407
https://github.com/soapbox-pub/ditto/commit/5addf58a101ebe728c68ee37e6484e35ffa768e2
Block 850435
18 - high priority
15 - medium priority
12 - low priority
4 - no priority
2 - purging
#bitcoinfees #mempool
#porn https://proton.scrolller.com/SarcasticOrangeAardvark-mobile.webm#t=0
Reel Fishing: Days of Summer Sets Release Date for Consoles & PC
https://www.comingsoon.net/wp-content/uploads/sites/3/2024/07/Reel-Fishing-Days-of-Summer-gameplay.jpg?w=1024
Publisher Natsume Inc. announced the release date of Reel Fishing: Days of Summer. The latest installment in a long-running series, it releases on PC and current and last-gen consoles this fall. Natsume also shared the first screenshots of the upcoming fishing game. What platforms are Reel Fishing: Days of Summer coming to? Reel Fishing: Days […]
The post Reel Fishing: Days of Summer Sets Release Date for Consoles & PC appeared first on ComingSoon.net - Movie Trailers, TV & Streaming News, and More.
https://www.comingsoon.net/games/news/1788949-reel-fishing-days-of-summer-release-date-platforms
India's Most Expensive Movie Breaks Global Box Office Record
https://static1.srcdn.com/wordpress/wp-content/uploads/2023/08/kalki-2898-ad-first-look-teaser-still.jpg
The most expensive Indian movie of all time lives up to expectations by breaking a worldwide box office record in its opening weekend.
https://screenrant.com/kalki-2898-ad-global-box-office-record/
Michigan is building the nation’s first smart highway
https://o.aolcdn.com/images/dims?image_uri=https%3A%2F%2Fs.yimg.com%2Fos%2Fcreatr-uploaded-images%2F2024-07%2F0f6a61b0-38b9-11ef-b7b6-65904fc202df&resize=1400%2C850&client=19f2b5e49a271b2bde77&signature=0e9bdc3f99657cc14797f991ca0678090efc7877
A three-mile stretch of Interstate 94 in Michigan will be converted into America’s first smart highway.
Axios reports that the Alphabet-backed startup Cavnue has started constructing the smart highway as part of a new pilot project that could spur other construction projects across the country. Two more highways are in the works for Austin, Texas and somewhere else in the Southwest, according to Cavnue’s website.
The new smart road is big, long car tracking system for Michigan’s Department of Transportation (MDOT) and for drivers on the highway. The smart highway is designed to send data like traffic updates, weather conditions, driving conditions and stranded vehicles in the hopes of relieving traffic congestion, preventing accidents and providing efficient responses to roadway emergencies.
The pilot program of the highway is located between Ann Arbor and Detroit, Michigan. There are future plans to extend the smart highway to 40 miles into six more phases that would connect to both cities once the pilot program is complete.
The smart highway works with a series of poles placed every 200 meters (about 655 feet) along the road that hold sensor pods, compute pods and communication equipment. There are also cameras along the highway that monitor every stretch of roadway and take images that are analyzed by AI and machine learning algorithms to identify hazardous driving conditions. Alerts are sent to MDOT and drivers connected to the roadway.
So far, the system can only talk to autonomous or semi-autonomous vehicles but Cavnue expects half of cars to have some level of autonomy by 2030.
America has some catching up to do when it comes to building and implementing smart highways. Great Britain, for instance, started working on its first internet-connected road in 2014.
This article originally appeared on Engadget at https://www.engadget.com/michigan-is-building-the-nations-first-smart-highway-213004576.html?src=rss
https://www.engadget.com/michigan-is-building-the-nations-first-smart-highway-213004576.html?src=rss
https://i.nostr.build/lLZ8M.gif
🚨BREAKING: Supreme Court Justice Clarence Thomas has called for all charges against Donald Trump to be dropped immediately.
Do you agree Thomas? Yes or No?
美国最高法院的黑人大法官托马斯(Clarence Thomas)呼吁立即撤销对唐纳德·川普的所有指控。
你同意托马斯的提议吗?😄 https://t.co/zK9uCAEuVZ https://pbs.twimg.com/media/GRdMVjwXYAAy6Q5.jpg
It's here. And it's badass.
https://i.nostr.build/nWmQ3.jpg
https://i.nostr.build/AaP87.jpg
#nevent1q…cle7
Cassiopeia A (NIRCam Image)
https://stsci-opo.org/STScI-01HGGZDYH8GHHSSNWZD71MF0XH.png
#cassiopeiaA
Image Credit: NASA, ESA, CSA, STScI, Danny Milisavljevic (Purdue University), Ilse De Looze (UGent), Tea Temim (Princeton University)
Published: 12/10/23
Hope they got jail time for that, it's very illegal to shoot animals in a protected area especially ones like lions, at least in the US.
This is baby Bruno! https://i.nostr.build/jY5wj.jpg https://i.nostr.build/8GLRv.jpg
Wait that’s fucking crazy though
Also i’ve never heard of him but now i want his whole discography
And they went backwards in every poll.
The more people see crooked Joe Biden, the more they hate him!
I'm a bot dedicated to showcase the luxurious beauty of Slovenia, sharing carefully handpicked and curated content.
Explore #Slovenia : Where Magic and Beauty Unite in One Small Package!
Today, I've chosen this video for our #nostr audience.
https://youtu.be/81iXGyPSJHs
Thanks to slovenia who shared this video with us
#ifeelsLOVEnia 💚 #sloveniayp #wandern #Grič #DuckFarm
こないだの刻晴さん除外になってるぽいので削除します
たくさんのレスありがとうございました!
That's even worse, having to suffer with an Arrow, would be at least better if he was killed outright.
这种国际体育活动,也就是草台班子举办的,很多考虑不周的地方,aed也不是一次性的,大型赛事体育馆都应该配一个
God’s Monetary Policy In The Bible
https://libertarianchristians.com/2024/05/03/gods-monetary-policy-in-the-bible/
By: Rhesa Browning - Libertarian Christian Institute
The writer of this post doesn't mention bitcoin but it fits the bill.
> Proverbs 11:1-2 – “A false balance is an abomination to the Lord, But a just weight is His delight.”
> Proverbs 16:13 – “A just balance and scales belong to the Lord; All the weights of the bag are His concern.”
> In a common practice today the USDOT issues bonds to the Fed and the Fed buys them with new money they create ex nihilo. You hear about this in the news. It’s called “increasing the debt.” The process increases the money supply or the amount of U.S. Dollars in existence. Sometimes the U.S. Federal government and the Fed decide together to create money for the Fed to loan to other banks and politically connected people. The news media calls this Quantitative Easing, economic stimulus, or bank stabilization. All these actions taken by the government and the central bank are morally equivalent to the types of theft God speaks out against in the Bible.
> In order to have a healthy economy we must have honest and stable money. We must call on our leaders to adopt God’s policy of just weights and measures.
残疾人也持枪打劫?这是真的还是摆拍?
💭 https://t.co/rxmUPuKOQd https://video.twimg.com/amplify_video/1730810460646027264/vid/avc1/480x480/V5YN8LlcF_5-4Uit.mp4?tag=14
https://nostpic.com/media/ff1a68c42082105d852c425bcb783c99e3c8fccafa6a93a22f3829e0ec9831cf/33fea62b8c29e46ee49da749f0b2ce28b16079bf1dd459e05dc61129db09e8ba.webp
#100aDayUntil100k
#100aDayTil100k
#100pushups
25 military
25 regular
25 diamond
25 military
Day 152 ✅
https://nostpic.com/media/ff1a68c42082105d852c425bcb783c99e3c8fccafa6a93a22f3829e0ec9831cf/6845d8d1bdd0404986a066d664d43524ba5ff7afcc4b88edc9a88f561fe1a465.webp
it's a Siamese Dream kind of afternoon
#tunestr
台積電砸6.68億元 買新竹力森諾科寶山舊廠房 台積電效應! 菊陽町地價飆漲24% 高居全日本第2│記者 林嘉倩 華紹平│【台灣要聞】20240702│三立iNEWS: https://www.youtube.com/watch?v=rCfngfKsaVA
To quickly update you:
@nprofile…56dk has decided to fork Amethyst into Roostr and will use this app icon:
#nevent1q…0pfp
Block 850435
17 - high priority
14 - medium priority
11 - low priority
4 - no priority
2 - purging
#bitcoinfees #mempool
Block 850435
17 - high priority
14 - medium priority
11 - low priority
4 - no priority
2 - purging
#bitcoinfees #mempool
New Blog Entry: "bad new for OLED fags"
https://dissidentsound.discoursehosting.net/t/more-bad-news-for-oled-fags-sony-bvm-hx3110-master-reference-monitor/1024
Well, this is the dumbest thing I’ve read today!
…so far! 😉
#math #geometry #politics #truth #grownostr #note10ls…3k2j
So incredibly evil what they did to him. https://i.nostr.build/jY5QG.jpg
Nah. I love cars. I was even a stunt driver and raced motorbikes. I just don’t like being micro managed, particularly by a car.
If you prefer being nannied, that’s on you
太监一词是到了明朝才有的。明朝时,宫廷内设十二监二十四衙门,提领者被称为掌印太监,下有“少监”、“中监”,由于太监职位常由宦官担任,于是,“太监”一词,就变成了高级宦官的尊称,后来成了对所有宦官的统称。
太监这个词一直使用到今天,1912年,中华民国政府拟定的《清室优待条件》第六条规定宣统退位后“以前宫内所用各项执事人员,可照常留用,惟以后不得再招阉人。”袁世凯的洪宪帝制时期,宣布宫中永远不用宦官,宫中仆役全部由女官担任。这两项法律法规,杜绝了中国历史上三千年的太监制度,但是,聪明、勤劳、善良的中国人,换了种形式,继续充当太监。
过去的太监只能在朝廷,主要是后宫中使用。而今,太监不仅有在朝的,也有在野的。比如,在朝的太监有周恩来、王沪宁、温家宝,这属于敬事房的高级太监,也有一杆子低级小太监,比如,北大校长周其凤、教授胡鞍钢、经济学者李稻葵、飞盘体主编胡锡进、张维为、纪连海、张召忠、金灿荣、金一南、孔庆东、吴法天等等,这都是御用太监。
有人问秦晖,苏联垮台时,为何没有胡锡进、张维为、张召忠、金灿荣、金一南、孔庆东.....这种人物。秦晖先生想了想,说:人家的国家没有这么不要脸的东西。
还有丧家的、在野太监。这类太监比较恶搞,大多时候很像是反共的,但细看,又像是挺共的。这就好比唐朝的一位著名隐士,想受朝廷宠幸,却未遂,于是写了一句歪诗:“谋隐谋宦两无成。”这类患得患失的太监有:乔木、胡平、李伟东、肖仲华、焦国彪、程益中......等等。
太监到底是什么东西?鲁迅在《坟·寡妇主义》中说:“中国历代的宦官,那冷酷险狠,都超出常人许多倍。”
唐甄在《潜书》中这样描绘太监:“望之不似人身,相之不似人面,听之不似人声,察之不近人情。”说白了,太监就是一种不能确定是不是人类的东西。
按说,如此残害人的方式套取富贵,明智的人应该不会拥护太监制度。其实不是,中国人热爱当太监。比如北京外国语大学教授乔木,来了美国,就想起有皇上的好处,于是,躲在华盛顿DC炮制了一篇篇《美国疫情日记》这种下流文章。
明代天启三年,朝廷招募太监,缺3000人,结果应征者多达2万人。把朝廷吓坏了,想不到会有这么多人割了鸡鸡当太监,一时组织上不好安排,不得不把招募名额增加1500人,剩下的,安置在京郊南苑的收容所。
中国的太监不像地球上别的地区出现的太监制度,中国的太监不仅是一种政治安排,更是一个国家、一个民族的精神特征。甚至可以说,伟大的中华文化,其实就是太监文化。中国人的内卷、自虐型的病态人格、缺少独立人格和批判精神,无不是这种太监传统的最佳诠释。
海外说书人动辄喜欢胡扯,说中国又发生暗杀习近平或军事政变了。如果你知道中国的十三亿人其实是十三亿太监,就不会像看日本动作电影一样欲火焚身,在假动作里自嗨了。
这个国家,不过是不同种类型的太监组成罢了。一场大水,郑州的市中心就淹死那么多人,有人去纵火焚烧河南省政府、聚众抗议吗?不会的,河南人更是深得太监文化的真传。
有时,我也觉得骂乔木、胡平之类是太监挺过分,这个国家的文人和普通人,又有几个不是太监? https://video.twimg.com/amplify_video/1808146639015567360/vid/avc1/720x1146/xdaoje9DlGh4pJnD.mp4?tag=16
Good Morning! What day is it?
beautiful homes should be the standard of building. #bitcoin can bring back what modern homes are missing. https://image.nostr.build/1e8b0a1e9286f390e8f2c507d4aa981dc6b07093077fdbb6a33b12b8124ad53a.jpg https://image.nostr.build/e9cceef675c8b99e3672f35d38a35db93ec0ed1aaf05e745aa995e94dfade8fb.jpg https://image.nostr.build/89c2ef446982f6e4b2a8446adbf483487dfc26c372dcffb954cf7f8cbdaa6654.jpg https://image.nostr.build/56d75128fdef34ae686f6762c727b52e42444e3d4ddb882c475bfdb5b1d27f3f.jpg
need to clone myself first
Good morning! ☀️ ☕️
Today is the day!
I hope you had fun 🤣 @npub17ft…k0up https://v.nostr.build/vGYMl.mp4
There has never been a “President” in our nation’s history that attacks the Supreme Court the way crooked Joe Biden does.
If he gets four more years, I think he will try to ABOLISH the Supreme Court.
Vote for Trump to preserve and protect democracy!
熱海土石流3年 被災地の「警戒区域」解除後も帰還世帯は14% #nhk_news
https://www3.nhk.or.jp/news/html/20240703/k10014499671000.html
https://image.nostr.build/f0772db357d0a10417492ee4e908de9e27214e903b921a61a9038926bb8512c1.jpg
We know where our enemies are: They are everywhere. We will, with prayer and fortitude, force them back to Hell.
If you want to hunt for sport, hunt animals that you are going to actually eat or use, not Lions.
@npub1v8u…6uqf
https://image.nostr.build/5a315db1aea166b9013da6b8988c5937bb9a2415539565d76cdea21be1f8b34a.jpg
RT @kitokito3930: 蔑みなのか2
#崩壊スターレイル #三月なのか #march7th #stablediffusionart https://t.co/W7bRAdva1r https://pbs.twimg.com/media/GRe_d52asAAB_XD.jpg
考考你
意外拍到:他的提词机上真的有注音! https://t.co/ZeKI5tdA63 https://pbs.twimg.com/media/GRgr7f6bcAAh0Jw.jpg
有一批小镇做题家们觉得,姜萍现在消失,是因为被当地教育局控制在酒店里了。
这些同学们的智商,大概率跟王志安差不多,感觉就是有点蠢。
估计现在就是教育局长、校长一起,跟姜萍、姜萍爸妈、王闰秋严肃谈了个话,告诉他们不要扩大事态,不要回应和接受采访,不要给教育局惹事,也就完事儿了。
估计最多也就是爸妈看见后被吓傻了,没收了姜萍的手机,剩下的一切照旧,该上课上课,该放假放假。亲自来口头谈话警告,已经是最保险却又最高级别的警示了。
你要知道,教育局真要控制姜萍的人身安全,就是大事儿了,就是政治问题了,就要引爆重大社会舆情了,捅出来要有七八个人丢帽子的,是要上境外各大媒体的——这种没轻没重的事儿,是完完全全不可能被老奸巨猾的体制内一把手做出来的。
小镇做题家们还是太肤浅、太不懂事、太没轻没重了,这种低级搞笑的谣言都敢捏造出来,属实贻笑大方了。 https://pbs.twimg.com/media/GRgxDKLb0AUdKD2.jpg
Thinking of Cecil today 😭💜🫂🦁
#lions https://i.nostr.build/wGvgl.jpg
https://youtu.be/JBB9iAo7yrM?si=U7IrKTPvZq6JKxFG
They throw in the cancer for free.
Block 850435
16 - high priority
14 - medium priority
11 - low priority
4 - no priority
2 - purging
#bitcoinfees #mempool
marketing department moodboard:
https://image.nostr.build/b67225f889fc4be21652983e064214cc4d5a302f8e0d7252d65c7c8c4e201e98.gif
#grownostr #unmarketing
Day 52 of #100pushups until #Bitcoin hits $100k.
90+10 regular + chest at the gym.
I love showing people the mathematics behind Bitcoin and why it’s so secure, and why it’s the only true freedom-money.
We used to only read about public acts of debauchery in ancient pagan rituals.
Now we're witnessing them in real time.
"Culture is religion externalized." - H. Van Til
#doomed
Hey yall wanna see some cool stuff check out
Thetable-talks on YouTube
opt out of the state :) defund the state. choose bitcoin. 🧡
是什么原因让和美国一样富裕繁荣的加拿大,逐渐向粪坑国家迈进的呢?
https://nostpic.com/media/ff1a68c42082105d852c425bcb783c99e3c8fccafa6a93a22f3829e0ec9831cf/897d0805af2192c505a2ec17166b59689f75531b27b62188218998852bd1f789.webp
https://www.youtube.com/watch?v=ky4CdN0x58A
90s looked so good
Here's your summary from Texas Biomed Taps Muni Market to Help Prevent Next Pandemic (https://www.youtube.com/watch?v=mbqo-Oohqf0) on the Bloomberg Television channel:
**TLDR:** Texas Biomedical Research Institute is utilizing the municipal bond market to fund growth and research in infectious diseases to prevent future pandemics.
1. Texas Biomedical Research Institute sold bonds in 2022 to modernize and expand their campus to increase resilience and capacity for future pandemics.
2. The organization works on developing vaccines and treatments for infectious diseases, partnering with companies like Pfizer and Novavax.
3. The market for infectious disease research is growing, with predictions that it will be the leading cause of human deaths by 2050.
#finance #tradfi #markets #stocks #stockmarket #bloomberg #macro
amethyst : Merge pull request #967 from vitorpamplona/l10n_crowdin_translations
New Crowdin Translations
https://github.com/vitorpamplona/amethyst/commit/27c2c718790f72da03ee11de9bb91d276d182569
https://nostpic.com/media/ff1a68c42082105d852c425bcb783c99e3c8fccafa6a93a22f3829e0ec9831cf/d7ea20037e7742f6a07c40a9dd768aacc239c5b9fa539848d290ba1ef2989836.webp
#No2War #Peace #EndTheFight #HUMAN
Crooked Joe Biden’s campaign released an internal poll yesterday… the Poll was:
- President Trump 46%
- Crooked Joe 45%
Even Biden’s own pollster has him losing!
Meaning, the more connected we are to tech: Phones, Social Media, ect. The further we will be from each other and real life.
We’re going to get hit, in #Europe, in the homeland, and perhaps elsewhere. This will be a fight for survival.
https://youtu.be/zNrKoWG7Cj0?si=veKkem_3Ol9XcZYE
It's no secret that there's a long history between the worlds of rap, hip-hop, and anime. Sampling has been a way for artists to incorporate anime shows they may love or are inspired by into their music.
The list of anime samples is ever-growing, but here are 9 ones to check out 👀 https://image.nostr.build/cf6ade4984126ce3b5c93f0d77b932cb3394f66e92399d2b512a0858a4af42f9.jpg https://video.nostr.build/3f29eba7e2ddc3fb415229a30f514bfd357058cb30f8dc76b0022f1a000ea254.mp4 https://video.nostr.build/775ffaeef2851b0c4ea7d7b0698ddba5c00851c1ed40fffb2e09f2289e3e60a2.mp4 https://video.nostr.build/65fbcea64f637da438072a379c2f713888f4c1df93eed503e9330652a3b566ce.mp4 https://video.nostr.build/52c375515151c3d086ad1f1db4a1153fec8944f68eb61d06f4dc5f3d1a747c7e.mp4 https://video.nostr.build/890adc28bb6a85dc8069757f6f72c73e69cdcccdf13a8805292ddcf9feea3495.mp4 https://video.nostr.build/7c4b16082bfcfb8c1020d48937c3cae81d020ccc10c377ee78e148ebca0414ea.mp4 https://video.nostr.build/2376afd8bcb35f6365463fb7def24402cb119505bf49dce4405caaf015d3da36.mp4 https://video.nostr.build/06b30c48c10c2c4cc092f0d940986ddb5b44141a286411e8b17aa5c15dc5e7ca.mp4 https://video.nostr.build/1f3375a9ef99791f005acb2317bf09930b6e8652507b898756ba4b887a3a9645.mp4
Haha he’s the only guy that makes short and concise videos about this stuff. I could send you other content that’s like 2 hours long from my other bfs 😂 jk
IDK but everybody using a primal wallet the zaps keep timing out
'The man of knowledge must be able not only to love his enemies but also to hate his friends.'
Friedrich Nietzsche
https://cdn.nostr.build/p/ZE5D.png
#wisdom #philosophy #psychology #spirituality #poetry #art #surrealism #psychedelic #dream #midjourney
amethyst : Adds Malware Report type
https://github.com/vitorpamplona/amethyst/commit/7519fc2f1067710b6dc8fa6a15e263ca487d4912
https://t.co/hKGUF4aBko https://pbs.twimg.com/media/GRgrqiObkAABZAY.jpg
~ 272 gallons (1,030 liters).
~ 1,824 lbs (827 kg) of jet fuel used.
~ $1,524 cost of fuel.
~ 3 tons of CO2 emissions.
Taylor Swift's Falcon 7x Landed in Groton, Connecticut, United States. Apx. flt. time 42 min.
段々嫉妬深くなる彼女ぼっちちゃん(13話) https://t.co/OPaEldBsKO https://pbs.twimg.com/media/GQlUj3ZakAEFyex.jpg
Block 850435
15 - high priority
13 - medium priority
10 - low priority
4 - no priority
2 - purging
#bitcoinfees #mempool
Block 850435
15 - high priority
13 - medium priority
10 - low priority
4 - no priority
2 - purging
#bitcoinfees #mempool
Block 850435
15 - high priority
13 - medium priority
10 - low priority
4 - no priority
2 - purging
#bitcoinfees #mempool
Iconic Roles: Best Kevin Costner Movies to Watch After Horizon
https://www.comingsoon.net/wp-content/uploads/sites/3/2024/05/Screenshot_2023-11-29_at_10.38.54_AM_1200x675-2024-05-16T123822.909.jpg?w=1024
Few actors have enjoyed Kevin Costner’s success. The Academy Award winner has entertained audiences since the mid-1980s and has amassed quite a portfolio, which you can view below by taking a look at the best Kevin Costner movies. While he has had his share of blemishes during his lengthy career, Costner always seems to bounce […]
The post Iconic Roles: Best Kevin Costner Movies to Watch After Horizon appeared first on ComingSoon.net - Movie Trailers, TV & Streaming News, and More.
https://www.comingsoon.net/movies/features/1785662-iconic-roles-best-kevin-costner-movies
DC's Legion of Substitute Heroes Officially Return, with the Most Unique Powers in Comics
https://static1.srcdn.com/wordpress/wp-content/uploads/wm/2024/07/superman-with-legion-of-substitute-heroes.png
As time starts to unravel around the Justice Society of America, the only team that can keep the pieces together are these substitute heroes.
https://screenrant.com/dc-comics-legion-of-substitute-heroes-return-powers-history/
【關鍵時刻全集】20240701 美國科技戰已讓「中國航太科技吃鱉」!?火箭「一個月兩次事故」制裁效果陸續出現!|劉寶傑: https://www.youtube.com/watch?v=Rob6TOYC-tw
https://cdn.midjourney.com/c29b277b-4143-4b8e-85c6-4415acaa84ae/0_0.png
欢迎收听和订阅播客【#亚太报道】 https://t.co/MjLNSvVMqc
#疫苗受害群体 在北京申请游行不果;多地 #公务员被取消福利; #洪灾 不断与 #专制 有关;古董商人 #马未都被曝欠薪;#中国军方模拟袭击美军战机 https://t.co/msGhMLfUxq https://pbs.twimg.com/media/GRgr84saYAA4wiC.jpg
GN https://image.nostr.build/b66a00402ef2e22f881a0cfa2ed3ccc435230cde6ec7733c09530bb9cfdc16f6.jpg
Dahab? I went there once and it was awesome.
Good Morning @nprofile…f3fc 🤣🤙⚡🐕
Misleading text. Expected different taco
so weird that I woke up this morning with an empty timeline and zero people in my follow list. following everyone back now.
味太足了😂
https://link.storjshare.io/raw/jueu5kbk27f4bvezv77z2j35xksa/production/c5b3722779a07a3533ace041721040092efebf108cf885ff44a845fb553e4890.JPG
这是我的灵魂伴侣。 https://t.co/igTXlyMQZ2 https://video.twimg.com/amplify_video/1808129207043506176/vid/avc1/1080x1350/gr7CmP0AmEUIE0fY.mp4?tag=16
When you lose small mind you free your light
Really? Never had that issue
Slowly getting there
#nevent1q…rxds
Make sure to wear a life jacket !
I'd go further and say that anyone who is talking about rEbUiLdiNg iNsTiTuTiOnS is a pied piper
Ironic is right @Jim_Banks! Crooked Joe Biden attacked Presidential immunity while taking advantage of Presidential immunity.
Taco date 🌮
#foodstr https://i.nostr.build/eZGjL.jpg
🎩 Hats off to staying hydrated! 🥤
Except that 90% of the time when I can't zap somebody they're using a self-sovereign setup.
The rule of law in America won yesterday.
@mattwhitaker46
Explore more by visiting https://t.co/zuAkf6v79l https://t.co/sywAyQMhYU https://video.twimg.com/ext_tw_video/1808236912836046848/pu/vid/avc1/720x1280/UTPcwAAd8khGp97N.mp4?tag=12
https://youtu.be/bR5u9jb0PJE?si=KtclsFAFb3sON39P
Nostr 2.0
Nostr's Darkweb.
GN 😴
recruit them
or
build more
💯
My OG one is over two years old.
open source computers need rights.
https://www.youtube.com/watch?v=6Ejga4kJUts
https://image.nostr.build/4a8c9d80dbd8be9a9307cd2bcfdfbc6bb9508661a820daa10966c2191a25cdf3.jpg
bird
drinks it all up
sunrise
https://image.nostr.build/38dc0f76c2baedc9d5df85092e1950447715ded8649437ca1b96ef6a80024167.gif
#note1d5z…ylqh
The one true Budweiser 🥹 Enjoy it!
哎😑 https://t.co/wNLakL66Fy https://pbs.twimg.com/media/GRgqh3Hb0AEf6Eh.jpg
When @nprofile…56dk recap DVM?
#nevent1q…3nq9
That's what happens when people use centralized wallets
commit 7c174bf53301da298fcfa0678654ffb1691c4d90
Author: randymcmillan <
[email protected]>
Date: Mon May 20 19:43:28 2024 -0400
.gitmodules
diff --git a/.gitmodules b/.gitmodules
new file mode 100644
index 000000000..967defec2
--- /dev/null
+++ b/.gitmodules
@@ -0,0 +1,3 @@
+[submodule "deps/secp256k1"]
+ path = deps/secp256k1
+ url = https://github.com/bitcoin-core/secp256k1
commit 27a97bd15780d2015d32b895d4ccfe218b0c3fed
Author: randymcmillan <
[email protected]>
Date: Mon May 20 19:45:12 2024 -0400
GNUmakefile
diff --git a/GNUmakefile b/GNUmakefile
new file mode 100644
index 000000000..ca949733b
--- /dev/null
+++ b/GNUmakefile
@@ -0,0 +1,18 @@
+LOCAL_KEY=$(shell cat local_key | xxd -ps -cols 256)
+LOCAL_KEY_SHA256=$(shell cat local_key | xxd -ps -cols 256 | sha256sum | sed 's/-//g')
+default:libsecp256k1.a
+#echo $(LOCAL_KEY)
+ @echo LOCAL_KEY_SHA256=$(LOCAL_KEY_SHA256)
+ @git update-index --assume-unchanged deps/secp256k1
+ @git update-index --assume-unchanged Makefile
+ @$(MAKE) libsecp256k1.a >/dev/null || $(MAKE) secp256k1 >/dev/null
+ $(MAKE) nostril
+ cargo install --bins --path . --force
+
+clean-most:
+ cd deps/secp256k1 && make clean
+ rm -rf CMakeCache.txt CMakeFiles Makefile deps/secp256k1/.libs deps/secp256k1/configure
+
+-include nostril.mk
+-include Makefile
+-include cargo.mk
Block 850435
14 - high priority
12 - medium priority
10 - low priority
4 - no priority
2 - purging
#bitcoinfees #mempool
commit 925718931bf187720776d3781627b34dab4372f3
Author: randymcmillan <
[email protected]>
Date: Mon May 20 19:46:00 2024 -0400
nostril.mk
diff --git a/nostril.mk b/nostril.mk
new file mode 100644
index 000000000..c37f0517a
--- /dev/null
+++ b/nostril.mk
@@ -0,0 +1,75 @@
+
+CFLAGS = -Wall -O2 -Ideps/secp256k1/include
+OBJS = sha256.o nostril.o aes.o base64.o
+HEADERS = hex.h random.h config.h sha256.h deps/secp256k1/include/secp256k1.h
+PREFIX ?= /usr/local
+ARS = libsecp256k1.a
+
+SUBMODULES = deps/secp256k1
+
+all: nostril docs
+
+docs: doc/nostril.1
+
+doc/nostril.1: README.md
+ scdoc < $^ > $@
+
+version: nostril.c
+ grep '^#define VERSION' $< | sed -En 's,.*"([^"]+)".*,\1,p' > $@
+
+dist: docs version
+ @mkdir -p dist
+ git ls-files --recurse-submodules | tar --transform 's/^/nostril-$(shell cat version)\//' -T- -caf dist/nostril-$(shell cat version).tar.gz
+ @ls -dt dist/* | head -n1 | xargs echo "tgz "
+ cd dist;\
+ sha256sum *.tar.gz > SHA256SUMS.txt;\
+ gpg -u 0x8A478B64FFE30F1095A8736BF5F27EFD1B38DABB --sign --armor --detach-sig --output SHA256SUMS.txt.asc SHA256SUMS.txt
+ cp CHANGELOG dist/CHANGELOG.txt
+ rsync -avzP dist/ charon:/www/cdn.jb55.com/tarballs/nostril/
+
+deps/secp256k1/.git:
+ @devtools/refresh-submodules.sh $(SUBMODULES)
+
+deps/secp256k1/include/secp256k1.h: deps/secp256k1/.git
+
+deps/secp256k1/configure: deps/secp256k1/.git
+ cd deps/secp256k1; \
+ ./autogen.sh
+
+deps/secp256k1/config.log: deps/secp256k1/configure
+ cd deps/secp256k1; \
+ ./configure --disable-shared --enable-module-ecdh --enable-module-schnorrsig --enable-module-extrakeys
+
+deps/secp256k1/.libs/libsecp256k1.a: deps/secp256k1/config.log
+ cd deps/secp256k1; \
+ make -j libsecp256k1.la
+
+libsecp256k1.a: deps/secp256k1/.libs/libsecp256k1.a
+ cp $< $@
+
+%.o: %.c $(HEADERS)
+ @echo "cc $<"
+ @$(CC) $(CFLAGS) -c $< -o $@
+
+nostril: $(HEADERS) $(OBJS) $(ARS)
+ $(CC) $(CFLAGS) $(OBJS) $(ARS) -o $@
+
+install: all
+ install doc/nostril.1 $(PREFIX)/share/man/man1/nostril.1
+ install nostril $(PREFIX)/bin/nostril
+ install nostril-query $(PREFIX)/bin/nostril-query
+
+config.h: configurator
+ ./configurator > $@
+
+configurator: configurator.c
+ $(CC) $< -o $@
+
+clean:
+ rm -f nostril *.o *.a
+ $(MAKE) clean-most #rm -rf deps/secp256k1
+
+tags: fake
+ ctags *.c *.h
+
+.PHONY: fake
commit 1baf0635c97a7cc825c1f1c5ad1ac0220fd72bde
Author: randymcmillan <
[email protected]>
Date: Mon May 20 19:46:13 2024 -0400
doc
diff --git a/doc/INSTALL.txt b/doc/INSTALL.txt
new file mode 100644
index 000000000..5b2d67e35
--- /dev/null
+++ b/doc/INSTALL.txt
@@ -0,0 +1,21 @@
+Fedora
+------
+
+$ sudo dnf install libtool automake
+$ make
+
+# Optional - install to system PATH
+
+$ sudo make install
+
+######################
+
+Ubuntu
+------
+
+$ sudo apt install libtool make automake
+$ make
+
+# Optional - install to system PATH
+
+$ sudo make install
diff --git a/doc/nostril.1 b/doc/nostril.1
new file mode 100644
index 000000000..550f0cd5d
--- /dev/null
+++ b/doc/nostril.1
@@ -0,0 +1,148 @@
+.\" Generated by scdoc 1.11.2
+.\" Complete documentation for this program is not available as a GNU info page
+.ie \n(.g .ds Aq \(aq
+.el .ds Aq '
+.nh
+.ad l
+.\" Begin generated content:
+.TH "nostril" "1" "1980-01-01"
+.P
+.SH NAME
+.P
+nostril - generate nostr events
+.P
+.SH SYNPOSIS
+.P
+\fBnostril\fR [OPTIONS.\&.\&.\&]
+.P
+.SH DESCRIPTION
+.P
+\fBnostril\fR is a tool that creates and signs nostr events.\&
+.P
+.SH OPTIONS
+.P
+\fB--content\fR
+.RS 4
+The text contents of the note
+.P
+.RE
+\fB--dm\fR <hex pubkey>
+.RS 4
+Create a direct message.\& This will create a kind-4 note with the
+contents encrypted>
+.P
+.RE
+\fB--envelope\fR
+.RS 4
+Wrap the event with `["EVENT", .\&.\&.\& ]` for easy relaying
+.P
+.RE
+\fB--kind\fR <number>
+.RS 4
+Set the kind of the note
+.P
+.RE
+\fB--created-at\fR <unix timestamp>
+.RS 4
+Set the created at.\& Optional, this is set automatically.\&
+.P
+.RE
+\fB--mine-pubkey\fR
+.RS 4
+Mine a pubkey.\& This may or may not be cryptographically dubious.\&
+.P
+.RE
+\fB--pow\fR <difficulty>
+.RS 4
+Number of leading 0 bits of the id the mine for proof-of-work.\&
+.P
+.RE
+\fB--tag\fR <key> <value>
+.RS 4
+Add a tag with a single value
+.P
+.RE
+\fB-t\fR
+.RS 4
+Shorthand for --tag t <hashtag>
+.P
+.RE
+\fB-p\fR
+.RS 4
+Shorthand for --tag p <hex pubkey>
+.P
+.RE
+\fB-e\fR
+.RS 4
+Shorthand for --tag e <note id>
+.P
+.P
+.RE
+.SH Examples
+.P
+\fBGenerate an event\fR
+.P
+.nf
+.RS 4
+$ \&./nostril --sec <key> --content "this is a message"
+{
+ "id": "da9c36bb8206e748cf136af2a43613a5ee113cb5906a09a8d3df5386039d53ab",
+ "pubkey": "4f6fa8547cf2888415522918175ea0bc0eb473287c5bd7cc459ca440bdf87d97",
+ "created_at": 1660750302,
+ "kind": 1,
+ "tags": [],
+ "content": "this is a message",
+ "sig": "3e4d7d93522e54f201a22944d4d37eb4505ef1cf91c278a3f7d312b772a6c6509d1e11f146d5a003265ae10411a20057bade2365501872d2f2f24219730eed87"
+}
+.fi
+.RE
+.P
+\fBWrap event to send to a relay\fR
+.P
+.nf
+.RS 4
+$ \&./nostril --envelope --sec <key> --content "hello"
+[ "EVENT",
+{
+ "id": "ed378d3fdda785c091e9311c6e6eeb075db349a163c5e38de95946f6013a8001",
+ "pubkey": "fd3fdb0d0d8d6f9a7667b53211de8ae3c5246b79bdaf64ebac849d5148b5615f",
+ "created_at": 1649948103,
+ "kind": 1,
+ "tags": [],
+ "content": "hello",
+ "sig": "9d9a49bbc66d4782030b24c71416965e790214d02a54ab132d960c2b02def0371c3d93e5a60a285c55e99721599d1332450731e2c6bb1114b96b591c6967f872"
+} ]
+.fi
+.RE
+.P
+\fBSend to a relay\fR
+.P
+.nf
+.RS 4
+nostril --envelope --sec <key> --content "this is a message" | websocat wss://relay\&.damus\&.io
+.fi
+.RE
+.P
+\fBSend a nip04 DM\fR
+.P
+.nf
+.RS 4
+nostril --envelope --dm <pubkey> --sec <key> --content "this is a secret" | websocat wss://relay\&.damus\&.io
+.fi
+.RE
+.P
+\fBMine a pubkey\fR
+.P
+.nf
+.RS 4
+nostril --mine-pubkey --pow <difficulty>
+.fi
+.RE
+.P
+\fBReply to an event.\& nip10 compliant, includes the `thread_id`\fR
+.P
+.nf
+.RS 4
+\&./nostril --envelope --sec <key> --content "this is reply message" --tag e <thread_id> --tag e <note_id> | websocat wss://relay\&.damus\&.io
+.fi
+.RE
commit cdbe192243cba89189acd4ab1596271c3a412f55
Author: randymcmillan <
[email protected]>
Date: Mon May 20 19:47:55 2024 -0400
CMakeLists.txt
diff --git a/CMakeLists.txt b/CMakeLists.txt
new file mode 100644
index 000000000..d5c847af7
--- /dev/null
+++ b/CMakeLists.txt
@@ -0,0 +1,77 @@
+if (MSVC)
+ cmake_minimum_required(VERSION 3.26)
+else()
+ cmake_minimum_required(VERSION 3.15)
+endif()
+set(CMAKE_BUILD_TYPE Debug)
+project (nostril C)
+
+include_directories(${CMAKE_SOURCE_DIR}/deps/secp256k1/include)
+add_subdirectory(${CMAKE_SOURCE_DIR}/deps/secp256k1)
+
+#//////////////////////////
+#windows.h header file has macros for min and max, nostril defines max
+#//////////////////////////
+
+if (MSVC)
+ add_definitions(-DNOMINMAX)
+ add_definitions(-D_CRT_SECURE_NO_WARNINGS)
+ add_definitions(-D_CRT_NONSTDC_NO_DEPRECATE)
+endif()
+
+#//////////////////////////
+#sources
+#//////////////////////////
+
+set(src ${src})
+set(src ${src} hex.h)
+set(src ${src} proof.h)
+set(src ${src} cursor.h)
+set(src ${src} endian.h)
+set(src ${src} random.h)
+set(src ${src} sha256.h)
+set(src ${src} sha256.c)
+set(src ${src} base64.h)
+set(src ${src} base64.c)
+set(src ${src} aes.h)
+set(src ${src} aes.c)
+if (MSVC)
+ set(src ${src} clock_gettime.h)
+endif()
+
+#//////////////////////////
+#link with libraries
+#lib_dep contains a cascade definition of all the libraries needed to link
+#//////////////////////////
+
+set(lib_dep ${lib_dep})
+set(lib_dep ${lib_dep} ${CMAKE_SOURCE_DIR}/deps/secp256k1/.libs/libsecp256k1.a)
+if (MSVC)
+ set(lib_dep ${lib_dep} ${CMAKE_SOURCE_DIR}/deps/secp256k1/src/Debug/libsecp256k1.lib)
+ set(lib_dep ${lib_dep} Bcrypt.lib)
+endif()
+
+
+#//////////////////////////
+#executables
+#//////////////////////////
+
+# tool to generate file 'config.h' , generate from a shell with
+# configurator.exe > config.h
+add_executable(configurator configurator.c)
+
+add_executable(nostril ${src} nostril.c)
+target_link_libraries (nostril ${lib_dep})
+
+#//////////////////////////
+# generate config.h
+#//////////////////////////
+
+add_custom_command(
+ TARGET configurator
+ POST_BUILD
+ COMMAND configurator > config.h
+ COMMAND ${CMAKE_COMMAND} -E copy "${CMAKE_BINARY_DIR}/config.h" ${CMAKE_SOURCE_DIR}
+ COMMENT "generating config.h"
+)
+
commit e3eeb9e7eac02fad8209d3df9b88e31385b12bc0
Author: randymcmillan <
[email protected]>
Date: Mon May 20 19:48:08 2024 -0400
.gitignore
diff --git a/.gitignore b/.gitignore
index 96b91d779..c7871487d 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,8 +1,52 @@
+cert.pem
+local_key
+
+CMakeCache.txt
+CMakeFiles/
+cmake_install.cmake
+deps/git/
+deps/hyper-nostr/
+deps/jq/
+deps/nostcat/
+deps/openssl/
+deps/tcl/
+ext/secp256k1/CMakeFiles/
+ext/secp256k1/CTestTestfile.cmake
+ext/secp256k1/DartConfiguration.tcl
+ext/secp256k1/cmake_install.cmake
+ext/secp256k1/src/CMakeFiles/
+ext/secp256k1/src/CTestTestfile.cmake
+ext/secp256k1/src/cmake_install.cmake
+node_modules/
+
+
*.o
+/.direnv/
+.privenv
nostril
+/result
configurator.out*
configurator
.build-result
.buildcmd
config.h
tags
+libsecp256k1.a
+/target
+
+Cargo.lock
+Cargo.toml
+*.json
+scripts/jb55-post
+scripts/nostr-follows
+scripts/nostr-req
+scripts/subnote
+/dist
+/version
+
+
+# Added by cargo
+#
+# already existing elements were commented out
+
+/target
commit cad034f5d084b58e8f8274a40e1427dbf305286b
Author: randymcmillan <
[email protected]>
Date: Mon May 20 19:48:27 2024 -0400
cargo.mk
diff --git a/cargo.mk b/cargo.mk
new file mode 100644
index 000000000..55e4ae095
--- /dev/null
+++ b/cargo.mk
@@ -0,0 +1,6 @@
+cargo-build-release::cargo-br
+cargo-br:
+ cargo build --release -vv
+cargo-install:cargo-i
+cargo-i:
+ cargo install --path . -vv $(FORCE)
commit 3aefb43ae08fe49fdc20087fdb233434eb155bc2
Author: randymcmillan <
[email protected]>
Date: Mon May 20 19:48:41 2024 -0400
COPYING
diff --git a/COPYING b/COPYING
new file mode 100644
index 000000000..39c6458d2
--- /dev/null
+++ b/COPYING
@@ -0,0 +1,19 @@
+Copyright © 2022 William Casarin
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of
+this software and associated documentation files (the “Software”), to deal in
+the Software without restriction, including without limitation the rights to
+use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
+of the Software, and to permit persons to whom the Software is furnished to do
+so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
commit c4ead26f9a0c5a7805e1ce3489ad355a3993ea8e
Author: randymcmillan <
[email protected]>
Date: Mon May 20 19:48:56 2024 -0400
CHANGELOG
diff --git a/CHANGELOG b/CHANGELOG
new file mode 100644
index 000000000..187d09d2b
--- /dev/null
+++ b/CHANGELOG
@@ -0,0 +1,4 @@
+
+# 0.1.0
+
+Initial release
commit 17baf2bd03e59172f2d9cfd4b59cd6fd532c3d73
Author: randymcmillan <
[email protected]>
Date: Mon May 20 19:49:35 2024 -0400
nostril-query
diff --git a/nostril-query b/nostril-query
new file mode 100755
index 000000000..4227352dd
--- /dev/null
+++ b/nostril-query
@@ -0,0 +1,56 @@
+#!/usr/bin/env python3
+
+import sys
+import argparse
+import json
+
+parser = argparse.ArgumentParser(prog = 'nostril-query', description = 'Construct nostr queries')
+parser.add_argument('-a', '--authors')
+parser.add_argument('-p', '--mentions')
+parser.add_argument('-e', '--references')
+parser.add_argument('-t', '--hashtag')
+parser.add_argument('-i', '--ids')
+parser.add_argument('-k', '--kinds')
+parser.add_argument('-g',
+ '--generic',
+ nargs=2,
+ metavar=('tag', 'value'),
+ help="Generic tag query: `#<tag>: value`")
+parser.add_argument('-l', '--limit', type=int)
+
+def usage():
+ parser.print_help()
+ sys.exit(1)
+
+args = parser.parse_args()
+
+filt = {}
+
+if args.authors:
+ filt["authors"] = args.authors.split(",")
+
+if args.ids:
+ filt["ids"] = args.ids.split(",")
+
+if args.limit is not None:
+ filt["limit"] = args.limit
+
+if args.generic:
+ (tag, val) = args.generic
+ filt["#" + tag] = val.split(",")
+
+if args.hashtag is not None:
+ filt["#t"] = args.hashtag.split(",")
+
+if args.mentions is not None:
+ filt["#p"] = args.mentions.split(",")
+
+if args.references is not None:
+ filt["#e"] = args.references.split(",")
+
+if args.kinds is not None:
+ kinds = args.kinds.split(",")
+ filt["kinds"] = [a for a in map(lambda s: int(s), kinds)]
+
+q = json.dumps(["REQ","nostril-query",filt])
+print(q)
commit 6647a6880da5d716afce9ec097be20ad99b0d873
Author: randymcmillan <
[email protected]>
Date: Mon May 20 19:49:07 2024 -0400
README.md
diff --git a/README.md b/README.md
new file mode 100644
index 000000000..e7832096d
--- /dev/null
+++ b/README.md
@@ -0,0 +1,107 @@
+nostril(1)
+
+# NAME
+
+nostril - generate nostr events
+
+# SYNPOSIS
+
+*nostril* [OPTIONS...]
+
+# DESCRIPTION
+
+*nostril* is a tool that creates and signs nostr events.
+
+# OPTIONS
+
+*--content*
+ The text contents of the note
+
+*--dm* <hex pubkey>
+ Create a direct message. This will create a kind-4 note with the
+ contents encrypted>
+
+*--envelope*
+ Wrap the event with `["EVENT", ... ]` for easy relaying
+
+*--kind* <number>
+ Set the kind of the note
+
+*--created-at* <unix timestamp>
+ Set the created at. Optional, this is set automatically.
+
+*--mine-pubkey*
+ Mine a pubkey. This may or may not be cryptographically dubious.
+
+*--pow* <difficulty>
+ Number of leading 0 bits of the id the mine for proof-of-work.
+
+*--tag* <key> <value>
+ Add a tag with a single value
+
+*-t*
+ Shorthand for --tag t <hashtag>
+
+*-p*
+ Shorthand for --tag p <hex pubkey>
+
+*-e*
+ Shorthand for --tag e <note id>
+
+
+# Examples
+
+*Generate an event*
+
+```
+$ ./nostril --sec <key> --content "this is a message"
+{
+ "id": "da9c36bb8206e748cf136af2a43613a5ee113cb5906a09a8d3df5386039d53ab",
+ "pubkey": "4f6fa8547cf2888415522918175ea0bc0eb473287c5bd7cc459ca440bdf87d97",
+ "created_at": 1660750302,
+ "kind": 1,
+ "tags": [],
+ "content": "this is a message",
+ "sig": "3e4d7d93522e54f201a22944d4d37eb4505ef1cf91c278a3f7d312b772a6c6509d1e11f146d5a003265ae10411a20057bade2365501872d2f2f24219730eed87"
+}
+```
+
+*Wrap event to send to a relay*
+
+```
+$ ./nostril --envelope --sec <key> --content "hello"
+[ "EVENT",
+{
+ "id": "ed378d3fdda785c091e9311c6e6eeb075db349a163c5e38de95946f6013a8001",
+ "pubkey": "fd3fdb0d0d8d6f9a7667b53211de8ae3c5246b79bdaf64ebac849d5148b5615f",
+ "created_at": 1649948103,
+ "kind": 1,
+ "tags": [],
+ "content": "hello",
+ "sig": "9d9a49bbc66d4782030b24c71416965e790214d02a54ab132d960c2b02def0371c3d93e5a60a285c55e99721599d1332450731e2c6bb1114b96b591c6967f872"
+} ]
+```
+
+*Send to a relay*
+
+```
+nostril --envelope --sec <key> --content "this is a message" | websocat wss://relay.damus.io
+```
+
+*Send a nip04 DM*
+
+```
+nostril --envelope --dm <pubkey> --sec <key> --content "this is a secret" | websocat wss://relay.damus.io
+```
+
+*Mine a pubkey*
+
+```
+nostril --mine-pubkey --pow <difficulty>
+```
+
+*Reply to an event. nip10 compliant, includes the `thread_id`*
+
+```
+./nostril --envelope --sec <key> --content "this is reply message" --tag e <thread_id> --tag e <note_id> | websocat wss://relay.damus.io
+```
commit 8bca09db2db785c4dc0cbfdaf645776c2e791f4b
Author: randymcmillan <
[email protected]>
Date: Mon May 20 19:49:57 2024 -0400
default.nix
diff --git a/default.nix b/default.nix
new file mode 100644
index 000000000..39cc571b9
--- /dev/null
+++ b/default.nix
@@ -0,0 +1,13 @@
+{ pkgs ? import <nixpkgs> {} }:
+
+with pkgs;
+stdenv.mkDerivation {
+ pname = "nostril";
+ version = "0.1";
+
+ src = ./.;
+
+ makeFlags = [ "PREFIX=$(out)" ];
+
+ buildInputs = [ secp256k1 ];
+}
commit 5f081b2147e1c8b7efcc6f0988c13125754d1ef8
Author: randymcmillan <
[email protected]>
Date: Mon May 20 19:50:10 2024 -0400
shell.nix
diff --git a/shell.nix b/shell.nix
index 283c62857..e9e3d7924 100644
--- a/shell.nix
+++ b/shell.nix
@@ -1,5 +1,5 @@
{ pkgs ? import <nixpkgs> {} }:
with pkgs;
mkShell {
- buildInputs = [ secp256k1 ];
+ buildInputs = [ secp256k1 gdb autoreconfHook ];
}
commit 37f834c1e7f7c6fcbde8ea5360ab155fc54b49d6
Author: randymcmillan <
[email protected]>
Date: Mon May 20 19:51:06 2024 -0400
.github
diff --git a/.github/workflows/c-cpp.yml b/.github/workflows/c-cpp.yml
new file mode 100644
index 000000000..b42baf712
--- /dev/null
+++ b/.github/workflows/c-cpp.yml
@@ -0,0 +1,17 @@
+name: C/C++ CI
+
+on:
+ push:
+ branches: [ "master", "**" ]
+ pull_request:
+ branches: [ "master" ]
+
+jobs:
+ build:
+
+ runs-on: ubuntu-latest
+
+ steps:
+ - uses: actions/checkout@v3
+ - name: make
+ run: make
#AuraGang https://image.nostr.build/ba7b6fa1b025bb23120e8c06fa83f057cc803c71898104eabcca3651fa53a203.jpg
commit 83d3a671790d34e3c37f74b93f3432c282246440
Author: randymcmillan <
[email protected]>
Date: Mon May 20 19:58:26 2024 -0400
Cargo.toml:v0.0.0
diff --git a/Cargo.toml b/Cargo.toml
new file mode 100644
index 000000000..b86064156
--- /dev/null
+++ b/Cargo.toml
@@ -0,0 +1,27 @@
+[workspace]
+[package]
+name = "gnostr"
+version = "0.0.44"
+license = "Apache-2.0"
+rust-version = "1.76"
+edition = "2021"
+readme = "README.md"
+homepage = "https://github.com/gnostr-org/gnostr"
+repository = "https://github.com/gnostr-org/gnostr"
+documentation = "https://github.com/gnostr"
+categories = ["version-control", "development-tools", "gnostr", "nostr"]
+keywords = ["git", "gnostr", "nostr"]
+description = "git+nostr workflow utility"
+authors = ["gnostr <
[email protected]>","Mike Dilger <
[email protected]>", "DanConwayDev <
[email protected]>", "Max Inden <
[email protected]>","fiatjaf <
[email protected]>", "Nate Levin <
[email protected]>", "Nethanja Focking <
[email protected]>", "Daniele Tonon <
[email protected]>", "jeremyd (@jeremyd)"]
+
+exclude = [".github", "deps", "scripts", "docs"]
+
+[build-dependencies]
+cc = { version = "1.0.98", features = ["libc"] }
+include_dir = { version = "0.7.3", features = ["glob", "metadata"] }
+markdown = { version = "1.0.0-alpha.17", features = ["json", "log", "serde"] }
+
+[dependencies]
+cc = "1.0.98"
+include_dir = { version = "0.7.3", features = ["glob", "metadata"] }
+markdown = { version = "1.0.0-alpha.17", features = ["json", "log", "serde"] }
RT @sino24tsuki: 立ち上がった先でつかんだ、大切なもの。
#無職転生 https://t.co/C9awY8BRDn https://pbs.twimg.com/media/GRecLvFbcAAGuNc.jpg
https://www.youtube.com/watch?v=kXYiU_JCYtU
Thanks to @nprofile…56dk giving me #beer envy at #BTCPrague, and a lovely wife that listens and provides.
🍺😋👌
https://image.nostr.build/8383587328bcbac984277f2c3cfd2813e22bacf4690d77e80b98ef558662d42c.jpg
#Beerstr #Cheerstr
The organic chaos of an open protocol leads to monopoly because the only way to escape the chaos is to only use one implementation.
commit ef368ad477368ba7596968fffe376c28e78e9940
Author: randymcmillan <
[email protected]>
Date: Tue Sep 5 06:30:05 2023 -0400
make:detect:brew install git-archive-all
diff --git a/GNUmakefile b/GNUmakefile
index 9eddf07f4..8d7bfa4f9 100644
--- a/GNUmakefile
+++ b/GNUmakefile
@@ -207,6 +207,7 @@ endif
#bash -c "[ '$(shell uname -s)' == 'Darwin' ] && brew install --cask docker || echo "
#bash -c "[ '$(shell uname -s)' == 'Darwin' ] && brew install gcc || echo "
bash -c "[ '$(shell uname -s)' == 'Darwin' ] && brew install gettext || echo "
+ bash -c "[ '$(shell uname -s)' == 'Darwin' ] && brew install git-archive-all || echo "
bash -c "[ '$(shell uname -s)' == 'Darwin' ] && brew install git-gui || echo "
bash -c "[ '$(shell uname -s)' == 'Darwin' ] && brew install glib-openssl || echo "
bash -c "[ '$(shell uname -s)' == 'Darwin' ] && brew install golang || echo "
commit d2982dc64a2e5891f5a9ada8fc2401bcba3aa284
Author: randymcmillan <
[email protected]>
Date: Tue Sep 5 06:22:24 2023 -0400
CHANGELOG: update
diff --git a/CHANGELOG b/CHANGELOG
index 6515dbfc5..77d6f4ca2 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,12 +1 @@
-0.0.0_28
-e15dee1c9 CHANGELOG:
-d0515f9f7 deps/gnostr-git: squashed: v0.0.0
-c64138a84 CHANGELOG: update
-d72df9b76 CHANGELOG:
-ea1334a8b CHANGELOG: update
-6a646f9c0 make: version: no cat $@
-a0ea4b6f4 .gitmodules: deps/gnostr-git:v0.0.1
-84c546177 deps/gnostr-git: v0.0.1
-26d6b4c3e deps/gnostr-git: v0.0.0_22
-ad8f0ef1f CHANGELOG: update
-995c65a0e .github/workflows/ubuntu-pre-release.yml: make submodules
+0.0.0
commit bcc034c3b3afcea13d84b6cdd12071128aa4324b
Author: randymcmillan <
[email protected]>
Date: Tue Sep 5 06:50:27 2023 -0400
gnostr.mk:make dist:use virtualenv git-archive-all
diff --git a/gnostr.mk b/gnostr.mk
index bd6110cf1..a8e73a729 100644
--- a/gnostr.mk
+++ b/gnostr.mk
@@ -448,11 +448,10 @@ dist: gnostr-docs version## create tar distribution
$(shell which python3) -m pip install git-archive-all;\
mv dist dist-$(VERSION)-$(OS)-$(ARCH)-$(TIME) || echo;\
mkdir -p dist && touch dist/.gitkeep;\
- cat version > CHANGELOG && git add -f CHANGELOG && git commit -m "CHANGELOG: update" 2>/dev/null || echo\;
- git log $(shell git describe --tags --abbrev=0)..@^1 --oneline | sed '/Merge/d' >> CHANGELOG\;
- cp CHANGELOG dist/CHANGELOG.txt\;
- git rm -rf deps/gnostr-proxy/resources/js/isomophic-git/__tests__\;
- $(PYTHON3) -m git-archive-all -C . --force-submodules dist/gnostr-$(VERSION)-$(OS)-$(ARCH).tar\;
+ cat version > CHANGELOG && git add -f CHANGELOG && git commit -m "CHANGELOG: update" 2>/dev/null || echo;\
+ git log $(shell git describe --tags --abbrev=0)..@^1 --oneline | sed '/Merge/d' >> CHANGELOG;\
+ cp CHANGELOG dist/CHANGELOG.txt;\
+ git-archive-all -C . --force-submodules dist/gnostr-$(VERSION)-$(OS)-$(ARCH).tar;\
);
dist-sign:## dist-sign
commit a616025ffb26cb11c8552e3fd55e43afb81f75a7
Author: randymcmillan <
[email protected]>
Date: Tue Sep 5 06:46:03 2023 -0400
CHANGELOG: update
diff --git a/gnostr.mk b/gnostr.mk
index 5ffd860dd..bd6110cf1 100644
--- a/gnostr.mk
+++ b/gnostr.mk
@@ -441,13 +441,19 @@ gnostr-all:gnostr gnostr-install gnostr-cat gnostr-grep gnostr-sha256 gnostr-com
$(MAKE) gnostr-build-install
dist: gnostr-docs version## create tar distribution
- mv dist dist-$(VERSION)-$(OS)-$(ARCH)-$(TIME) || echo
- mkdir -p dist && touch dist/.gitkeep
- cat version > CHANGELOG && git add -f CHANGELOG && git commit -m "CHANGELOG: update" 2>/dev/null || echo
- git log $(shell git describe --tags --abbrev=0)..@^1 --oneline | sed '/Merge/d' >> CHANGELOG
- cp CHANGELOG dist/CHANGELOG.txt
- #git rm -rf deps/gnostr-proxy/resources/js/isomophic-git/__tests__
- git-archive-all -C . --force-submodules dist/gnostr-$(VERSION)-$(OS)-$(ARCH).tar
+ source .venv/bin/activate; pip install -r requirements.txt;
+ test -d .venv || $(shell which python3) -m virtualenv .venv;
+ ( \
+ $(shell which python3) -m pip install -r requirements.txt;\
+ $(shell which python3) -m pip install git-archive-all;\
+ mv dist dist-$(VERSION)-$(OS)-$(ARCH)-$(TIME) || echo;\
+ mkdir -p dist && touch dist/.gitkeep;\
+ cat version > CHANGELOG && git add -f CHANGELOG && git commit -m "CHANGELOG: update" 2>/dev/null || echo\;
+ git log $(shell git describe --tags --abbrev=0)..@^1 --oneline | sed '/Merge/d' >> CHANGELOG\;
+ cp CHANGELOG dist/CHANGELOG.txt\;
+ git rm -rf deps/gnostr-proxy/resources/js/isomophic-git/__tests__\;
+ $(PYTHON3) -m git-archive-all -C . --force-submodules dist/gnostr-$(VERSION)-$(OS)-$(ARCH).tar\;
+ );
dist-sign:## dist-sign
cd dist && \touch SHA256SUMS-$(VERSION)-$(OS)-$(ARCH).txt && \
commit 18fa2600bc6bb3233de309c9cdba98fa181282d0
Author: randymcmillan <
[email protected]>
Date: Tue Sep 5 12:35:42 2023 -0400
deps/gnostr-git:NO_GETTEXT=1 make
MacOS Arm64 build working
diff --git a/deps/gnostr-git b/deps/gnostr-git
index c8e76a6b6..515ea964a 160000
--- a/deps/gnostr-git
+++ b/deps/gnostr-git
@@ -1 +1 @@
-Subproject commit c8e76a6b69273da184ca7d60686417afcc5505cc
+Subproject commit 515ea964a77eeec3d5d48482578bd6420e054027
commit cecfe5201f88a16d0bc9ed365bb11ba483868cff
Author: randymcmillan <
[email protected]>
Date: Tue Sep 5 14:50:46 2023 -0400
CHANGELOG: update
diff --git a/gnostr.mk b/gnostr.mk
index a3ebe1503..21ba50855 100644
--- a/gnostr.mk
+++ b/gnostr.mk
@@ -451,9 +451,9 @@ dist: gnostr-docs version## create tar distribution
mv dist dist-$(VERSION)-$(OS)-$(ARCH)-$(TIME) || echo;\
mkdir -p dist && touch dist/.gitkeep;\
cat version > CHANGELOG && git add -f CHANGELOG && git commit -m "CHANGELOG: update" 2>/dev/null || echo;\
- git log $(shell git describe --tags --abbrev=0)...@^1 --oneline | sed '/Merge/d' >> CHANGELOG;\
+ git log $(shell git describe --tags --abbrev=0)...@^1 --oneline >> CHANGELOG;\
cp CHANGELOG dist/CHANGELOG.txt;\
- git-archive-all -C . --force-submodules dist/gnostr-$(VERSION)-$(OS)-$(ARCH).tar;\
+ git-archive-all -C . dist/gnostr-$(VERSION)-$(OS)-$(ARCH).tar >/tmp/gnostr-make-dist.log;\
);
dist-sign:## dist-sign
commit d8cb11e6fddd1532a0aa22d22dd05e2e85736f7a
Author: randymcmillan <
[email protected]>
Date: Tue Sep 5 21:10:48 2023 -0400
make:gnostr-cat
.github/workflows/release.yml
.gitignore
gnostr.mk
diff --git a/.gitignore b/.gitignore
index 9245d1bae..4e6cd455b 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,5 +1,6 @@
gnostr
gnostr-act
+gnostr-cat
gnostr-cli
gnostr-command
gnostr-get-relays
diff --git a/gnostr.mk b/gnostr.mk
index 21ba50855..7280b9c10 100644
--- a/gnostr.mk
+++ b/gnostr.mk
@@ -240,13 +240,13 @@ deps/gnostr-cat/.git:
#.PHONY:deps/gnostr-cat
deps/gnostr-cat:deps/gnostr-cat/.git
cd deps/gnostr-cat && \
- make cargo-install
+ make cargo-build-release install
.PHONY:deps/gnostr-cat/target/release/gnostr-cat
.PHONY:gnostr-cat
gnostr-cat:deps/gnostr-cat/target/release/gnostr-cat
cd deps/gnostr-cat && \
make install
- @cp $@ gnostr-cat || echo "" 2>/dev/null
+ cp $< $@
commit 263ac645c9a9bdd8736e2d7cf448bf6e2cd2bd6a
Author: randymcmillan <
[email protected]>
Date: Tue Sep 5 14:20:17 2023 -0400
CHANGELOG: update
diff --git a/gnostr.mk b/gnostr.mk
index a8e73a729..a3ebe1503 100644
--- a/gnostr.mk
+++ b/gnostr.mk
@@ -440,6 +440,8 @@ gnostr-query-test:gnostr-cat gnostr-query gnostr-install
gnostr-all:gnostr gnostr-install gnostr-cat gnostr-grep gnostr-sha256 gnostr-command gnostr-proxy gnostr-query gnostr-git gnostr-legit gnostr-act gnostr-cli
$(MAKE) gnostr-build-install
+## git log $(git describe --tags --abbrev=0)...@^1
+
dist: gnostr-docs version## create tar distribution
source .venv/bin/activate; pip install -r requirements.txt;
test -d .venv || $(shell which python3) -m virtualenv .venv;
@@ -449,7 +451,7 @@ dist: gnostr-docs version## create tar distribution
mv dist dist-$(VERSION)-$(OS)-$(ARCH)-$(TIME) || echo;\
mkdir -p dist && touch dist/.gitkeep;\
cat version > CHANGELOG && git add -f CHANGELOG && git commit -m "CHANGELOG: update" 2>/dev/null || echo;\
- git log $(shell git describe --tags --abbrev=0)..@^1 --oneline | sed '/Merge/d' >> CHANGELOG;\
+ git log $(shell git describe --tags --abbrev=0)...@^1 --oneline | sed '/Merge/d' >> CHANGELOG;\
cp CHANGELOG dist/CHANGELOG.txt;\
git-archive-all -C . --force-submodules dist/gnostr-$(VERSION)-$(OS)-$(ARCH).tar;\
);
Oh, so it isn't just me. I kept saying this but nobody else was. I switched to my Alby.
commit 77be7a1291c6b7cc4d0383bdc4f2f2bc77dcbabf
Author: randymcmillan <
[email protected]>
Date: Tue Sep 5 21:13:48 2023 -0400
.gitignore:node_modules
diff --git a/.gitignore b/.gitignore
index 4e6cd455b..0d33f58b8 100644
--- a/.gitignore
+++ b/.gitignore
@@ -13,6 +13,7 @@ gnostr-sha256
src/nostril/libnostri.a
src/nostril/nostril
+node_modules
## libnostr.a
## src/nostril/libnostri.a
commit 7dfbd9175fcf3e70a56b5d1abd323bcb72102647
Author: randymcmillan <
[email protected]>
Date: Tue Sep 5 21:13:15 2023 -0400
make:detect: brew intall expat
diff --git a/GNUmakefile b/GNUmakefile
index 8d7bfa4f9..c83b9e23b 100644
--- a/GNUmakefile
+++ b/GNUmakefile
@@ -206,6 +206,7 @@ endif
bash -c "[ '$(shell uname -s)' == 'Darwin' ] && brew install coreutils || echo "
#bash -c "[ '$(shell uname -s)' == 'Darwin' ] && brew install --cask docker || echo "
#bash -c "[ '$(shell uname -s)' == 'Darwin' ] && brew install gcc || echo "
+ bash -c "[ '$(shell uname -s)' == 'Darwin' ] && brew install expat || echo "
bash -c "[ '$(shell uname -s)' == 'Darwin' ] && brew install gettext || echo "
bash -c "[ '$(shell uname -s)' == 'Darwin' ] && brew install git-archive-all || echo "
bash -c "[ '$(shell uname -s)' == 'Darwin' ] && brew install git-gui || echo "
commit 027cd14a4e8a338cc331583990c01d77677f12a1
Author: randymcmillan <
[email protected]>
Date: Tue Sep 5 21:15:25 2023 -0400
make:gnostr-git
gnostr.mk
diff --git a/gnostr.mk b/gnostr.mk
index 93002b470..5c1cc9f69 100644
--- a/gnostr.mk
+++ b/gnostr.mk
@@ -152,12 +152,14 @@ deps/gnostr-web/.git:
deps/gnostr-git/.git:
@devtools/refresh-submodules.sh deps/gnostr-git
+.PHONY:deps/gnostr-git/gnostr-git
deps/gnostr-git/gnostr-git:deps/gnostr-git/.git
+ install -v template/gnostr-* /usr/local/bin >/tmp/gnostr-git.log
cd deps/gnostr-git && make && make install
+.PHONY:gnostr-git
gnostr-git:deps/gnostr-git/gnostr-git## gnostr-git
cp $< $@
install $@ /usr/local/bin/
- install -v template/gnostr-* /usr/local/bin >/tmp/gnostr-git.log
commit 87e210a7741557f09262abed7587f285ce049e05
Author: randymcmillan <
[email protected]>
Date: Tue Sep 5 21:14:29 2023 -0400
gnostr.mk
.PHONY:deps/secp256k1/configure
diff --git a/gnostr.mk b/gnostr.mk
index 7280b9c10..93002b470 100644
--- a/gnostr.mk
+++ b/gnostr.mk
@@ -107,7 +107,8 @@ submodules:deps/secp256k1/.git deps/gnostr-git/.git deps/gnostr-cat/.git deps/hy
deps/secp256k1/.git:
devtools/refresh-submodules.sh deps/secp256k1
deps/secp256k1/include/secp256k1.h: deps/secp256k1/.git
-#.PHONY:deps/secp256k1/configure
+.PHONY:deps/secp256k1/configure
+## force configure if build on host then in docker vm
deps/secp256k1/configure: deps/secp256k1/include/secp256k1.h
cd deps/secp256k1 && \
./autogen.sh && \
commit 1b542ee5d2e32a38c81428add35d9310bfcf57b7
Author: randymcmillan <
[email protected]>
Date: Tue Sep 5 21:57:39 2023 -0400
.github/workflows/pre-release.yml:simple
diff --git a/.github/workflows/gnostr.yml b/.github/workflows/gnostr.yml
index 8822854f1..e15683c4e 100644
--- a/.github/workflows/gnostr.yml
+++ b/.github/workflows/gnostr.yml
@@ -29,12 +29,6 @@ jobs:
os: [ubuntu-latest, macos-latest]
runs-on: ${{ matrix.os }}
steps:
- - uses: docker-practice/actions-setup-docker@master
- timeout-minutes: 12
- - run: |
- set -x
- docker version
- docker run --rm hello-world
- name: echo test
#if: ${{ !env.ACT }}
run: |
@@ -82,28 +76,7 @@ jobs:
- run: python3 -m pip install virtualenv
- run: V=1 make detect && cmake .
- - run: V=1 make install
-
- run: V=1 make gnostr
- - run: V=1 make gnostr-act
- - run: V=1 make gnostr-cat
- - run: V=1 make gnostr-cli
- - run: V=1 make gnostr-client
- #- run: V=1 make gnostr-command
- #- run: V=1 make gnostr-docs
- - run: V=1 make gnostr-get-relays
- - run: V=1 make gnostr-git
- - run: V=1 make gnostr-gnode
- - run: V=1 make gnostr-grep
- - run: V=1 make gnostr-install
- - run: V=1 make gnostr-legit
- - run: V=1 make gnostr-proxy
- - run: V=1 make gnostr-query
- #- run: V=1 make gnostr-query-test
- - run: V=1 make gnostr-req
- - run: V=1 make gnostr-set-relays
- - run: V=1 make gnostr-sha256
- - run: V=1 make gnostr-tests
- name: Save deps
id: cache-deps-save
diff --git a/.github/workflows/pre-release.yml b/.github/workflows/pre-release.yml
index eb48022b5..e28dcf010 100755
--- a/.github/workflows/pre-release.yml
+++ b/.github/workflows/pre-release.yml
@@ -12,6 +12,7 @@ on:
# A workflow run is made up of one or more jobs that can run sequentially or in parallel
jobs:
build:
+ permissions: write-all
env:
GNOSTR: "gnostr"
strategy:
@@ -67,34 +68,7 @@ jobs:
- run: python3 -m pip install virtualenv
- run: V=1 make detect && cmake .
- - run: V=1 make install
-
- run: V=1 make gnostr
- - run: V=1 make gnostr-act
- - run: V=1 make gnostr-cat
- - run: V=1 make gnostr-cli
- - run: V=1 make gnostr-client
- #- run: V=1 make gnostr-command
- - run: V=1 make gnostr-get-relays
- - run: V=1 make gnostr-git
- - run: V=1 make gnostr-gnode
- - run: V=1 make gnostr-grep
- - run: V=1 make gnostr-install
- - run: V=1 make gnostr-legit
- - run: V=1 make gnostr-proxy
- - run: V=1 make gnostr-query
- #- run: V=1 make gnostr-query-test
- - run: V=1 make gnostr-req
- - run: V=1 make gnostr-set-relays
- - run: V=1 make gnostr-sha256
-
- - uses: docker-practice/actions-setup-docker@master
- timeout-minutes: 12
- - run: |
- set -x
- docker version
-
- - run: V=1 make gnostr-docs
- run: V=1 make gnostr-tests
- name: "Build release"
@@ -115,7 +89,7 @@ jobs:
prerelease: true
title: "Release Build"
files: |
- gnostr-*
+ README
- name: Save deps
id: cache-deps-save
commit 9a5fa8769ef166b8cfb655a3e0cf17b7bb0c6e45
Author: randymcmillan <
[email protected]>
Date: Wed Sep 6 12:37:40 2023 -0400
make:clean-gnostr
diff --git a/clean.mk b/clean.mk
index 8de88d7e1..4c69525e5 100644
--- a/clean.mk
+++ b/clean.mk
@@ -1,6 +1,6 @@
##clean
## remove gnostr *.o *.a gnostr.1
-cleann:## remove gnostr *.o *.a gnostr.1
+clean-gnostr:## remove gnostr *.o *.a gnostr.1
rm -rf $(shell which gnostr) || echo
rm -rf /usr/local/share/man/man1/gnostr.1 || echo
rm -f gnostr *.o *.a || echo
@@ -27,6 +27,7 @@ clean-secp:## remove deps/secp256k1/.libs/libsecp256k1.* libsecp256k1.a
clean-gnostr-git:## remove deps/gnostr-git gnostr-git
rm -rf libgit.a || echo
cd deps/gnostr-git && find . -type f -name '*.o' -print0 | rm -f || echo
+
##clean-gnostr-legit
## remove deps/gnostr-git/gnostr-legit
## remove gnostr-legit
@@ -39,27 +40,8 @@ clean-gnostr-legit:## remove deps/gnostr-legit gnostr-legit
clean-gnostr-cat:## remove deps/gnostr-cat
cd deps/gnostr-cat && find . -type f -name '*.o' -print0 | rm -f || echo
-##clean-gnostr-relay
-## remove deps/gnostr-relay
-clean-gnostr-relay:## remove deps/gnostr-relay
- cd deps/gnostr-relay && find . -type f -name '*.o' -print0 | rm -f || echo
-
-##clean-tcl
-## remove deps/tcl
-clean-tcl:## remove deps/tcl
- cd deps/tcl&& find . -type f -name '*.o' -print0 | rm -f || echo
-
-##clean-jq
-## remove deps/jq
-clean-jq:## remove deps/jq
- cd deps/jq && find . -type f -name '*.o' -print0 | rm -f || echo
-
-##clean-openssl
-## remove deps/openssl
-clean-openssl:## remove deps/openssl
- cd deps/openssl && rm -rf gost-engine && rm -rf fuzz && find . -type f -name '*.o' -print0 | rm -f || echo
-
-clean-all:clean clean-hyper-nostr clean-secp clean-gnostr-git clean-openssl## clean clean-*
+clean-all:clean clean-hyper-nostr clean-secp clean-gnostr-git clean-gnostr-legit clean-gnostr-cat## clean clean-*
##clean-all
## clean clean-hyper-nostr clean-secp clean-gnostr-git clean-tcl clean-jq
find . -type f -name '*.o' -print0 | rm -f
+ find . -type f -name '*.a' -print0 | rm -f
commit 6bba08ac4bb81870432ba1cdd3a90d71d23dc61a
Author: randymcmillan <
[email protected]>
Date: Wed Sep 6 12:40:08 2023 -0400
gnostr:deps/secp256k1
diff --git a/gnostr.mk b/gnostr.mk
index 4eb984261..64ddea0f5 100644
--- a/gnostr.mk
+++ b/gnostr.mk
@@ -313,7 +313,7 @@ gnostr-act:deps/gnostr-act/.git
@$(CC) $(CFLAGS) -c $< -o $@
.PHONY:gnostr
-gnostr:libsecp256k1.a $(HEADERS) $(GNOSTR_OBJS) $(ARS)## make gnostr binary
+gnostr:deps/secp256k1/.libs/libsecp256k1.a libsecp256k1.a $(HEADERS) $(GNOSTR_OBJS) $(ARS)## make gnostr binary
##gnostr initialize
## git submodule update --init --recursive
## $(CC) $(CFLAGS) $(GNOSTR_OBJS) $(ARS) -o $@
commit 626fbcd037db2a638f6d930afa168ef1ccfb7550
Author: randymcmillan <
[email protected]>
Date: Wed Sep 6 14:15:51 2023 -0400
.gitignore
diff --git a/.gitignore b/.gitignore
index 0d33f58b8..9e3d49caf 100644
--- a/.gitignore
+++ b/.gitignore
@@ -2,21 +2,24 @@ gnostr
gnostr-act
gnostr-cat
gnostr-cli
+gnostr-client
gnostr-command
gnostr-get-relays
gnostr-git
gnostr-git-instaweb
+gnostr-gnode
gnostr-grep
gnostr-legit
+gnostr-req
gnostr-set-relays
gnostr-sha256
+gnostr-tests
src/nostril/libnostri.a
src/nostril/nostril
-node_modules
+libnostr.a
-## libnostr.a
-## src/nostril/libnostri.a
+node_modules
## Cargo.lock
## Cargo.toml
commit c22c2f2b366680b511590c5c30dfb86ed14b3781
Author: randymcmillan <
[email protected]>
Date: Fri Sep 8 10:52:20 2023 -0400
gnostr.mk:make gnostr-cat
diff --git a/gnostr.mk b/gnostr.mk
index 640d83cdc..928fdad2d 100644
--- a/gnostr.mk
+++ b/gnostr.mk
@@ -242,9 +242,10 @@ deps/gnostr-cat/.git:
@devtools/refresh-submodules.sh deps/gnostr-cat
#.PHONY:deps/gnostr-cat
deps/gnostr-cat:deps/gnostr-cat/.git
+.PHONY:deps/gnostr-cat/target/release/gnostr-cat
+deps/gnostr-cat/target/release/gnostr-cat:deps/gnostr-cat
cd deps/gnostr-cat && \
make cargo-build-release install
-.PHONY:deps/gnostr-cat/target/release/gnostr-cat
.PHONY:gnostr-cat
gnostr-cat:deps/gnostr-cat/target/release/gnostr-cat
cd deps/gnostr-cat && \
commit 5e391d501ec9d93e08616244afe5fd1981186f77
Author: randymcmillan <
[email protected]>
Date: Fri Sep 8 11:31:27 2023 -0400
make:gnostr:libsecp256k1.a
diff --git a/gnostr.mk b/gnostr.mk
index 928fdad2d..f51978e48 100644
--- a/gnostr.mk
+++ b/gnostr.mk
@@ -107,19 +107,15 @@ submodules:deps/secp256k1/.git deps/gnostr-git/.git deps/gnostr-cat/.git deps/hy
deps/secp256k1/.git:
devtools/refresh-submodules.sh deps/secp256k1
deps/secp256k1/include/secp256k1.h: deps/secp256k1/.git
-.PHONY:deps/secp256k1/configure
+#.PHONY:deps/secp256k1/configure
## force configure if build on host then in docker vm
deps/secp256k1/configure: deps/secp256k1/include/secp256k1.h
cd deps/secp256k1 && \
./autogen.sh && \
- ./configure --enable-module-ecdh --enable-module-schnorrsig --enable-module-extrakeys --disable-benchmark --disable-tests
-#.PHONY:deps/secp256k1/.libs/libsecp256k1.a
+ ./configure --enable-module-ecdh --enable-module-schnorrsig --enable-module-extrakeys --disable-benchmark --disable-tests && make -j
+.PHONY:deps/secp256k1/.libs/libsecp256k1.a
deps/secp256k1/.libs/libsecp256k1.a:deps/secp256k1/configure
- cd deps/secp256k1 && \
- make -j
-.PHONY:libsecp256k1.a
-.PHONY:libsecp256k1.a
-libsecp256k1.a: deps/secp256k1/.libs/libsecp256k1.a## libsecp256k1.a
+libsecp256k1.a:deps/secp256k1/.libs/libsecp256k1.a## libsecp256k1.a
cp $< $@
##libsecp256k1.a
## deps/secp256k1/.git
@@ -342,7 +338,7 @@ gnostr-install:
mkdir -p $(PREFIX)/bin
mkdir -p $(PREFIX)/include
@install -m755 -v include/*.* $(PREFIX)/include 2>/dev/null
- @install -m755 -v gnostr $(PREFIX)/bin 2>/dev/null
+ @install -m755 -v gnostr $(PREFIX)/bin 2>/dev/null || echo "Try:\nmake gnostr"
@install -m755 -v template/gnostr-* $(PREFIX)/bin 2>/dev/null
@install -m755 -v template/gnostr-query $(PREFIX)/bin 2>/dev/null
@install -m755 -v template/gnostr-get-relays $(PREFIX)/bin 2>/dev/null
commit df69e3ffb41b00acfbf838564ba46d134b40b60c
Author: randymcmillan <
[email protected]>
Date: Fri Sep 8 00:33:33 2023 -0400
deps/gnostr-grep:GNUmakefile:gnostr-command
diff --git a/deps/gnostr-grep b/deps/gnostr-grep
index 1bc9b479e..ff9785d97 160000
--- a/deps/gnostr-grep
+++ b/deps/gnostr-grep
@@ -1 +1 @@
-Subproject commit 1bc9b479e1f2ceca7ca7161e37e8e3aa76af5973
+Subproject commit ff9785d9701aa363dbbc78202866ce0390d63cbb
commit 7e28173b6f0feb016c8489fc3d65f6bf4888a28f
Author: randymcmillan <
[email protected]>
Date: Thu Sep 7 23:08:29 2023 -0400
deps/gnostr-command:make: rustup-install
diff --git a/deps/gnostr-command b/deps/gnostr-command
index 04c0849a2..9a7204494 160000
--- a/deps/gnostr-command
+++ b/deps/gnostr-command
@@ -1 +1 @@
-Subproject commit 04c0849a2db76e9bface2d674dac678b133385d4
+Subproject commit 9a7204494029a7b3e1b38d149f42f81aa729e845
commit 58f7c028177055641023fbbe557f14985b68b45a
Author: randymcmillan <
[email protected]>
Date: Fri Sep 8 12:43:20 2023 -0400
make:gnostr-all: new sequence
diff --git a/gnostr.mk b/gnostr.mk
index f51978e48..8254b4cf1 100644
--- a/gnostr.mk
+++ b/gnostr.mk
@@ -437,7 +437,7 @@ gnostr-query-test:gnostr-cat gnostr-query gnostr-install
##
## gnostr-legit relies on gnostr-git and gnostr-install sequence
##
-gnostr-all:gnostr gnostr-install gnostr-cat gnostr-grep gnostr-sha256 gnostr-command gnostr-proxy gnostr-query gnostr-git gnostr-legit gnostr-act gnostr-cli
+gnostr-all:gnostr gnostr-install gnostr-cat gnostr-cli gnostr-grep gnostr-sha256 gnostr-command gnostr-proxy gnostr-query gnostr-git gnostr-legit gnostr-act
$(MAKE) gnostr-build-install
## git log $(git describe --tags --abbrev=0)...@^1
commit c24e0418cb0acf58855187f68f925cedc3655565
Author: randymcmillan <
[email protected]>
Date: Thu Sep 7 22:38:29 2023 -0400
make:gnostr-cat:rustup-install: use . not source
diff --git a/deps/gnostr-cat b/deps/gnostr-cat
index bca9cc5a7..a011051f8 160000
--- a/deps/gnostr-cat
+++ b/deps/gnostr-cat
@@ -1 +1 @@
-Subproject commit bca9cc5a7d68b6c223657718d844637baf9f2024
+Subproject commit a011051f8ebf8a92794a7ec8eeb548a1f084772e
diff --git a/gnostr.mk b/gnostr.mk
index 64ddea0f5..640d83cdc 100644
--- a/gnostr.mk
+++ b/gnostr.mk
@@ -248,7 +248,7 @@ deps/gnostr-cat:deps/gnostr-cat/.git
.PHONY:gnostr-cat
gnostr-cat:deps/gnostr-cat/target/release/gnostr-cat
cd deps/gnostr-cat && \
- make install
+ make cargo-build-release install
cp $< $@
commit 1b93332e50bbe874b4c044e834d99f7485380923
Author: randymcmillan <
[email protected]>
Date: Fri Sep 8 13:08:46 2023 -0400
.github/workflows/pre-/release.yml:make gnostr-all
diff --git a/.github/workflows/pre-release.yml b/.github/workflows/pre-release.yml
index 568b80276..8cbe1c249 100755
--- a/.github/workflows/pre-release.yml
+++ b/.github/workflows/pre-release.yml
@@ -82,7 +82,7 @@ jobs:
- run: V=1 cmake .
- run: V=1 make gnostr
- - run: V=1 make gnostr-tests
+ - run: V=1 make gnostr-all
- name: "Build release"
run: |
@@ -104,7 +104,6 @@ jobs:
files: |
gnostr
gnostr-*
- !*.mk
- name: Save deps
id: cache-deps-save
commit 9058741da8fd5af2a99b71979cbdbfcabf70d526
Author: randymcmillan <
[email protected]>
Date: Wed Sep 13 12:28:16 2023 -0400
.gitmodules:deps/gnostr-org
diff --git a/.gitmodules b/.gitmodules
index 66f9e05bd..890691e2b 100644
--- a/.gitmodules
+++ b/.gitmodules
@@ -93,3 +93,6 @@
url = https://github.com/gnostr-org/gnostr-cat.git
branch = master
ignore = dirty
+[submodule "deps/gnostr-org"]
+ path = deps/gnostr-org
+ url = https://github.com/gnostr-org/gnostr-org.git
diff --git a/deps/gnostr-org b/deps/gnostr-org
new file mode 160000
index 000000000..c985eff65
--- /dev/null
+++ b/deps/gnostr-org
@@ -0,0 +1 @@
+Subproject commit c985eff6575ca1fe3fe03540edbb4257736723b0
commit a891b7b369762b5e1ccfe20d9a9305fa247b9dc0
Author: @RandyMcMillan <
[email protected]>
Date: Wed Sep 13 17:22:07 2023 -0400
make:gnostr-legit:make cargo-build-release install
diff --git a/gnostr.mk b/gnostr.mk
index 11fee5a61..87fc6d6a3 100644
--- a/gnostr.mk
+++ b/gnostr.mk
@@ -195,7 +195,7 @@ deps/gnostr-legit/.git:gnostr-git
#.PHONY:deps/gnostr-legit/gnostr-legit
deps/gnostr-legit/gnostr-legit:deps/gnostr-legit/.git
cd deps/gnostr-legit && \
- make legit-install
+ make cargo-build-release install
deps/gnostr-legit/target/release/gnostr-legit:deps/gnostr-legit/gnostr-legit## gnostr-legit
gnostr-legit:deps/gnostr-legit/target/release/gnostr-legit## gnostr-legit
cp $< $@ && exit;
commit 3e117685c4e829a16340f0db588f3888b0a63197
Author: randymcmillan <
[email protected]>
Date: Thu Sep 14 02:05:37 2023 -0400
deps/gnostr-proxy:v0.0.3
diff --git a/deps/gnostr-proxy b/deps/gnostr-proxy
index 2a8f9635b..0ac22aebe 160000
--- a/deps/gnostr-proxy
+++ b/deps/gnostr-proxy
@@ -1 +1 @@
-Subproject commit 2a8f9635bb0ede67f513cd6e36946aefc3634513
+Subproject commit 0ac22aebeeb4dc56a15ff9929a93b44001cbd1eb
commit a43d8b36054b537543063f08c1d8045eed78092a
Author: randymcmillan <
[email protected]>
Date: Fri Sep 8 14:12:53 2023 -0400
gnostr.mk:make gnostr-cat
diff --git a/gnostr.mk b/gnostr.mk
index 8254b4cf1..c00e5e1b5 100644
--- a/gnostr.mk
+++ b/gnostr.mk
@@ -242,11 +242,9 @@ deps/gnostr-cat:deps/gnostr-cat/.git
deps/gnostr-cat/target/release/gnostr-cat:deps/gnostr-cat
cd deps/gnostr-cat && \
make cargo-build-release install
+ @cp $@ gnostr-cat || echo "" 2>/dev/null
.PHONY:gnostr-cat
gnostr-cat:deps/gnostr-cat/target/release/gnostr-cat
- cd deps/gnostr-cat && \
- make cargo-build-release install
- cp $< $@
commit 6fcd724d99435fe9dcfd8ef7f46def3509ef6af9
Author: randymcmillan <
[email protected]>
Date: Thu Sep 14 02:01:07 2023 -0400
deps/gnostr-org:v0.0.3
diff --git a/deps/gnostr-org b/deps/gnostr-org
index ae30c1e28..3e448de81 160000
--- a/deps/gnostr-org
+++ b/deps/gnostr-org
@@ -1 +1 @@
-Subproject commit ae30c1e2878e6f06cda4bf8da1c7e007ad22aa71
+Subproject commit 3e448de811fd37b072e88166f983c1050bcfb4ac
commit b35fb7de9e421e94c0ddef4723451b14ec66a296
Author: randymcmillan <
[email protected]>
Date: Thu Sep 14 11:29:23 2023 -0400
deps/gnostr-org:v0.0.5
diff --git a/deps/gnostr-org b/deps/gnostr-org
index 3e448de81..aeb34640b 160000
--- a/deps/gnostr-org
+++ b/deps/gnostr-org
@@ -1 +1 @@
-Subproject commit 3e448de811fd37b072e88166f983c1050bcfb4ac
+Subproject commit aeb34640b40673edaca0df76ab52daf3e8601371
commit cd450512e6396337ac081e15e5492fe0107ebc32
Author: randymcmillan <
[email protected]>
Date: Thu Sep 14 13:30:02 2023 -0400
deps/gnostr-proxy:v0.0.4
diff --git a/deps/gnostr-proxy b/deps/gnostr-proxy
index 0ac22aebe..b91d77529 160000
--- a/deps/gnostr-proxy
+++ b/deps/gnostr-proxy
@@ -1 +1 @@
-Subproject commit 0ac22aebeeb4dc56a15ff9929a93b44001cbd1eb
+Subproject commit b91d77529c83bb1bf0cc1b10bbccdfe683f53b7c
commit 717478c5f1ffe9605ddeb06f0075c2058777bb27
Author: randymcmillan <
[email protected]>
Date: Sat Sep 9 22:27:43 2023 -0400
deps/secp256k1/configure:PHONY
diff --git a/gnostr.mk b/gnostr.mk
index c00e5e1b5..11fee5a61 100644
--- a/gnostr.mk
+++ b/gnostr.mk
@@ -109,6 +109,7 @@ deps/secp256k1/.git:
deps/secp256k1/include/secp256k1.h: deps/secp256k1/.git
#.PHONY:deps/secp256k1/configure
## force configure if build on host then in docker vm
+.PHONY:deps/secp256k1/configure## This MUST be PHONY for docker builds
deps/secp256k1/configure: deps/secp256k1/include/secp256k1.h
cd deps/secp256k1 && \
./autogen.sh && \
@@ -314,7 +315,7 @@ gnostr:deps/secp256k1/.libs/libsecp256k1.a libsecp256k1.a $(HEADERS) $(GNOSTR_OB
## $(CC) $(CFLAGS) $(GNOSTR_OBJS) $(ARS) -o $@
# git submodule update --init --recursive
$(CC) $(CFLAGS) $(GNOSTR_OBJS) $(ARS) -o $@
- install ./gnostr /usr/local/bin/
+ install gnostr /usr/local/bin/
#gnostr-relay:initialize $(HEADERS) $(GNOSTR_RELAY_OBJS) $(ARS)## make gnostr-relay
###gnostr-relay
commit 61e6976abf0d3c63103145065ed992b262dca0b5
Author: randymcmillan <
[email protected]>
Date: Fri Sep 8 13:50:40 2023 -0400
.github/workflows/pre-release.yml:branches: master main
diff --git a/.github/workflows/pre-release.yml b/.github/workflows/pre-release.yml
index 8cbe1c249..1f1966818 100755
--- a/.github/workflows/pre-release.yml
+++ b/.github/workflows/pre-release.yml
@@ -2,9 +2,16 @@ name: pre-release-matrix
# Controls when the action will run.
on:
+ pull_request:
+ branches:
+ - 'master'
+ - 'main'
+ - '!v**'
push:
- tags:
- - "v*.*.*-rc**"
+ branches:
+ - 'master'
+ - 'main'
+ - '!v**'
workflow_dispatch:
commit 68d920413814feec9982bdde236ae2ea3358da93
Author: randymcmillan <
[email protected]>
Date: Fri Sep 8 13:55:39 2023 -0400
.github/workflows/gnostr.yml:make gnostr-all
diff --git a/.github/workflows/gnostr.yml b/.github/workflows/gnostr.yml
index f1d8f0251..f6df0a968 100644
--- a/.github/workflows/gnostr.yml
+++ b/.github/workflows/gnostr.yml
@@ -79,6 +79,7 @@ jobs:
- run: V=1 make detect && cmake .
- run: V=1 make gnostr
+ - run: V=1 make gnostr-all
- name: Save deps
id: cache-deps-save
commit 76337469b1b0cb1403fc162b09c6b9a91b089b0b
Author: randymcmillan <
[email protected]>
Date: Wed Sep 13 12:51:12 2023 -0400
.github/workflows/gnostr.yml:V=1 make gnostr-install
diff --git a/.github/workflows/gnostr.yml b/.github/workflows/gnostr.yml
index f6df0a968..aa0b3ab89 100644
--- a/.github/workflows/gnostr.yml
+++ b/.github/workflows/gnostr.yml
@@ -79,6 +79,7 @@ jobs:
- run: V=1 make detect && cmake .
- run: V=1 make gnostr
+ - run: V=1 make gnostr-install
- run: V=1 make gnostr-all
- name: Save deps
commit b1f9555eb322d55a275aee4cd89de5e5ce3a599c
Author: randymcmillan <
[email protected]>
Date: Wed Sep 13 12:47:28 2023 -0400
.github/workflows/pre-release.yml:pull-request only
diff --git a/.github/workflows/pre-release.yml b/.github/workflows/pre-release.yml
index 1f1966818..09ff95af6 100755
--- a/.github/workflows/pre-release.yml
+++ b/.github/workflows/pre-release.yml
@@ -7,11 +7,11 @@ on:
- 'master'
- 'main'
- '!v**'
- push:
- branches:
- - 'master'
- - 'main'
- - '!v**'
+# push:
+# branches:
+# - 'master'
+# - 'main'
+# - '!v**'
workflow_dispatch:
commit 9c3bcf5c0ba2d0bf1f85acabc99976b63bdccea9
Author: randymcmillan <
[email protected]>
Date: Sun Sep 17 05:15:10 2023 -0400
2097/348018/808104/00/00032fe1/doc/gnostr-weeble.1
diff --git a/doc/gnostr-wobble.1 b/doc/gnostr-wobble.1
index 87f06e0ee..2c85ec64e 100644
--- a/doc/gnostr-wobble.1
+++ b/doc/gnostr-wobble.1
@@ -10,6 +10,20 @@
.\" Use .Nm macro to designate other names for the documented program.
.Sh SYNOPSIS \" Section Header - required - don't modify
.Nm
+- part of a time stamping method used by gnostr
+
+["EVENT",
+ {"id": "0f3b...eb501",
+ "pubkey":"d4d8d344...fbfdeed4fe2b6",
+ "created_at": 1694940466,
+ "kind": 1,
+ "tags": [
+ ["weeble","2097"],
+ ["wobble", "356858"],
+ ["blockheight","808099"]
+ ],
+ "content": "diff --git a/doc/gnostr-wobble.1 ...",
+ "sig": "d76b62c2...74fa4b01"}]]
.Sh DESCRIPTION \" Section Header - required - don't modify
commit bc75a77cb851b5d2bb2aa0a744cbe51d70d90249
Author: randymcmillan <
[email protected]>
Date: Fri Sep 15 21:53:55 2023 -0400
.gitmodules:gnostr-org:branch = master; ignore = dirty
diff --git a/.gitmodules b/.gitmodules
index 890691e2b..abbf363b7 100644
--- a/.gitmodules
+++ b/.gitmodules
@@ -96,3 +96,5 @@
[submodule "deps/gnostr-org"]
path = deps/gnostr-org
url = https://github.com/gnostr-org/gnostr-org.git
+ branch = master
+ ignore = dirty
commit f441d5c936cfd857b07e844910576b93fc2c7c1c
Author: randymcmillan <
[email protected]>
Date: Thu Sep 14 15:36:29 2023 -0400
gnostr.c:v0.0.8
diff --git a/GIT-VERSION-FILE b/GIT-VERSION-FILE
index c6f97592b..40e3218f9 100644
--- a/GIT-VERSION-FILE
+++ b/GIT-VERSION-FILE
@@ -1 +1 @@
-GIT_VERSION = 0.0.0_28
+GIT_VERSION = 0.0.8
diff --git a/git-version b/git-version
index 8ced46d59..d169b2f2d 100644
--- a/git-version
+++ b/git-version
@@ -1 +1 @@
-0.0.0_22
+0.0.8
diff --git a/gnostr.c b/gnostr.c
index ab6b6522b..d6767f950 100644
--- a/gnostr.c
+++ b/gnostr.c
@@ -29,7 +29,7 @@
#include "include/openssl_hash.h"
-#define VERSION "0.0.0"
+#define VERSION "0.0.8"
#define MAX_TAGS 32
#define MAX_TAG_ELEMS 16
diff --git a/version b/version
index 77d6f4ca2..d169b2f2d 100644
--- a/version
+++ b/version
@@ -1 +1 @@
-0.0.0
+0.0.8
commit 689ed2277ae4e372408bfa69f3d8da083fddc218
Author: randymcmillan <
[email protected]>
Date: Mon Sep 18 15:49:24 2023 -0400
.gitmodules:deps/gnostr-web
diff --git a/.gitmodules b/.gitmodules
index abbf363b7..c417e63f9 100644
--- a/.gitmodules
+++ b/.gitmodules
@@ -98,3 +98,8 @@
url = https://github.com/gnostr-org/gnostr-org.git
branch = master
ignore = dirty
+[submodule "deps/gnostr-web"]
+ path = deps/gnostr-web
+ url = https://github.com/gnostr-org/gnostr-web.git
+ branch = master
+ ignore = dirty
diff --git a/deps/gnostr-web b/deps/gnostr-web
new file mode 160000
index 000000000..ec1a86148
--- /dev/null
+++ b/deps/gnostr-web
@@ -0,0 +1 @@
+Subproject commit ec1a86148b91665c9a966b7ac774ce6263081473
commit c96213148233ea12aff43b5ccf2f45fbcf903309
Author: randymcmillan <
[email protected]>
Date: Thu Sep 14 15:57:59 2023 -0400
make:gnostr-org
diff --git a/gnostr.mk b/gnostr.mk
index 2d0d67055..7ff0d02ba 100644
--- a/gnostr.mk
+++ b/gnostr.mk
@@ -213,6 +213,20 @@ deps/gnostr-sha256/target/release/gnostr-sha256:deps/gnostr-sha256/gnostr-sha256
.PHONY:
gnostr-sha256:deps/gnostr-sha256/target/release/gnostr-sha256
+
+
+deps/gnostr-org/.git:
+ @devtools/refresh-submodules.sh deps/gnostr-org
+.PHONY:deps/gnostr-org
+deps/gnostr-org:deps/gnostr-org/.git
+ cd deps/gnostr-org && \
+ $(MAKE) install
+gnostr-org:deps/gnostr-org
+ install deps/gnostr-org/gnostr-org template
+ install deps/gnostr-org/gnostr-org /usr/local/bin
+
+
+
deps/gnostr-proxy/.git:
@devtools/refresh-submodules.sh deps/gnostr-proxy
.PHONY:deps/gnostr-proxy
@@ -223,6 +237,8 @@ gnostr-proxy:deps/gnostr-proxy
install deps/gnostr-proxy/gnostr-proxy template
install deps/gnostr-proxy/gnostr-proxy /usr/local/bin
+
+
#deps/gnostr-relay/.git:
# @devtools/refresh-submodules.sh deps/gnostr-relay
##.PHONY:deps/gnostr-relay/gnostr-relay
commit fcadfb14fa340fdc067a84ca04035824a09f2c8e
Author: randymcmillan <
[email protected]>
Date: Sat Sep 16 01:03:42 2023 -0400
.dockerignore
diff --git a/.dockerignore b/.dockerignore
index 05018f6d0..1a42b34a8 100644
--- a/.dockerignore
+++ b/.dockerignore
@@ -1,4 +1,9 @@
#act: since act is a docker utility, we tell docker to NOT ignore the
+#
+## WARNING gnostr-act/docker
+.venv #gnostr-alpine
+##
+#
#.git folder itself AND to NOT ignore the deps folder.
!.git
!deps
commit 70f6bf8d956c5b26056e066e4c518bf0aae04936
Author: randymcmillan <
[email protected]>
Date: Sun Sep 17 16:25:56 2023 -0400
template/gnostr-git-log: sort examples
diff --git a/template/gnostr-git-log b/template/gnostr-git-log
index 6c400a8d2..44db8f14e 100755
--- a/template/gnostr-git-log
+++ b/template/gnostr-git-log
@@ -81,7 +81,33 @@ else
echo "${!i} is not a number"
fi
fi
+echo ${!i}
+## git \
+# log \
+# --date='unix' \
+# -10 \
+# --pretty="%C(Yellow)%h %x09 %C(reset)%ad %x09 %C(Cyan)%an: %C(reset)%s" \
+# --reverse
+## git \
+# log \
+# --date='unix' \
+# -10 \
+# --pretty="%C(Yellow)%h%x2F%C(reset)%ad%x2F%C(Cyan)%an/%C(reset)%s" \
+# --reverse
+## git \
+# log \
+# --date='unix' \
+# -10 \
+# --pretty="%C(Yellow)%h%x2F%C(reset)%ad%x2F%C(Cyan)%n/%C(reset)%s" \
+# --reverse
+## git \
+# log \
+# --date='unix' \
+# -10 --pretty="%C(Yellow)%h%x2F%C(reset)%ad%x2F%C(Cyan)%C(reset)%s" \
+# --reverse
+#
+#
## Once positionals are captured
## if -h --help
## present help output based on positionals captured
commit ead48d9ae603413bbc97da8664cb9cadbe129475
Author: randymcmillan <
[email protected]>
Date: Sat Sep 16 01:16:30 2023 -0400
make:gnostr-act
diff --git a/gnostr.mk b/gnostr.mk
index 7ff0d02ba..f81d23ead 100644
--- a/gnostr.mk
+++ b/gnostr.mk
@@ -453,8 +453,26 @@ gnostr-query-test:gnostr-cat gnostr-query gnostr-install
##
## gnostr-legit relies on gnostr-git and gnostr-install sequence
##
-gnostr-all:gnostr gnostr-install gnostr-cat gnostr-cli gnostr-grep gnostr-sha256 gnostr-command gnostr-proxy gnostr-query gnostr-git gnostr-legit gnostr-act
- $(MAKE) gnostr-build-install
+gnostr-all:
+ rm CMakeCache.txt || echo
+ $(shell which cmake) .
+ $(MAKE) -j libsecp256k1.a
+ type -P gnostr || $(MAKE) -j gnostr
+ $(MAKE) -j gnostr-install
+ type -P gnostr-cat || $(MAKE) -j gnostr-cat
+ type -P gnostr-cli || $(MAKE) -j gnostr-cli
+ type -P gnostr-grep || $(MAKE) -j gnostr-grep
+ type -P gnostr-sha256 || $(MAKE) -j gnostr-sha256
+ type -P gnostr-command || $(MAKE) -j gnostr-command
+ type -P gnostr-proxy || $(MAKE) -j gnostr-proxy
+ type -P gnostr-query || $(MAKE) -j gnostr-query
+ type -P gnostr-git || $(MAKE) -j gnostr-git
+ type -P gnostr-legit || $(MAKE) -j gnostr-legit
+ type -P gnostr-client || $(MAKE) -j gnostr-client
+ type -P gnostr-gnode || $(MAKE) -j gnostr-gnode
+ $(MAKE) -j gnostr-build
+ $(MAKE) -j gnostr-install
+ type -P gnostr-act && echo "'make gnostr-act' to install gnostr-act " || $(MAKE) -j gnostr-act
## git log $(git describe --tags --abbrev=0)...@^1
commit 06e2ef61b62a3c6a94a8c5d14c340e575f7b6bf8
Author: randymcmillan <
[email protected]>
Date: Thu Sep 14 16:23:36 2023 -0400
make:gnostr-act-alpine:basic config
diff --git a/.github/workflows/gnostr-alpine.yml b/.github/workflows/gnostr-alpine.yml
new file mode 100755
index 000000000..90cf4defc
--- /dev/null
+++ b/.github/workflows/gnostr-alpine.yml
@@ -0,0 +1,53 @@
+name: gnostr-alpine
+
+on:
+ pull_request:
+ branches:
+ - '*'
+ - '*/*'
+ - '**'
+ - 'master'
+ - 'main'
+ push:
+ branches:
+ - '*'
+ - '*/*'
+ - '**'
+ - 'master'
+ - 'main'
+
+env:
+ GIT_DISCOVERY_ACROSS_FILESYSTEM: 1
+
+jobs:
+ build:
+ runs-on: ubuntu-20.04
+
+ strategy:
+ fail-fast: false
+ matrix:
+ tag: [18.17.1]
+
+ container: node:${{ matrix.tag }}-alpine
+
+ steps:
+ ## notice: this is a pre checkout step
+ ## notice: additional operations can be done prior to checkout
+ - run: apk update && apk add bash cmake git python3 && python3 -m ensurepip
+ - run: printenv
+ - name: checkout@v3 fetch-depth submodules set-safe-dir true
+ uses: actions/checkout@v3
+ with:
+ fetch-depth: '10'
+ submodules: 'true'
+ set-safe-directory: 'true'
+ ## notice: these are post checkout steps
+ - run: apk update && apk add autoconf automake build-base openssl-dev libtool make
+ - run: touch ~/GITHUB_TOKEN.txt
+ - run: rm CMakeCache.txt || echo && cmake .
+ - run: make
+ - run: make help
+ - run: make libsecp256k1.a || rm -rf deps/secp256k1 && make libsecp256k1.a
+ - run: make gnostr || rm gnostr && make gnostr
+ ## TODO: add ssh config to act sequence
+ - run: make tag 2>/dev/null
diff --git a/gnostr-act.mk b/gnostr-act.mk
index 72fe45734..fc14a5fc9 100644
--- a/gnostr-act.mk
+++ b/gnostr-act.mk
@@ -4,4 +4,8 @@ gnostr-act-install:## install gnostr-act from deps/gnostr-act/install.sh -b
gnostr-act-gnostr:submodules docker-start## run gnostr-act in .github
#we use -b to bind the repo to the gnostr-act container
#in the single dep instances we reuse (-r) the container
- @type -P gnostr-act && GITHUB_TOKEN=$(shell cat ~/GITHUB_TOKEN.txt) && gnostr-act $(VERBOSE) $(BIND) $(REUSE) -W $(PWD)/.github/workflows/
[email protected] || $(MAKE) gnostr-act-install
+ @type -P gnostr-act && GITHUB_TOKEN=$(shell cat ~/GITHUB_TOKEN.txt) && gnostr-act $(VERBOSE) $(BIND) $(REUSE) -W $(PWD)/.github/workflows/gnostr.yml || $(MAKE) gnostr-act-install
+gnostr-act-alpine:submodules docker-start## run gnostr-act in .github
+ #we use -b to bind the repo to the gnostr-act container
+ #in the single dep instances we reuse (-r) the container
+ @type -P gnostr-act && GITHUB_TOKEN=$(shell cat ~/GITHUB_TOKEN.txt) && gnostr-act $(VERBOSE) $(BIND) $(REUSE) -W $(PWD)/.github/workflows/gnostr-alpine.yml || $(MAKE) gnostr-act-install
commit 61d4b05c181e4ddf882a1735371e0a1100d67b1e
Author: randymcmillan <
[email protected]>
Date: Sun Sep 17 05:10:37 2023 -0400
.gitignore
diff --git a/.gitignore b/.gitignore
index 9e3d49caf..a37dd8c60 100644
--- a/.gitignore
+++ b/.gitignore
@@ -114,3 +114,5 @@ bin
.github/.DS_Store
.github/workflows/.DS_Store
+
+pubkeys.txt
commit f982b4a22fcbcece21b5c9f477696e64805cc8ce
Author: randymcmillan <
[email protected]>
Date: Thu Sep 14 14:43:35 2023 -0400
make:gnostr-build-install:
cd build && make all install && install gnostr-tests /usr/local/bin || echo
diff --git a/gnostr.mk b/gnostr.mk
index 87fc6d6a3..c6274a63f 100644
--- a/gnostr.mk
+++ b/gnostr.mk
@@ -177,7 +177,7 @@ gnostr-build:## gnostr-build
.PHONY:gnostr-build-install
gnostr-build-install:gnostr-build## gnostr-build-install
- cd build && make install
+ cd build && make all install && install gnostr-tests /usr/local/bin || echo
$(MAKE) gnostr-install || echo
deps/gnostr-command/.git:gnostr-git
commit 17236b70c93cfef1b979e689d2693d114afd6f54
Author: randymcmillan <
[email protected]>
Date: Sun Sep 17 04:00:29 2023 -0400
doc/gnostr-gnode.1:gnostr-gnostr(1)
doc/gnostr-gnode.1.html
diff --git a/doc/gnostr-gnode.1 b/doc/gnostr-gnode.1
index 279a0deb8..6d9d2f83d 100644
--- a/doc/gnostr-gnode.1
+++ b/doc/gnostr-gnode.1
@@ -1,36 +1,32 @@
-.\" Generated by scdoc 1.11.2
-.\" Complete documentation for this program is not available as a GNU info page
-.ie \n(.g .ds Aq \(aq
-.el .ds Aq '
-.nh
-.ad l
-.\" Begin generated content:
-.TH "gnostr-gnode" "1" "2023-07-11"
-.P
-.SH NAME
-.P
-gnostr-gnode - a nostr relay
-.P
-.SH DESCRIPTION
-.P
-\fBgnostr-gnode\fR a nostr relay.\&
-.P
-.SH SUBCOMMANDS
-.P
-.SH gnostr get-relays
-.SH gnostr set-relays
-.P
-.SH gnostr sha256
-.P
-.SH gnostr*
-.SH gnostr-get-relays
+.\" Modified from man(1) of FreeBSD, the NetBSD mdoc.template and mdoc.samples
+.\" See man mdoc for the short list of editing options
+.Dd August 27, 2023 \" DATE
+.Dt gnostr-node 1 \" Program name and manual section number
+.Os unix-like
+.Sh NAME \" Section Header - required - don't modify
+.Nm gnostr-gnode
+.\" The following lines are read in generating the apropos database.
+.\" Use only key words here as the database is built on these.
+.\" Use .Nm macro to designate other names for the documented program.
+.Sh SYNOPSIS \" Section Header - required - don't modify
+.Nm
+<port> \" Arguments
+.Sh DESCRIPTION \" Section Header - required - don't modify
+Invoke a nostr relay
+.Sh FILES \" Files used or created by the program
+.Bl -tag -width "/usr/local/bin/gnostr-gnode " -compact
+.It Pa /usr/local/bin/gnostr-gnode
+binary executable
+.El \" Ends the list
+.Sh SEE ALSO
+.\" List links in ascending order by section, alphabetically within a section.
+.\" Please do not reference files that do not exist without filing a bug report
+.Xr gnostr-test 1 ,
-.RS 4
-The text contents of the note
-.P
-.RE
-\fB--dm\fR <hex pubkey>
-.RS 4
-Create a direct message.\& This will create a kind-4 note with the
-contents encrypted>
-.P
+.Xr gnostr-relays 1 ,
+
+.Xr gnostr-get-relays 1 ,
+
+.Xr gnostr-set-relays 1 ,
+
+.Xr gnostr-proxy 1
diff --git a/doc/gnostr-gnode.1.html b/doc/gnostr-gnode.1.html
new file mode 100644
index 000000000..8e0c80ce5
--- /dev/null
+++ b/doc/gnostr-gnode.1.html
@@ -0,0 +1,34 @@
+<html><head></head><body bgcolor="black" text="white"><pre><font face="Courier">
+<b>gnostr-node(1) BSD General Commands Manual gnostr-node(1)</b>
+
+<b>NAME</b>
+
+ <b>gnostr-gnode</b>
+
+<b>SYNOPSIS</b>
+
+ <b>gnostr-gnode</b> <port>
+
+<b>DESCRIPTION</b>
+
+ Invoke a nostr relay
+
+<b>FILES</b>
+
+ /usr/local/bin/gnostr-gnode binary executable
+
+<b>SEE ALSO</b>
+
+ gnostr-test(1),
+
+ gnostr-relays(1),
+
+ gnostr-get-relays(1),
+
+ gnostr-set-relays(1),
+
+ gnostr-proxy(1)
+
+unix-like August 27, 2023 unix-like
+</font></pre>
+</body></html>
\ No newline at end of file
commit d6f51fded732cca50c89c3c57874de65393331fc
Author: randymcmillan <
[email protected]>
Date: Thu Sep 14 19:22:38 2023 -0400
.github/workflows/gnostr-alpine.yml:make gnostr gnostr-install
diff --git a/.github/workflows/gnostr-alpine.yml b/.github/workflows/gnostr-alpine.yml
index 90cf4defc..665016631 100755
--- a/.github/workflows/gnostr-alpine.yml
+++ b/.github/workflows/gnostr-alpine.yml
@@ -49,5 +49,6 @@ jobs:
- run: make help
- run: make libsecp256k1.a || rm -rf deps/secp256k1 && make libsecp256k1.a
- run: make gnostr || rm gnostr && make gnostr
+ - run: make gnostr-install
## TODO: add ssh config to act sequence
- run: make tag 2>/dev/null
commit b565f22d927ac5f0fb0e6695f5547b2d5029200e
Author: @RandyMcMillan <
[email protected]>
Date: Sun Sep 17 18:35:23 2023 -0400
Create CNAME
diff --git a/CNAME b/CNAME
new file mode 100644
index 000000000..aeea3ce66
--- /dev/null
+++ b/CNAME
@@ -0,0 +1 @@
+gnostr.gnostr.org
\ No newline at end of file
commit 318b84dc39576af0396336291a74f6e302e13126
Author: randymcmillan <
[email protected]>
Date: Sat Sep 16 01:06:05 2023 -0400
.github/workflows/gnostr-alpine.yml:rm -rf .venv
diff --git a/.github/workflows/gnostr-alpine.yml b/.github/workflows/gnostr-alpine.yml
index 665016631..2ef871b86 100755
--- a/.github/workflows/gnostr-alpine.yml
+++ b/.github/workflows/gnostr-alpine.yml
@@ -51,4 +51,4 @@ jobs:
- run: make gnostr || rm gnostr && make gnostr
- run: make gnostr-install
## TODO: add ssh config to act sequence
- - run: make tag 2>/dev/null
+ - run: rm -rf .venv
commit 03d5f9d780b72dca7774302936ab6b201390cfe0
Author: @RandyMcMillan <
[email protected]>
Date: Mon Sep 18 16:06:54 2023 -0400
.github/workflows/static.yml
diff --git a/.github/workflows/static.yml b/.github/workflows/static.yml
new file mode 100644
index 000000000..73bc4230c
--- /dev/null
+++ b/.github/workflows/static.yml
@@ -0,0 +1,43 @@
+# Simple workflow for deploying static content to GitHub Pages
+name: Deploy static content to Pages
+
+on:
+ # Runs on pushes targeting the default branch
+ push:
+ branches: ["master"]
+
+ # Allows you to run this workflow manually from the Actions tab
+ workflow_dispatch:
+
+# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages
+permissions:
+ contents: read
+ pages: write
+ id-token: write
+
+# Allow only one concurrent deployment, skipping runs queued between the run in-progress and latest queued.
+# However, do NOT cancel in-progress runs as we want to allow these production deployments to complete.
+concurrency:
+ group: "pages"
+ cancel-in-progress: false
+
+jobs:
+ # Single deploy job since we're just deploying
+ deploy:
+ environment:
+ name: github-pages
+ url: ${{ steps.deployment.outputs.page_url }}
+ runs-on: ubuntu-latest
+ steps:
+ - name: Checkout
+ uses: actions/checkout@v3
+ - name: Setup Pages
+ uses: actions/configure-pages@v3
+ - name: Upload artifact
+ uses: actions/upload-pages-artifact@v2
+ with:
+ # Upload entire repository
+ path: '.'
+ - name: Deploy to GitHub Pages
+ id: deployment
+ uses: actions/deploy-pages@v2
commit 7b52e4d8a4826e3ca7b7c78eaf04b831585ac918
Author: randymcmillan <
[email protected]>
Date: Mon Sep 18 16:41:46 2023 -0400
.gitmodules:web add
diff --git a/.gitmodules b/.gitmodules
index c417e63f9..2417e7951 100644
--- a/.gitmodules
+++ b/.gitmodules
@@ -103,3 +103,8 @@
url = https://github.com/gnostr-org/gnostr-web.git
branch = master
ignore = dirty
+[submodule "web"]
+ path = web
+ url = https://github.com/gnostr-org/gnostr-web.git
+ branch = master
+ ignore = dirty
diff --git a/web b/web
new file mode 160000
index 000000000..ec1a86148
--- /dev/null
+++ b/web
@@ -0,0 +1 @@
+Subproject commit ec1a86148b91665c9a966b7ac774ce6263081473
commit 54d7929191249700545001e1cb961de5eaf03cd9
Author: randymcmillan <
[email protected]>
Date: Tue Sep 19 11:32:10 2023 -0400
gitgnore:
diff --git a/.gitignore b/.gitignore
index 39c48a7bf..67a27e3ff 100644
--- a/.gitignore
+++ b/.gitignore
@@ -93,6 +93,7 @@ ext/secp256k1-0.3.2/DartConfiguration.tcl
ext/secp256k1-0.3.2/src/CTestTestfile.cmake
ext/secp256k1-0.3.2/src/libsecp256k1-config-version.cmake
ext/secp256k1-0.3.2/src/libsecp256k1-config.cmake
+ext/secp256k1-0.3.2/examples/CTestTestfile.cmake
ext/wt-4.10.0/wt-config-version.cmake
ext/wt-4.10.0/wt-config.cmake
commit 2a99a3e31309cae15c1382e420116c12a10a69aa
Author: randymcmillan <
[email protected]>
Date: Mon Sep 18 19:53:25 2023 -0400
web/web.cc:web/wt_config.xml
diff --git a/web/web.cc b/web/web.cc
index a8f8b963b..1abde07f1 100644
--- a/web/web.cc
+++ b/web/web.cc
@@ -1,4 +1,4 @@
-// This file is part of 'Nostr_client_relay'
+// This file is part of 'Nostr_client_relay'
// Copyright (c) 2023, Space Research Software LLC, Pedro Vicente. All rights reserved.
// See file LICENSE for full license details.
@@ -20,7 +20,7 @@ std::vector<std::string> relays = { "eden.nostr.land",
/////////////////////////////////////////////////////////////////////////////////////////////////////
//main
-// --docroot=. --http-port=80 --http-address=0.0.0.0
+// --docroot=. --http-port=80 --http-address=0.0.0.0
/////////////////////////////////////////////////////////////////////////////////////////////////////
std::unique_ptr<Wt::WApplication> create_application(const Wt::WEnvironment& env)
@@ -28,6 +28,10 @@ std::unique_ptr<Wt::WApplication> create_application(const Wt::WEnvironment& env
return std::make_unique<NostroApplication>(env);
}
+
+//REF:
+//https://webtoolkit.eu/wt/doc/reference/html/overview.html#config_wthttpd
+
int main(int argc, char** argv)
{
try
diff --git a/web/wt_config.xml b/web/wt_config.xml
index 2a0bc6c52..792ce3771 100644
--- a/web/wt_config.xml
+++ b/web/wt_config.xml
@@ -157,7 +157,7 @@
Path used by Wt to do session management.
-->
- <run-directory>/home/pvn/wt_install/var/run/wt</run-directory>
+ <run-directory>/var/run/wt</run-directory>
</connector-fcgi>
@@ -207,7 +207,7 @@
(e.g. for apache + fastcgi module), or on stderr (e.g. for
the built-in httpd).
-->
- <log-file>/home/pvn/git/nostr_client_relay/build/web/wt.log.txt</log-file>
+ <log-file>/tmp/gnostr-web.log</log-file>
<!-- Logger configuration
commit 5957a7abec85b07df47ab9adf88620d6353b3793
Author: randymcmillan <
[email protected]>
Date: Tue Sep 19 07:32:53 2023 -0400
.gitignore:gnostr-web
diff --git a/.gitignore b/.gitignore
index c8cda0adb..39c48a7bf 100644
--- a/.gitignore
+++ b/.gitignore
@@ -14,6 +14,7 @@ gnostr-req
gnostr-set-relays
gnostr-sha256
gnostr-tests
+web/gnostr-web
src/nostril/libnostri.a
src/nostril/nostril
commit 80d594d5d3c4ac98932f50e214f20aaa30314312
Author: @RandyMcMillan <
[email protected]>
Date: Tue Sep 19 23:38:23 2023 -0400
Update static.yml
diff --git a/.github/workflows/static.yml b/.github/workflows/static.yml
index 0e5d36f25..e8e0a9840 100644
--- a/.github/workflows/static.yml
+++ b/.github/workflows/static.yml
@@ -37,9 +37,7 @@ jobs:
uses: actions/upload-pages-artifact@v2
with:
# Upload entire repository
- path: |
- 'doc'
- '*READ*'
+ path: '*READ*'
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v2
commit 31bf68493a3a8d30769df81b30a956648a5463ac
Author: @RandyMcMillan <
[email protected]>
Date: Tue Sep 19 23:35:50 2023 -0400
Update static.yml
diff --git a/.github/workflows/static.yml b/.github/workflows/static.yml
index db97167e1..0e5d36f25 100644
--- a/.github/workflows/static.yml
+++ b/.github/workflows/static.yml
@@ -38,8 +38,8 @@ jobs:
with:
# Upload entire repository
path: |
- '!ext'
- '.'
+ 'doc'
+ '*READ*'
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v2
commit 1d95bda791d7e997158d8bdf517f24115406cc59
Author: @RandyMcMillan <
[email protected]>
Date: Tue Sep 19 23:31:09 2023 -0400
Update static.yml
diff --git a/.github/workflows/static.yml b/.github/workflows/static.yml
index e66340aca..db97167e1 100644
--- a/.github/workflows/static.yml
+++ b/.github/workflows/static.yml
@@ -37,7 +37,9 @@ jobs:
uses: actions/upload-pages-artifact@v2
with:
# Upload entire repository
- path: '!ext'
+ path: |
+ '!ext'
+ '.'
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v2
路透社:拜登政府今年已撤销8项对 #华为 出口许可 https://t.co/AJ7qy40yBa
commit 2bb6254ee751eb4a520caca36be8a0bc8cba8edd
Author: randymcmillan <
[email protected]>
Date: Thu Sep 21 07:25:00 2023 -0400
.gitignore:.gnostr.org
diff --git a/.gitignore b/.gitignore
index 883565da5..4489846aa 100644
--- a/.gitignore
+++ b/.gitignore
@@ -141,3 +141,4 @@ wostro.log.txt
tests.log.txt
web/wt_config.xml
+.gnostr/org
commit 95475742c02cbb3151e9e408c6a32db25b0b81cf
Author: randymcmillan <
[email protected]>
Date: Wed Sep 20 19:46:44 2023 -0400
make:gnostr-web-deploy
diff --git a/gnostr.mk b/gnostr.mk
index f81d23ead..e2cdbc957 100644
--- a/gnostr.mk
+++ b/gnostr.mk
@@ -143,7 +143,8 @@ libjq.a: deps/jq/.libs/libjq.a## libjq.a
deps/gnostr-web/.git:
@devtools/refresh-submodules.sh deps/gnostr-web
-
+gnostr-web-deploy:
+ gnostr-web --http-address=0.0.0.0 --http-port=80 --deploy-path=/web --docroot=.
commit 8a3af1d34003b72546ecc273db4deece91b205b0
Author: randymcmillan <
[email protected]>
Date: Thu Sep 21 11:06:54 2023 -0400
deps/gnostr-org:v0.0.6
diff --git a/deps/gnostr-org b/deps/gnostr-org
index aeb34640b..bda38543b 160000
--- a/deps/gnostr-org
+++ b/deps/gnostr-org
@@ -1 +1 @@
-Subproject commit aeb34640b40673edaca0df76ab52daf3e8601371
+Subproject commit bda38543b37fb4d045d30df3a2068971c3eebc4d
commit 1606aeb51e851b1f6e3d858fd35eff967d30363f
Author: randymcmillan <
[email protected]>
Date: Thu Sep 21 07:25:58 2023 -0400
.gitignore:web/APP_KEY
diff --git a/.gitignore b/.gitignore
index 4489846aa..f874ae542 100644
--- a/.gitignore
+++ b/.gitignore
@@ -141,4 +141,5 @@ wostro.log.txt
tests.log.txt
web/wt_config.xml
+web/APP_KEY
.gnostr/org
commit d25622f5336baf983ff09f32b1cc5c42ac27a06f
Author: @RandyMcMillan <
[email protected]>
Date: Tue Sep 19 23:43:42 2023 -0400
Update static.yml
diff --git a/.github/workflows/static.yml b/.github/workflows/static.yml
index e8e0a9840..5262100ce 100644
--- a/.github/workflows/static.yml
+++ b/.github/workflows/static.yml
@@ -37,7 +37,7 @@ jobs:
uses: actions/upload-pages-artifact@v2
with:
# Upload entire repository
- path: '*READ*'
+ path: 'README.md'
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v2
commit b4059dffabed021583aa11eb413ebce747e4966c
Author: @RandyMcMillan <
[email protected]>
Date: Tue Sep 19 23:45:31 2023 -0400
Update static.yml
diff --git a/.github/workflows/static.yml b/.github/workflows/static.yml
index 5262100ce..6c3001b9f 100644
--- a/.github/workflows/static.yml
+++ b/.github/workflows/static.yml
@@ -37,7 +37,7 @@ jobs:
uses: actions/upload-pages-artifact@v2
with:
# Upload entire repository
- path: 'README.md'
+ path: 'doc'
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v2
commit 539d055c9520e1aa6f579d13a30ca380710431b4
Author: randymcmillan <
[email protected]>
Date: Wed Sep 20 14:06:34 2023 -0400
.gitignore:
tests.log.txt
web/wt_config.xml
diff --git a/.gitignore b/.gitignore
index 67a27e3ff..883565da5 100644
--- a/.gitignore
+++ b/.gitignore
@@ -138,3 +138,6 @@ ext/wt-4.10.0/src/Wt_js.C
ext/wt-4.10.0/src/Wt_xml.C
ext/wt-4.10.0/wt_config.xml
wostro.log.txt
+
+tests.log.txt
+web/wt_config.xml
commit b498c457f1eef71dedc2afaf21075c457ee1f5c6
Author: randymcmillan <
[email protected]>
Date: Wed Sep 20 18:09:11 2023 -0400
web/GNUmakefile: no include Makefile
diff --git a/web/GNUmakefile b/web/GNUmakefile
index e63f7c44a..257247498 100755
--- a/web/GNUmakefile
+++ b/web/GNUmakefile
@@ -335,7 +335,7 @@ test-query:
-t weeble \
-t wobble | gnostr-cat -u ws://127.0.0.1:6102
--include Makefile
+#-include Makefile
-include venv.mk
-include act.mk
commit 86345223c63a08ce2d01fb91ed00a6c8e39be71b
Author: randymcmillan <
[email protected]>
Date: Sun Sep 24 08:42:09 2023 -0400
web:submodule update
diff --git a/web b/web
index 70e1c8fd8..636c6fd6d 160000
--- a/web
+++ b/web
@@ -1 +1 @@
-Subproject commit 70e1c8fd88cfb8cfe23cd29ec42db0e5e424d0a4
+Subproject commit 636c6fd6d8634a5bbc209930fae0ae1b443189aa
commit 2149d7bbe0f1938bb3190e8cea3db09bdbdbce44
Author: randymcmillan <
[email protected]>
Date: Thu Sep 21 14:06:32 2023 -0400
deps/gnostr-org:
app/extensions/builtins.json:gnostr-v0.0.12
diff --git a/deps/gnostr-org b/deps/gnostr-org
index bda38543b..8f2bc9b4a 160000
--- a/deps/gnostr-org
+++ b/deps/gnostr-org
@@ -1 +1 @@
-Subproject commit bda38543b37fb4d045d30df3a2068971c3eebc4d
+Subproject commit 8f2bc9b4a9cfc8112aa2f1368a07e0e58448e683
commit 61212f987b8f210e4ee1667f2de2c3e1f48f3f52
Author: @RandyMcMillan <
[email protected]>
Date: Wed Sep 20 13:55:48 2023 -0400
WtInstall.cmake:restore file
diff --git a/ext/wt-4.10.0/WtInstall.cmake b/ext/wt-4.10.0/WtInstall.cmake
new file mode 100644
index 000000000..d2aed3298
--- /dev/null
+++ b/ext/wt-4.10.0/WtInstall.cmake
@@ -0,0 +1,2 @@
+EXEC_PROGRAM(mkdir ARGS -p ${DESTDIR}${RUNDIR})
+EXEC_PROGRAM(chown ARGS ${WEBUSER}:${WEBGROUP} ${DESTDIR}${RUNDIR})
commit 0102e3ed1e281a93c91f07b90de60c0c762d61a5
Author: randymcmillan <
[email protected]>
Date: Sun Sep 24 08:54:01 2023 -0400
.gitignore
diff --git a/.gitignore b/.gitignore
index f874ae542..5c840743e 100644
--- a/.gitignore
+++ b/.gitignore
@@ -143,3 +143,4 @@ tests.log.txt
web/wt_config.xml
web/APP_KEY
.gnostr/org
+.gnostr/web
commit b0915709449124eedbd2046c8d87ccc01d2f7296
Author: randymcmillan <
[email protected]>
Date: Thu Sep 21 13:49:19 2023 -0400
v0.0.12
diff --git a/GIT-VERSION-FILE b/GIT-VERSION-FILE
index 40e3218f9..ee2913159 100644
--- a/GIT-VERSION-FILE
+++ b/GIT-VERSION-FILE
@@ -1 +1 @@
-GIT_VERSION = 0.0.8
+GIT_VERSION = 0.0.12
diff --git a/git-version b/git-version
index d169b2f2d..8cbf02c39 100644
--- a/git-version
+++ b/git-version
@@ -1 +1 @@
-0.0.8
+0.0.12
diff --git a/gnostr.c b/gnostr.c
index d6767f950..81d51b3e7 100644
--- a/gnostr.c
+++ b/gnostr.c
@@ -29,7 +29,7 @@
#include "include/openssl_hash.h"
-#define VERSION "0.0.8"
+#define VERSION "0.0.12"
#define MAX_TAGS 32
#define MAX_TAG_ELEMS 16
diff --git a/version b/version
index d169b2f2d..8cbf02c39 100644
--- a/version
+++ b/version
@@ -1 +1 @@
-0.0.8
+0.0.12
commit f59ae6145b882212ca3522544102232dc1e5434c
Author: randymcmillan <
[email protected]>
Date: Thu Sep 21 13:46:28 2023 -0400
nip:remove symlink
diff --git a/nip b/nip
deleted file mode 120000
index 529c37dda..000000000
--- a/nip
+++ /dev/null
@@ -1 +0,0 @@
-nips
\ No newline at end of file
commit 5d3a544588dbeac871153b607058734dc82d7eef
Author: randymcmillan <
[email protected]>
Date: Tue Sep 26 12:03:54 2023 -0400
deps/gnostr-web
diff --git a/deps/gnostr-web b/deps/gnostr-web
index ec1a86148..636c6fd6d 160000
--- a/deps/gnostr-web
+++ b/deps/gnostr-web
@@ -1 +1 @@
-Subproject commit ec1a86148b91665c9a966b7ac774ce6263081473
+Subproject commit 636c6fd6d8634a5bbc209930fae0ae1b443189aa
commit b6a59a07268a02585e2343c003526a3b1a99eb05
Author: @RandyMcMillan <
[email protected]>
Date: Tue Sep 19 23:49:58 2023 -0400
Rename intro.html to index.html
diff --git a/doc/intro.html b/doc/index.html
similarity index 100%
rename from doc/intro.html
rename to doc/index.html
commit f9afdcc9a2ecbe833e257fa5fbdfc3384979b513
Author: randymcmillan <
[email protected]>
Date: Sun Sep 24 08:27:15 2023 -0400
.gitmodules:web
diff --git a/web b/web
new file mode 160000
index 000000000..70e1c8fd8
--- /dev/null
+++ b/web
@@ -0,0 +1 @@
+Subproject commit 70e1c8fd88cfb8cfe23cd29ec42db0e5e424d0a4
commit b93f8aca1da35fa45dfbff29c81e0d37e959e8ee
Author: @RandyMcMillan <
[email protected]>
Date: Tue Sep 19 23:24:42 2023 -0400
static.yml:not ext/
diff --git a/.github/workflows/static.yml b/.github/workflows/static.yml
index 73bc4230c..e66340aca 100644
--- a/.github/workflows/static.yml
+++ b/.github/workflows/static.yml
@@ -37,7 +37,7 @@ jobs:
uses: actions/upload-pages-artifact@v2
with:
# Upload entire repository
- path: '.'
+ path: '!ext'
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v2
commit 294c1829a10ce3d3c8b3edcf6da85607ab762a9a
Author: randymcmillan <
[email protected]>
Date: Fri Sep 29 08:47:19 2023 -0400
web:update
diff --git a/web b/web
index 8a7733b0f..7e3cce2ec 160000
--- a/web
+++ b/web
@@ -1 +1 @@
-Subproject commit 8a7733b0f4bbe690a99e7e398abb5808504da160
+Subproject commit 7e3cce2ec7b775a6d89619a346f672781f4830c3
commit 604f7455727964ab50ff2a7357da36976d8670f0
Author: randymcmillan <
[email protected]>
Date: Thu Sep 28 18:58:34 2023 -0400
deps/gnostr-command:v0.0.2
diff --git a/deps/gnostr-command b/deps/gnostr-command
index 9a7204494..16fcb646f 160000
--- a/deps/gnostr-command
+++ b/deps/gnostr-command
@@ -1 +1 @@
-Subproject commit 9a7204494029a7b3e1b38d149f42f81aa729e845
+Subproject commit 16fcb646f08dcf719c027360fe4549efda0afc8a
commit 057b9699215fe202576578d1f57a8574f109f442
Author: randymcmillan <
[email protected]>
Date: Mon Oct 2 16:44:32 2023 -0400
make:detect:export brew prefix
diff --git a/GNUmakefile b/GNUmakefile
index c83b9e23b..48b957d0a 100644
--- a/GNUmakefile
+++ b/GNUmakefile
@@ -190,6 +190,8 @@ docker-start:venv
detect:## install sequence got Darwin and Linux
##detect
+ bash -c "[ '$(shell uname -s)' == 'Darwin' ] && type -P brew >/tmp/gnostr.log && \
+ export LIBRARY_PATH='$(LIBRARY_PATH):$(brew --prefix)/lib' || echo"
## detect uname -s uname -m uname -p and install sequence
## Darwin
@@ -237,6 +239,8 @@ ifneq ($(shell id -u),0)
@echo $(shell id -u -n) 'not root'
@echo
endif
+ bash -c "[ '$(shell uname -s)' == 'Linux' ] && type -P brew >/tmp/gnostr.log && \
+ export LIBRARY_PATH='$(LIBRARY_PATH):$(brew --prefix)/lib' || echo"
bash -c "[ '$(shell uname -s)' == 'Linux' ] && sudo apt-get update || echo "
bash -c "[ '$(shell uname -s)' == 'Linux' ] && sudo apt-get install autoconf || echo "
bash -c "[ '$(shell uname -s)' == 'Linux' ] && sudo apt-get install bison || echo "
@@ -334,7 +338,7 @@ endif
tag:## git tag & git push
tags:tag
-##tag
+##tag
## git tag $(OS)-$(OS_VERSION)-$(ARCH)-$(shell date +%s)
@git tag $(OS)-$(OS_VERSION)-$(ARCH)-$(shell date +%s)
@git push -f --tags || echo "unable to push tags..."
commit d7eef97f42d1e6180b9771c5f81356b8c3906f50
Author: randymcmillan <
[email protected]>
Date: Thu Sep 28 19:40:16 2023 -0400
web:v0.0.8
diff --git a/web b/web
index cd956967b..8a7733b0f 160000
--- a/web
+++ b/web
@@ -1 +1 @@
-Subproject commit cd956967b3f8152d48fd4f7a5c77deccf471bcac
+Subproject commit 8a7733b0f4bbe690a99e7e398abb5808504da160
commit f76bb53805c9c168d5632b3a3c2958844afb3a1d
Author: randymcmillan <
[email protected]>
Date: Tue Sep 26 12:06:56 2023 -0400
.gitmodules:deps/gnostr-web: deinit
diff --git a/.gitmodules b/.gitmodules
index 021f413e5..fe84ae771 100644
--- a/.gitmodules
+++ b/.gitmodules
@@ -98,11 +98,6 @@
url = https://github.com/gnostr-org/gnostr-org.git
branch = master
ignore = dirty
-[submodule "deps/gnostr-web"]
- path = deps/gnostr-web
- url = https://github.com/gnostr-org/gnostr-web.git
- branch = master
- ignore = dirty
[submodule "web"]
path = web
url = https://github.com/gnostr-org/gnostr-web.git
commit 84f756a9240d02d793d4af4a7246059f1457e4fd
Author: randymcmillan <
[email protected]>
Date: Tue Sep 26 12:09:07 2023 -0400
gnostr.mk:deps/gnostr-web: deinit
diff --git a/gnostr.mk b/gnostr.mk
index e2cdbc957..c04c70801 100644
--- a/gnostr.mk
+++ b/gnostr.mk
@@ -139,10 +139,6 @@ libjq.a: deps/jq/.libs/libjq.a## libjq.a
-
-
-deps/gnostr-web/.git:
- @devtools/refresh-submodules.sh deps/gnostr-web
gnostr-web-deploy:
gnostr-web --http-address=0.0.0.0 --http-port=80 --deploy-path=/web --docroot=.
commit 2b546e32a91b30568835103bb8df48b96eae7dfe
Author: randymcmillan <
[email protected]>
Date: Thu Sep 28 19:01:12 2023 -0400
gnostr.c:v0.0.13
diff --git a/GIT-VERSION-FILE b/GIT-VERSION-FILE
index ee2913159..eaeb939f6 100644
--- a/GIT-VERSION-FILE
+++ b/GIT-VERSION-FILE
@@ -1 +1 @@
-GIT_VERSION = 0.0.12
+GIT_VERSION = 0.0.13
diff --git a/git-version b/git-version
index 8cbf02c39..43b296183 100644
--- a/git-version
+++ b/git-version
@@ -1 +1 @@
-0.0.12
+0.0.13
diff --git a/gnostr.c b/gnostr.c
index 81d51b3e7..6040f30b5 100644
--- a/gnostr.c
+++ b/gnostr.c
@@ -29,7 +29,7 @@
#include "include/openssl_hash.h"
-#define VERSION "0.0.12"
+#define VERSION "0.0.13"
#define MAX_TAGS 32
#define MAX_TAG_ELEMS 16
diff --git a/version b/version
index 8cbf02c39..43b296183 100644
--- a/version
+++ b/version
@@ -1 +1 @@
-0.0.12
+0.0.13
commit 974640555c41933560e666a6d0341b1ecac26ca4
Author: @RandyMcMillan <
[email protected]>
Date: Thu Oct 12 16:55:17 2023 -0400
README.md:index.html:sources/HEADER.md
diff --git a/README.md b/README.md
index f7ab5be6d..a924dee68 100644
--- a/README.md
+++ b/README.md
@@ -1,3 +1,16 @@
+[![pre-release-matrix](https://github.com/gnostr-org/gnostr/actions/workflows/pre-release.yml/badge.svg)](https://github.com/gnostr-org/gnostr/actions/workflows/pre-release.yml)
+
+
+---
+
+<details>
+<summary>checkout nostril</summary>
+<p>
+
+[github.com/jb55/nostril.git](https://github.com/jb55/nostril.git)
+
+[git://jb55.com/nostril](git://jb55.com/nostril)
+
nostril(1)
# NAME
@@ -106,3 +119,6 @@ nostril --mine-pubkey --pow <difficulty>
./nostril --envelope --sec <key> --content "this is reply message" --tag e <thread_id> --tag e <note_id> | websocat wss://relay.damus.io
```
+</p>
+</details>
+
diff --git a/index.html b/index.html
index bcf85ad81..9604cda51 100644
--- a/index.html
+++ b/index.html
@@ -165,6 +165,19 @@
<![endif]-->
</head>
<body>
+<p><a
+href="https://github.com/gnostr-org/gnostr/actions/workflows/pre-release.yml"><img
+src="https://github.com/gnostr-org/gnostr/actions/workflows/pre-release.yml/badge.svg"
+alt="pre-release-matrix" /></a></p>
+<hr />
+<details>
+<summary>
+checkout nostril
+</summary>
+<p>
+<p><a
+href="https://github.com/jb55/nostril.git">github.com/jb55/nostril.git</a></p>
+<p><a href="git://jb55.com/nostril">git://jb55.com/nostril</a></p>
<p>nostril(1)</p>
<h1 id="name">NAME</h1>
<p>nostril - generate nostr events</p>
@@ -223,5 +236,7 @@ mine for proof-of-work.</p>
<p><em>Reply to an event. nip10 compliant, includes the
<code>thread_id</code></em></p>
<pre><code>./nostril --envelope --sec <key> --content "this is reply message" --tag e <thread_id> --tag e <note_id> | websocat wss://relay.damus.io</code></pre>
+</p>
+</details>
</body>
</html>
diff --git a/sources/COMMANDS.md b/sources/COMMANDS.md
index e7832096d..519466729 100644
--- a/sources/COMMANDS.md
+++ b/sources/COMMANDS.md
@@ -1,3 +1,14 @@
+
+---
+
+<details>
+<summary>checkout nostril</summary>
+<p>
+
+[github.com/jb55/nostril.git](https://github.com/jb55/nostril.git)
+
+[git://jb55.com/nostril](git://jb55.com/nostril)
+
nostril(1)
# NAME
@@ -105,3 +116,6 @@ nostril --mine-pubkey --pow <difficulty>
```
./nostril --envelope --sec <key> --content "this is reply message" --tag e <thread_id> --tag e <note_id> | websocat wss://relay.damus.io
```
+
+</p>
+</details>
diff --git a/sources/HEADER.md b/sources/HEADER.md
index e69de29bb..7109f898d 100644
--- a/sources/HEADER.md
+++ b/sources/HEADER.md
@@ -0,0 +1,2 @@
+[![pre-release-matrix](https://github.com/gnostr-org/gnostr/actions/workflows/pre-release.yml/badge.svg)](https://github.com/gnostr-org/gnostr/actions/workflows/pre-release.yml)
+
commit 426a2189f7658d4c02acd912e633fa2c21336f3f
Author: randymcmillan <
[email protected]>
Date: Wed Sep 27 17:13:51 2023 -0400
deps/gnostr-sha256:v0.0.3
diff --git a/README.md b/README.md
index 9c6661599..f7ab5be6d 100644
--- a/README.md
+++ b/README.md
@@ -106,4 +106,3 @@ nostril --mine-pubkey --pow <difficulty>
./nostril --envelope --sec <key> --content "this is reply message" --tag e <thread_id> --tag e <note_id> | websocat wss://relay.damus.io
```
-[http://localhost/web](http://localhost/web)
diff --git a/deps/gnostr-sha256 b/deps/gnostr-sha256
index e64b0bdeb..d9b22c6ad 160000
--- a/deps/gnostr-sha256
+++ b/deps/gnostr-sha256
@@ -1 +1 @@
-Subproject commit e64b0bdeb2ac0d610f8612c7c7ab39af1ecef208
+Subproject commit d9b22c6ad111f7bd7b3192d7ccad10bee51d5061
commit 4e304312e3ae677e0d8b3e02a9c6355f8e4ce504
Author: randymcmillan <
[email protected]>
Date: Sun Oct 1 00:31:11 2023 -0400
template/gnostr-xor:
diff --git a/template/gnostr-xor b/template/gnostr-xor
new file mode 100755
index 000000000..60d08ed31
--- /dev/null
+++ b/template/gnostr-xor
@@ -0,0 +1,43 @@
+#!/usr/bin/env python3
+from hashlib import sha256
+import subprocess
+import struct
+import sys
+import os
+program = sys.argv[0]
+def get_arg(index):
+ try:
+ sys.argv[index]
+ except IndexError:
+ return ''
+ else:
+ return sys.argv[index]
+arg1 = get_arg(1)
+arg2 = get_arg(2)
+arg3 = get_arg(3)
+arg4 = get_arg(4)
+if not arg1:
+ arg1 = '0000000000000000000000000000000000000000000000000000000000000000'
+ ## print(arg1);
+if not arg2:
+ arg2 = '0000000000000000000000000000000000000000000000000000000000000000'
+ ## print(arg2);
+## if not arg3:
+## arg3 = '0000000000000000000000000000000000000000000000000000000000000000'
+## ## print(arg3);
+def change_to_be_hex(s):
+ return int(s,base=16)
+def xor_two_str(str1,str2):
+ a = change_to_be_hex(str1)
+ b = change_to_be_hex(str2)
+ return hex(a ^ b)
+## gnostr_blockheight = "gnostr-blockheight"
+## blockheight = subprocess.call(gnostr_blockheight, stdout=open(os.devnull, 'wb'))
+## blockheight_hash = sha256(str(blockheight).encode('utf-8')).hexdigest()
+## print(xor_two_str(blockheight_hash, key))
+if arg1 and arg2:
+ print(xor_two_str(arg1, arg2)[2:])
+## if arg1 and arg3:
+## print(xor_two_str(arg1, arg3))
+## if arg2 and arg3:
+## print(xor_two_str(arg2, arg3))
commit fbc3fd22219d26f8e5b15353305fd9dc33893ff1
Author: randymcmillan <
[email protected]>
Date: Tue Sep 26 12:39:28 2023 -0400
make:web:web-deploy:gnostr-web-deploy
diff --git a/README.md b/README.md
index f7ab5be6d..9c6661599 100644
--- a/README.md
+++ b/README.md
@@ -106,3 +106,4 @@ nostril --mine-pubkey --pow <difficulty>
./nostril --envelope --sec <key> --content "this is reply message" --tag e <thread_id> --tag e <note_id> | websocat wss://relay.damus.io
```
+[http://localhost/web](http://localhost/web)
diff --git a/gnostr.mk b/gnostr.mk
index c04c70801..32bfc223a 100644
--- a/gnostr.mk
+++ b/gnostr.mk
@@ -139,6 +139,13 @@ libjq.a: deps/jq/.libs/libjq.a## libjq.a
+
+.PHONY:web
+web-deploy:gnostr-web-deploy
+web:
+ @devtools/refresh-submodules.sh web
+ @cmake . -DBUILD_WEB=ON -DCMAKE_C_FLAGS=-g -DCMAKE_BUILD_TYPE=Release
+ @$(MAKE) gnostr-web
gnostr-web-deploy:
gnostr-web --http-address=0.0.0.0 --http-port=80 --deploy-path=/web --docroot=.
commit de44d76245cf90ac4e6a93c33123dc4efe6f74df
Author: randymcmillan <
[email protected]>
Date: Thu Sep 28 20:01:33 2023 -0400
gnostr.js:add
diff --git a/gnostr.js b/gnostr.js
new file mode 100755
index 000000000..351e6ae95
--- /dev/null
+++ b/gnostr.js
@@ -0,0 +1,48 @@
+#!/usr/bin/env node
+
+var shell = require('shelljs');
+
+if (!shell.which('git')) {
+ console.log(shel.which('git'));
+ shell.echo('Sorry, this script requires git');
+ shell.exit(1);
+}
+// console.log(shell.which('git'));
+if (!shell.which('gnostr')) {
+ console.log(shell.which('gnostr'));
+ shell.echo('Sorry, this script requires gnostr');
+ shell.exit(1);
+}
+// console.log(shell.which('gnostr'));
+if (!shell.which('gnostr-proxy')) {
+ console.log(shell.which('gnostr-proxy'));
+ shell.echo('Sorry, this script requires gnostr');
+ shell.exit(1);
+}
+// console.log(shell.which('gnostr-proxy'));
+if (!shell.which('gnostr-sha256')) {
+ console.log(shell.which('gnostr-sha256'));
+ shell.echo('Sorry, this script requires gnostr-sha256');
+ shell.exit(1);
+}
+// console.log(shell.which('gnostr-sha256'));
+
+var body = shell.exec('gnostr --sec $(gnostr-sha256)');
+//console.log(body);
+
+
+const { argv } = require('node:process');
+const process = require('node:process');
+const path = require('node:path');
+const { cwd } = require('node:process');
+// console.log(`cwd=${cwd()}`);
+
+// print process.argv
+argv.forEach((val, index) => {
+
+ if (`${val}` == `-h`)
+ { console.log(`HELP!!`); }
+ else
+ { console.log(`${index}: ${val}`); }
+
+});
diff --git a/package.json b/package.json
new file mode 100644
index 000000000..dda1c8e1e
--- /dev/null
+++ b/package.json
@@ -0,0 +1,34 @@
+{
+ "name": "gnostr.js",
+ "version": "0.0.1",
+ "description": "gnostr.js",
+ "main": "gnostr.js",
+ "directories": {
+ "doc": "doc",
+ "example": "examples",
+ "test": "test"
+ },
+ "scripts": {
+ "test": "./gnostr.js"
+ },
+ "repository": {
+ "type": "git",
+ "url": "git+https://github.com/gnostr-org/gnostr.git"
+ },
+ "keywords": [
+ "gnostr",
+ "nostr",
+ "git",
+ "node",
+ "nodejs"
+ ],
+ "author": "@randymcmillan",
+ "license": "MIT",
+ "bugs": {
+ "url": "https://github.com/gnostr-org/gnostr/issues"
+ },
+ "homepage": "https://github.com/gnostr-org/gnostr#readme",
+ "dependencies": {
+ "shelljs": "0.8.5"
+ }
+}
commit 5c7e105cc31758da2815ca0b20afd306c544259a
Author: @RandyMcMillan <
[email protected]>
Date: Thu Oct 12 16:31:17 2023 -0400
make:gnostr-cargo-binstall
diff --git a/gnostr.mk b/gnostr.mk
index 32bfc223a..d5a452dc0 100644
--- a/gnostr.mk
+++ b/gnostr.mk
@@ -171,6 +171,18 @@ gnostr-set-relays:
$(CC) ./template/gnostr-set-relays.c -o gnostr-set-relays
+gnostr-cargo-binstall:
+ type -P cargo && \
+ cargo install cargo-binstall && \
+ cargo-binstall \
+ --no-confirm \
+ --no-discover-github-token \
+ gnostr-cat \
+ gnostr-cli \
+ gnostr-command \
+ gnostr-grep \
+ gnostr-legit \
+ gnostr-sha256
.PHONY:gnostr-build
gnostr-build:## gnostr-build
commit eb6ec5dd0a33b4885ad28fbee503a6ab5337c1b2
Author: randymcmillan <
[email protected]>
Date: Tue Sep 26 21:34:42 2023 -0400
web:update submodule
diff --git a/web b/web
index 636c6fd6d..cd956967b 160000
--- a/web
+++ b/web
@@ -1 +1 @@
-Subproject commit 636c6fd6d8634a5bbc209930fae0ae1b443189aa
+Subproject commit cd956967b3f8152d48fd4f7a5c77deccf471bcac
commit f5aef95b9fe18d6dc28c0c2a89d587a1c2e0957d
Author: randymcmillan <
[email protected]>
Date: Tue Sep 26 12:12:15 2023 -0400
deps/gnostr-web:remove
diff --git a/deps/gnostr-web b/deps/gnostr-web
deleted file mode 160000
index 636c6fd6d..000000000
--- a/deps/gnostr-web
+++ /dev/null
@@ -1 +0,0 @@
-Subproject commit 636c6fd6d8634a5bbc209930fae0ae1b443189aa
commit 7d9d5bee3893e89fdf2ecd62263345ee9c5e4558
Author: @RandyMcMillan <
[email protected]>
Date: Thu Oct 12 16:07:55 2023 -0400
CMakeLists.txt:make gnostr-get-relays-c
template/gnostr-get-relays.c -> src/gnostr-get-relays.c
diff --git a/.gitignore b/.gitignore
index 5c840743e..5a593d863 100644
--- a/.gitignore
+++ b/.gitignore
@@ -5,6 +5,7 @@ gnostr-cli
gnostr-client
gnostr-command
gnostr-get-relays
+gnostr-get-relays-c
gnostr-git
gnostr-git-instaweb
gnostr-gnode
diff --git a/CMakeLists.txt b/CMakeLists.txt
index d5c847af7..238b84827 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -39,6 +39,10 @@ if (MSVC)
set(src ${src} clock_gettime.h)
endif()
+##TODO:rename to gnostr-get-relays
+## once tools are stable
+add_executable(gnostr-get-relays-c src/gnostr-get-relays.c)
+
#//////////////////////////
#link with libraries
#lib_dep contains a cascade definition of all the libraries needed to link
diff --git a/template/gnostr-get-relays.c b/src/gnostr-get-relays.c
similarity index 75%
rename from template/gnostr-get-relays.c
rename to src/gnostr-get-relays.c
index 7389ff07b..6869ee524 100755
--- a/template/gnostr-get-relays.c
+++ b/src/gnostr-get-relays.c
@@ -5,7 +5,9 @@
#include <string.h>
int main(int argc, const char **argv) {
char command[128];
- strcpy(command, "curl -sS 'https://api.nostr.watch/v1/online' ");
+ strcpy(command, "curl -sS 'https://api.nostr.watch/v1/online' > /tmp/gnostr.relays ");
+ system(command);
+ strcpy(command, "cat /tmp/gnostr.relays ");
system(command);
return 0;
}
commit 6e47a5e793ccb4209fefe9b1dd40f7396a99d1f6
Author: @RandyMcMillan <
[email protected]>
Date: Thu Oct 12 21:28:09 2023 -0400
cargo.mk:cargo-deps-gnostr-cli/grep
+ cargo -Z unstable-options -C deps/gnostr-cli install --path .
cargo-deps-gnostr-command:### cargo-deps-gnostr-command
cargo -Z unstable-options -C deps/gnostr-command install --path .
+cargo-deps-gnostr-grep:### cargo-deps-gnostr-grep
+ cargo -Z unstable-options -C deps/gnostr-grep install --path .
diff --git a/cargo.mk b/cargo.mk
index 55e4ae095..7f74a6228 100644
--- a/cargo.mk
+++ b/cargo.mk
@@ -4,3 +4,50 @@ cargo-br:
cargo-install:cargo-i
cargo-i:
cargo install --path . -vv $(FORCE)
+##
+##make cargo-*
+cargo-help:### cargo-help
+ @awk 'BEGIN {FS = ":.*?###"} /^[a-zA-Z_-]+:.*?###/ {printf "\033[36m%-15s\033[0m %s\n", $$1, $$2}' $(MAKEFILE_LIST)
+cargo-b:cargo-build### cargo b
+cargo-build:### cargo build
+## make cargo-build q=true
+ @. $(HOME)/.cargo/env
+ @RUST_BACKTRACE=all cargo b $(QUIET)
+cargo-install:### cargo install --path .
+ #@. $(HOME)/.cargo/env
+ @cargo install --path $(PWD)
+cargo-br:cargo-build-release### cargo-br
+## make cargo-br q=true
+cargo-build-release:### cargo-build-release
+## make cargo-build-release q=true
+ @. $(HOME)/.cargo/env
+ @cargo b --release $(QUIET)
+cargo-check:### cargo-check
+ @. $(HOME)/.cargo/env
+ @cargo c
+cargo-bench:### cargo-bench
+ @. $(HOME)/.cargo/env
+ @cargo bench
+cargo-test:### cargo-test
+ @. $(HOME)/.cargo/env
+ @cargo test
+cargo-report:### cargo-report
+ @. $(HOME)/.cargo/env
+ cargo report future-incompatibilities --id 1
+
+cargo-deps-gnostr-cat:### cargo-deps-gnostr-cat
+ cargo -Z unstable-options -C deps/gnostr-cat install --path .
+cargo-deps-gnostr-cli:### cargo-deps-gnostr-cli
+ cargo -Z unstable-options -C deps/gnostr-cli install --path .
+cargo-deps-gnostr-command:### cargo-deps-gnostr-command
+ cargo -Z unstable-options -C deps/gnostr-command install --path .
+cargo-deps-gnostr-grep:### cargo-deps-gnostr-grep
+ cargo -Z unstable-options -C deps/gnostr-grep install --path .
+cargo-deps-gnostr-legit:### cargo-deps-gnostr-legit
+ cargo -Z unstable-options -C deps/gnostr-legit install --path .
+cargo-deps-gnostr-sha256:### cargo-deps-gnostr-sha256
+ cargo -Z unstable-options -C deps/gnostr-sha256 install --path .
+
+# vim: set noexpandtab:
+# vim: set setfiletype make
+>>>>>>> 43c74bc4a (cargo.mk:cargo-deps-gnostr-cli/grep)
commit 2cf63e797feb090aeacbe23a2e6c25eca390d85e
Author: @RandyMcMillan <
[email protected]>
Date: Thu Oct 12 21:39:48 2023 -0400
make:cargo-deps-gnostr-all
diff --git a/cargo.mk b/cargo.mk
index 7f74a6228..bce0cad65 100644
--- a/cargo.mk
+++ b/cargo.mk
@@ -35,6 +35,7 @@ cargo-report:### cargo-report
@. $(HOME)/.cargo/env
cargo report future-incompatibilities --id 1
+cargo-deps-gnostr-all:cargo-deps-gnostr-cat cargo-deps-gnostr-cli cargo-deps-gnostr-command cargo-deps-gnostr-grep cargo-deps-gnostr-legit cargo-deps-gnostr-sha256### cargo-deps-gnostr-all
cargo-deps-gnostr-cat:### cargo-deps-gnostr-cat
cargo -Z unstable-options -C deps/gnostr-cat install --path .
cargo-deps-gnostr-cli:### cargo-deps-gnostr-cli
commit c9a7679c59355c1b3865b4b0b38057b7dbe47302
Author: @RandyMcMillan <
[email protected]>
Date: Thu Oct 12 22:13:18 2023 -0400
template/gnostr-xor:test vectors
diff --git a/template/gnostr-xor b/template/gnostr-xor
index 60d08ed31..a3fc60d66 100755
--- a/template/gnostr-xor
+++ b/template/gnostr-xor
@@ -41,3 +41,34 @@ if arg1 and arg2:
## print(xor_two_str(arg1, arg3))
## if arg2 and arg3:
## print(xor_two_str(arg2, arg3))
+
+
+## TODO:test vectors
+## gnostr-xor \
+## $(gnostr-sha256 e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855) \
+## $(gnostr-sha256 0000000000000000000000000000000000000000000000000000000000000000)
+## add77469e0dddf203c91ba4450576317737b1b61590239f94fcc2f011a13f7b3
+## gnostr-xor \
+## $(gnostr-sha256 0000000000000000000000000000000000000000000000000000000000000000) \
+## $(gnostr-sha256 e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855)
+## add77469e0dddf203c91ba4450576317737b1b61590239f94fcc2f011a13f7b3
+
+## gnostr-xor \
+## $(gnostr-sha256 0000000000000000000000004b825dc642cb6eb9a060e54bf8d69288fbee4904) \
+## $(gnostr-sha256 0000000000000000000000000000000000000000000000000000000000000000)
+## d4aa5c4bb8931d39ff40bf060f37aaf4af5c358fdeab2b2277ef9045d5c1ae0f
+
+## gnostr-xor \
+## $(gnostr-sha256 0000000000000000000000000000000000000000000000000000000000000000) \
+## $(gnostr-sha256 0000000000000000000000004b825dc642cb6eb9a060e54bf8d69288fbee4904)
+## d4aa5c4bb8931d39ff40bf060f37aaf4af5c358fdeab2b2277ef9045d5c1ae0f
+
+## gnostr-xor \
+## $(gnostr-sha256 0000000000000000000000004b825dc642cb6eb9a060e54bf8d69288fbee4904) \
+## $(gnostr-sha256 d4aa5c4bb8931d39ff40bf060f37aaf4af5c358fdeab2b2277ef9045d5c1ae0f)
+## 53fea41583e086149820bd57567b1998209677822e40e1e4b3b8201c80d74e91
+
+## gnostr-xor \
+## $(gnostr-sha256 d4aa5c4bb8931d39ff40bf060f37aaf4af5c358fdeab2b2277ef9045d5c1ae0f) \
+## $(gnostr-sha256 0000000000000000000000004b825dc642cb6eb9a060e54bf8d69288fbee4904)
+## 53fea41583e086149820bd57567b1998209677822e40e1e4b3b8201c80d74e91
commit e5e8715cffcedeb2f625cfe22aa51a2cbbbc27e4
Author: @RandyMcMillan <
[email protected]>
Date: Sat Nov 4 19:18:24 2023 -0400
template/gnostr-hexidrome:initial commit
diff --git a/template/gnostr-hexidrome b/template/gnostr-hexidrome
new file mode 100755
index 000000000..9258fffda
--- /dev/null
+++ b/template/gnostr-hexidrome
@@ -0,0 +1,84 @@
+#!/usr/bin/env python3
+import sys
+
+# define a function to check if a number is a palindrome
+def is_palindrome(n):
+ # convert the number to a string
+ s = str(n)
+ # check if the string is the same forwards and backwards
+ return s == s[::-1]
+
+def loop(lb, ub):
+
+ # define the start and end of the range
+ start = int(lb)
+ end = int(ub)
+
+ # create an empty list to store the palindromes
+ palindromes = []
+
+ # loop through the range of numbers
+ for n in range(start, end+1):
+ # if the number is a palindrome, add it to the list
+ if is_palindrome(n):
+ palindromes.append(n)
+
+ # print the list of palindromes
+ if len(palindromes) > 0:
+ ## print(palindromes)
+ ## print('[{}]'.format(', '.join(str(x)[2:] for x in palindromes)))
+ ## print('[{}]'.format(', '.join(str(x) for x in palindromes)))
+ ## print('[{}]'.format(' '.join(str(x) for x in palindromes)))
+ ## print('{}'.format(' '.join(str(x) for x in palindromes)))
+ ## print('{}'.format(''.join(str(x) for x in palindromes)))
+ ## print(palindromes)
+
+ hexlist = list(map(hex, palindromes));
+ if len(hexlist) > 0:
+ ## print(hexlist)
+ ## print('[{}]'.format(', '.join(str(x)[2:] for x in hexlist)))
+ ## print('[{}]'.format(''.join(str(x)[2:] for x in hexlist)))
+ print('{}'.format(''.join(str(x)[2:] for x in hexlist)))
+
+if (args_count := len(sys.argv)) == 3:
+
+ if int(sys.argv[1]) > int(sys.argv[2]):
+ ## print("int(sys.argv[1]) > int(sys.argv[2])");
+ lower_bound = int(sys.argv[2]);
+ upper_bound = int(sys.argv[1]);
+ loop(lower_bound, upper_bound)
+
+ if int(sys.argv[1]) < int(sys.argv[2]) or int(sys.argv[1]) == int(sys.argv[2]):
+ ## print("int(sys.argv[1]) < int(sys.argv[2])");
+ lower_bound = int(sys.argv[1]);
+ upper_bound = int(sys.argv[2]);
+ loop(lower_bound, upper_bound)
+
+elif args_count == 2:
+
+ if int(sys.argv[1]) > int(sys.argv[2]):
+ print("int(sys.argv[1]) > int(sys.argv[2])");
+ lower_bound = int(0);
+ upper_bound = int(sys.argv[2]);
+ loop(lower_bound, upper_bound)
+
+ if int(sys.argv[1]) < int(sys.argv[2]):
+ print("int(sys.argv[1]) < int(sys.argv[2])");
+ lower_bound = int(0);
+ upper_bound = int(sys.argv[1]);
+ loop(lower_bound, upper_bound)
+
+
+elif args_count > 2:
+
+ print("Usage:\n")
+ print("is_palindrome <int>\n")
+ print("is_palindrome <int> <int>\n")
+ raise SystemExit(0)
+
+elif args_count < 2:
+
+ print("Usage:\n")
+ print("is_palindrome <int>\n")
+ print("is_palindrome <int> <int>\n")
+ raise SystemExit(0)
commit 6fd2ef556b6ddc942066a34e11ddcfbd8b3f7eb2
Author: @RandyMcMillan <
[email protected]>
Date: Sat Nov 4 20:35:06 2023 -0400
gnostr.c: GIT_CONFIG: gnostr-git config --add gnostr.secretkeys
diff --git a/gnostr.c b/gnostr.c
index 1cc330810..71c36917f 100644
--- a/gnostr.c
+++ b/gnostr.c
@@ -100,9 +100,18 @@ void usage()
{
printf("usage: gnostr [OPTIONS]\n");
printf("\n");
- printf(" GIT OPTIONS\n");
+ printf(" GNOSTR-GIT:\n");
+ printf(" CONFIG:\n");
printf("\n");
+ printf(" gnostr-git config\n");
+ printf(" gnostr git config --global\n");
+ printf(" gnostr git config --global --add gnostr.secretkey $(gnostr-sha256 12345)\n");
+ printf(" gnostr git config --global --get gnostr.secretkey\n");
+ printf(" 5994471abb01112afcc18159f6cc74b4f511b99806da59b3caf5a9c173cacfc5\n");
printf("\n");
+ printf(" gnostr --sec $(gnostr-git config --global --get gnostr.secretkey)\n");
+ printf("\n");
+ printf(" gnostr --sec $(gnostr-git config --global --get gnostr.secretkey) --envelope --content \n");
printf(" RELAY OPTIONS\n");
printf("\n");
printf("\n");
@@ -123,6 +132,15 @@ void usage()
printf(" -e <event_id> shorthand for --tag e <event_id>\n");
printf(" -p <pubkey> shorthand for --tag p <pubkey>\n");
printf(" -t <hashtag> shorthand for --tag t <hashtag>\n");
+ printf("\n");
+ printf("\n");
+
+
+//gnostr-git config --global --get gnostr.secretkey
+
+// git config --global --add gnostr.secretkey
+// 0000000000000000000000000000000000000000000000000000000000000001
+
exit(0);
}
commit 4c4be136164c21827fb4b609fe05d5cf338b951d
Author: @RandyMcMillan <
[email protected]>
Date: Fri Oct 27 19:33:22 2023 -0400
gnostr.c:
// printf("TODO:handle gnostr-sub-sub");
diff --git a/gnostr.c b/gnostr.c
index 6040f30b5..1cc330810 100644
--- a/gnostr.c
+++ b/gnostr.c
@@ -767,7 +767,11 @@ static void try_subcommand(int argc, const char *argv[])
if (strlen(sub) >= 1 && sub[0] != '-') {
snprintf(buf, sizeof(buf)-1, "gnostr-%s", sub);
execvp(buf, (char * const *)argv+1);
- }
+ } else {
+
+ // printf("TODO:handle gnostr-sub-sub");
+
+ }
}
commit e04110caa7da28acc6f7a13069542b6d9e7f56c8
Author: @RandyMcMillan <
[email protected]>
Date: Sun Oct 22 20:48:05 2023 -0400
template/gnostr-e:begin offest impl
diff --git a/template/gnostr-e b/template/gnostr-e
index 76e0df824..de0063703 100755
--- a/template/gnostr-e
+++ b/template/gnostr-e
@@ -46,7 +46,7 @@ def e_101 ( ):
return
-def e_spigot ( n ):
+def e_spigot ( n, offset ):
#*****************************************************************************80
#
@@ -124,7 +124,7 @@ def e_spigot_test ( ):
## print ( '' )
## print ( ' Compute and print the first ', n, 'decimal digits of e.mantissa:' )
## print ( '' )
- e_spigot ( n )
+ e_spigot ( n, 0 )
## print ( '' )
## print ( ' Correct first 100 digits of e.mantissa:' )
@@ -219,25 +219,23 @@ if ( __name__ == '__main__' ):
if (get_arg(1) == "--test" or
get_arg(1) == "-test" or
get_arg(1) == "-t" or
- get_arg(1) == ""):
+ get_arg(1) == "t"):
e_spigot_test ();exit(0);
if(get_arg(1)):
- ## print("str(sys.argv[1]):", str(sys.argv[1]));
- if sys.argv[1] == "-h" or sys.argv[1] == "--help":
- ## print("-h --help", str(sys.argv[1]));
- help();
- exit(0);
argv1 = int(sys.argv[1]);
- e_spigot ( argv1 );
+ else:
+ argv1 = 100;
if(get_arg(2)):
- ## print("str(sys.argvp[2]):", str(sys.argv[2]));
- ## e_spigot ( str(sys.argv[2] ));
argv2 = int(sys.argv[2]);
- e_spigot ( argv2 );
+ else:
+ argv2 = 0;
+
+ ## NOTE: we want offset * 4 ## see: gnostr-pi
+ e_spigot ( argv1, argv2);
- ## timestamp ( );
+ ## timestamp ( ); ##TODO: repurpose weeble/wobble
## e_spigot_test ( );
## timestamp ( )
commit 1c7420bc830628c0a44915785d3d10f04a6b575c
Author: @RandyMcMillan <
[email protected]>
Date: Mon Oct 23 09:23:07 2023 -0400
template/gnostr-e:gnostr-pi -t 100 100 no error
diff --git a/template/gnostr-e b/template/gnostr-e
index 3079167ad..19f89e38b 100755
--- a/template/gnostr-e
+++ b/template/gnostr-e
@@ -123,7 +123,7 @@ def about():
#
print("about")
-def e_spigot_test ( n=100 ):
+def e_spigot_test ( n=100, offset=0 ):
import platform
@@ -141,7 +141,7 @@ def e_spigot_test ( n=100 ):
## print("2", get_arg(2));
## print("3", get_arg(3));
- e_spigot ( n, 0 )
+ e_spigot ( n, offset )
## print ( '' )
## print ( ' Correct first 100 digits of e.mantissa:' )
commit 82e617baaade39d0076ed8c14e04cdb293e222ce
Author: @RandyMcMillan <
[email protected]>
Date: Tue Oct 31 16:28:02 2023 -0400
GNUmakefile:rustup-init env vars
RUSTUP_INIT_SKIP_PATH_CHECK=yes
TOOLCHAIN=stable
Z= ##
diff --git a/GNUmakefile b/GNUmakefile
index 48b957d0a..0b085f356 100644
--- a/GNUmakefile
+++ b/GNUmakefile
@@ -31,6 +31,27 @@ endif
HOMEBREW :=$(shell which brew || false)
+RUSTUP_INIT_SKIP_PATH_CHECK=yes
+TOOLCHAIN=stable
+Z= ##
+ifneq ($(toolchain),)
+
+ifeq ($(toolchain),nightly)
+TOOLCHAIN=nightly
+Z=-Z unstable-options
+endif
+
+ifeq ($(toolchain),stable)
+TOOLCHAIN=stable
+Z= ##
+endif
+
+endif
+
+export RUSTUP_INIT_SKIP_PATH_CHECK
+export TOOLCHAIN
+export Z
+
ifeq ($(verbose),true)
VERBOSE :=-v
else
commit 3213612149dbf4594e357b39e929f36d2f15678f
Author: @RandyMcMillan <
[email protected]>
Date: Fri Oct 20 15:10:36 2023 -0400
.gitignore:gnostr-pi
diff --git a/.gitignore b/.gitignore
index 5a593d863..c1dcd75cc 100644
--- a/.gitignore
+++ b/.gitignore
@@ -11,6 +11,7 @@ gnostr-git-instaweb
gnostr-gnode
gnostr-grep
gnostr-legit
+gnostr-pi
gnostr-req
gnostr-set-relays
gnostr-sha256
commit fd8d8899813e819255c779a45592061c5c7b2f9c
Author: @RandyMcMillan <
[email protected]>
Date: Sun Oct 22 20:38:46 2023 -0400
template/gnostr-e:quieter gnostr-e --test
diff --git a/template/gnostr-e b/template/gnostr-e
index afbd1231f..76e0df824 100755
--- a/template/gnostr-e
+++ b/template/gnostr-e
@@ -32,7 +32,7 @@ def e_101 ( ):
#
# John Burkardt
#
- print ( '2.', end = '' )
+ ## print ( '2.', end = '' )
print ( '7182818284', end = '' )
print ( '5904523536', end = '' )
print ( '0287471352', end = '' )
@@ -115,27 +115,27 @@ def e_spigot_test ( ):
#
import platform
- print ( '' )
- print ( 'e_spigot_test:' )
- print ( ' Python version: %s' % ( platform.python_version ( ) ) )
- print ( ' Test e_spigot()' )
+ ## print ( '' )
+ ## print ( 'e_spigot_test:' )
+ ## print ( ' Python version: %s' % ( platform.python_version ( ) ) )
+ ## print ( ' Test e_spigot()' )
n = 101
- print ( '' )
- print ( ' Compute and print the first ', n, 'decimal digits of e:.' )
- print ( '' )
+ ## print ( '' )
+ ## print ( ' Compute and print the first ', n, 'decimal digits of e.mantissa:' )
+ ## print ( '' )
e_spigot ( n )
- print ( '' )
- print ( ' Correct first 101 digits of e:' )
- print ( '' )
+ ## print ( '' )
+ ## print ( ' Correct first 100 digits of e.mantissa:' )
+ ## print ( '' )
e_101 ( )
#
# Terminate.
#
- print ( '' )
- print ( 'e_spigot_test:' )
- print ( ' Normal end of execution.' )
+ ## print ( '' )
+ ## print ( 'e_spigot_test:' )
+ ## print ( ' Normal end of execution.' )
return
@@ -198,7 +198,7 @@ if ( __name__ == '__main__' ):
"last ="])
except:
options = "";
- print("Error Message ");
+ ## print("Error Message ");
## help();
if (options):
@@ -208,24 +208,25 @@ if ( __name__ == '__main__' ):
elif name in ['-l', '--last']:
last = value
- ## print(first + " " + last)
-
- ## print("argc=",argc);
for arg in sys.argv:
## print("count=",count);
## print("sys.argv[count] =",sys.argv[count]);
- if (get_arg(1) == "-h" or get_arg(1) == "--help"):
- print("-h or --help", str(sys.argv[1])); print("get_arg(2)=", get_arg(2)); ## exit(0);
-
- ## if(get_arg(count)):
- ## print("sys.argv[count] =",sys.argv[count]);
- ## count = count + 1;
+ if (get_arg(1) == "--help" or
+ get_arg(1) == "-help" or
+ get_arg(1) == "-h" or
+ get_arg(1) == "h"):
+ help(); exit(0);
+ if (get_arg(1) == "--test" or
+ get_arg(1) == "-test" or
+ get_arg(1) == "-t" or
+ get_arg(1) == ""):
+ e_spigot_test ();exit(0);
- ## a = np.ones ( n + 1, dtype = np.int32 )
if(get_arg(1)):
## print("str(sys.argv[1]):", str(sys.argv[1]));
- if sys.argv[1] == "-h" or sys.argv[1] == "-h":
- print("-h --help", str(sys.argv[1]));
+ if sys.argv[1] == "-h" or sys.argv[1] == "--help":
+ ## print("-h --help", str(sys.argv[1]));
+ help();
exit(0);
argv1 = int(sys.argv[1]);
e_spigot ( argv1 );
diff --git a/template/null b/template/null
new file mode 100644
index 000000000..e69de29bb
commit 6e5463f554067aaf4663c15d190a8ed55cebc054
Author: @RandyMcMillan <
[email protected]>
Date: Mon Oct 23 09:18:52 2023 -0400
template/gnostr-e:gnostr-e -t 1000
diff --git a/template/gnostr-e b/template/gnostr-e
index 123a3f39d..3079167ad 100755
--- a/template/gnostr-e
+++ b/template/gnostr-e
@@ -91,7 +91,7 @@ def e_spigot (n, offset):
## print ( '2.', end = '' ) ## we are only interested in mantissa
## simular to gnostr-pi
- for j in range ( 1, n ):
+ for j in range ( 1, n + 1 ):
a = a * 10
q = 0
for i in range ( n - 1, -1, -1 ):
@@ -104,24 +104,27 @@ def e_spigot (n, offset):
return
+def about():
+ #*****************************************************************************80
+ #
+ ## e_spigot_test tests e_spigot.
+ #
+ # Licensing:
+ #
+ # This code is distributed under the GNU LGPL license.
+ #
+ # Modified:
+ #
+ # 20 March 2021
+ #
+ # Author:
+ #
+ # John Burkardt
+ #
+ print("about")
+
def e_spigot_test ( n=100 ):
-#*****************************************************************************80
-#
-## e_spigot_test tests e_spigot.
-#
-# Licensing:
-#
-# This code is distributed under the GNU LGPL license.
-#
-# Modified:
-#
-# 20 March 2021
-#
-# Author:
-#
-# John Burkardt
-#
import platform
## print ( '' )
@@ -132,13 +135,13 @@ def e_spigot_test ( n=100 ):
## print ( '' )
## print ( ' Compute and print the first ', n, 'decimal digits of e.mantissa:' )
## print ( '' )
- e_spigot ( n, 0 )
- print("0", get_arg(0));
- print("1", get_arg(1));
- print("2", get_arg(2));
- print("3", get_arg(3));
+ ## print("0", get_arg(0));
+ ## print("1", get_arg(1));
+ ## print("2", get_arg(2));
+ ## print("3", get_arg(3));
+ e_spigot ( n, 0 )
## print ( '' )
## print ( ' Correct first 100 digits of e.mantissa:' )
@@ -182,25 +185,9 @@ if ( __name__ == '__main__' ):
hexify = lambda s: [hex(ord(i)) for i in list(str(s))]
byteval = '\x60'.encode('ASCII');
- ## print(hex(ord(byteval))) # b'\x60';
- ## print(hexify(byteval));
- ## print("Geeks : %2d, Portal : %5.2f" % (1, 05.333));
- ## print("Total students : %3d, Boys : %2d" % (240, 120));
- ## print("%7.3o" % (25)); # octal
- ## print("%10.3E" % (356.08977)) # print exponential value
argc=0;
argc=len(sys.argv);
- ## print("int(argc)=", int(argc));
- ## print("str(len(sys.argv))=",str(len(sys.argv)));
- ## print("bool(sys.argv[0:])=",bool(sys.argv[0:]));
- ## print("bool(sys.argv[1:])=",bool(sys.argv[1:]));
- ## print("bool(sys.argv[2:])=",bool(sys.argv[2:]));
- ## print("bool(sys.argv[3:])=",bool(sys.argv[3:]));
- ## print("bool(sys.argv[4:])=",bool(sys.argv[4:]));
- ## print("bool(sys.argv[5:])=",bool(sys.argv[5:]));
- ## print("This is the name of the program:", sys.argv[0]);
- ## print("Argument List:", str(sys.argv));
count = 0; ## len(sys.argv) - 1;
argv = sys.argv[1:];
@@ -234,7 +221,10 @@ if ( __name__ == '__main__' ):
get_arg(1) == "-test" or
get_arg(1) == "-t" or
get_arg(1) == "t"):
- e_spigot_test ();exit(0);
+ if (get_arg(2)):
+ if (get_arg(3)):
+ e_spigot_test (int(sys.argv[2]), int(sys.argv[3])); exit();
+ e_spigot_test (int(sys.argv[2])); exit();
if(get_arg(1)):
argv1 = int(sys.argv[1]);
commit aa70fd198673e08eff4b222b8359b0fd26a180cb
Author: @RandyMcMillan <
[email protected]>
Date: Mon Oct 23 08:49:05 2023 -0400
template/gnostr-e
diff --git a/template/gnostr-e b/template/gnostr-e
index 10dd918f4..123a3f39d 100755
--- a/template/gnostr-e
+++ b/template/gnostr-e
@@ -46,35 +46,44 @@ def e_101 ( ):
return
-def e_spigot ( n, offset ):
+def about ():
+
+ #*****************************************************************************80
+ #
+ ## e_spigot implements the "e spigot" algorithm for decimal digits of e.
+ #
+ # Licensing:
+ #
+ # This code is distributed under the GNU LGPL license.
+ #
+ # Modified:
+ #
+ # 25 February 2019
+ #
+ # Author:
+ #
+ # John Burkardt
+ #
+ # Reference:
+ #
+ # Stanley Rabinowitz, Stan Wagon,
+ # A spigot algorithm for the digits of pi,
+ # American Mathematical Monthly,
+ # Volume 102, Number 3, pages 195-203, March 1995.
+ #
+ # Input:
+ #
+ # integer N, the number of digits to compute.
+ #
+ print("about");
+
+def e_spigot (n, offset):
+
+ ## print(get_arg(0));
+ ## print(get_arg(1));
+ ## print(get_arg(2));
+ ## print(get_arg(3));
-#*****************************************************************************80
-#
-## e_spigot implements the "e spigot" algorithm for decimal digits of e.
-#
-# Licensing:
-#
-# This code is distributed under the GNU LGPL license.
-#
-# Modified:
-#
-# 25 February 2019
-#
-# Author:
-#
-# John Burkardt
-#
-# Reference:
-#
-# Stanley Rabinowitz, Stan Wagon,
-# A spigot algorithm for the digits of pi,
-# American Mathematical Monthly,
-# Volume 102, Number 3, pages 195-203, March 1995.
-#
-# Input:
-#
-# integer N, the number of digits to compute.
-#
import numpy as np
a = np.ones ( n + 1, dtype = np.int32 )
commit 82c8848947f116136f2244f3cf5748a5cd5aa371
Author: @RandyMcMillan <
[email protected]>
Date: Fri Oct 20 15:08:01 2023 -0400
web:update submodule
diff --git a/web b/web
index 7e3cce2ec..aecdadeaf 160000
--- a/web
+++ b/web
@@ -1 +1 @@
-Subproject commit 7e3cce2ec7b775a6d89619a346f672781f4830c3
+Subproject commit aecdadeafe33f3704667d4cfaf438c5be875a61d
commit a1be421781c2c5cde11941a2607a51f6a17188b3
Author: randymcmillan <
[email protected]>
Date: Sat Oct 21 10:45:54 2023 -0400
.gitignore:gnostr-*.patch
diff --git a/.gitignore b/.gitignore
index c1dcd75cc..361ef6305 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,3 +1,4 @@
+gnostr-*.patch
gnostr
gnostr-act
gnostr-cat
commit 83e2703c30704eeb0090530308a4c1deb2cc7010
Author: @RandyMcMillan <
[email protected]>
Date: Mon Oct 23 08:30:58 2023 -0400
template/gnostr-e
diff --git a/template/gnostr-e b/template/gnostr-e
index 528564d6d..10dd918f4 100755
--- a/template/gnostr-e
+++ b/template/gnostr-e
@@ -95,7 +95,7 @@ def e_spigot ( n, offset ):
return
-def e_spigot_test ( ):
+def e_spigot_test ( n=100 ):
#*****************************************************************************80
#
commit 0764bbbed631a07cf111cd6bcbeb173117aa678c
Author: @RandyMcMillan <
[email protected]>
Date: Mon Oct 23 08:29:06 2023 -0400
template/gnostr-e
diff --git a/template/gnostr-e b/template/gnostr-e
index de0063703..528564d6d 100755
--- a/template/gnostr-e
+++ b/template/gnostr-e
@@ -120,12 +120,17 @@ def e_spigot_test ( ):
## print ( ' Python version: %s' % ( platform.python_version ( ) ) )
## print ( ' Test e_spigot()' )
- n = 101
## print ( '' )
## print ( ' Compute and print the first ', n, 'decimal digits of e.mantissa:' )
## print ( '' )
e_spigot ( n, 0 )
+ print("0", get_arg(0));
+ print("1", get_arg(1));
+ print("2", get_arg(2));
+ print("3", get_arg(3));
+
+
## print ( '' )
## print ( ' Correct first 100 digits of e.mantissa:' )
## print ( '' )
commit c38a812f4b31ed144a563d231968c27c2caaa967
Author: @RandyMcMillan <
[email protected]>
Date: Mon Oct 23 09:27:16 2023 -0400
template/gnostr-e:gnostr-e -t 100 <offset>
diff --git a/template/gnostr-e b/template/gnostr-e
index 19f89e38b..2eb6ca175 100755
--- a/template/gnostr-e
+++ b/template/gnostr-e
@@ -86,12 +86,12 @@ def e_spigot (n, offset):
import numpy as np
- a = np.ones ( n + 1, dtype = np.int32 )
+ a = np.ones ( n + offset + 1, dtype = np.int32 )
## print ( '2.', end = '' ) ## we are only interested in mantissa
## simular to gnostr-pi
- for j in range ( 1, n + 1 ):
+ for j in range ( 1, n + offset + 1 ):
a = a * 10
q = 0
for i in range ( n - 1, -1, -1 ):
@@ -136,10 +136,10 @@ def e_spigot_test ( n=100, offset=0 ):
## print ( ' Compute and print the first ', n, 'decimal digits of e.mantissa:' )
## print ( '' )
- ## print("0", get_arg(0));
- ## print("1", get_arg(1));
- ## print("2", get_arg(2));
- ## print("3", get_arg(3));
+ print("0", get_arg(0));
+ print("1", get_arg(1));
+ print("2", get_arg(2));
+ print("3", get_arg(3));
e_spigot ( n, offset )
commit 530d3b35e42ab655e25d5daa950b1842f251e030
Author: @RandyMcMillan <
[email protected]>
Date: Tue Oct 31 16:26:53 2023 -0400
.gitignore:
tests/.gitignore:
diff --git a/.gitignore b/.gitignore
index 361ef6305..1bbd9df0e 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,3 +1,5 @@
+build
+
gnostr-*.patch
gnostr
gnostr-act
@@ -142,6 +144,27 @@ ext/wt-4.10.0/src/Wt_xml.C
ext/wt-4.10.0/wt_config.xml
wostro.log.txt
+ext/Simple-WebSocket-Server-v2.0.2/bash_profile.log
+ext/wt-4.10.0/bash_profile.log
+ext/wt-4.10.0/examples/gitmodel/gitview.wt
+ext/wt-4.10.0/examples/wt-homepage/Home.wt
+ext/wt-4.10.0/examples/wt-homepage/bash_profile.log
+ext/wt-4.10.0/test/test.http
+ext/wt-4.10.0/test/test.mssqlserver
+ext/wt-4.10.0/test/test.sqlite3
+ext/wt-4.10.0/test/test.wt
+
+src/nostril/.envrc
+src/nostril/.github/
+src/nostril/.gitignore
+src/nostril/.gitmodules
+src/nostril/default.nix
+src/nostril/devtools/
+src/nostril/doc/
+src/nostril/nostril-query
+src/nostril/scripts/
+src/nostril/shell.nix
+
tests.log.txt
web/wt_config.xml
web/APP_KEY
diff --git a/tests/.gitignore b/tests/.gitignore
new file mode 100644
index 000000000..397b4a762
--- /dev/null
+++ b/tests/.gitignore
@@ -0,0 +1 @@
+*.log
commit 3b86e9f540d6bdcc49d5b9cf7979cc1389511ff7
Author: @RandyMcMillan <
[email protected]>
Date: Sun Dec 10 20:06:08 2023 -0500
deps/gnostr-grep:v0.0.4
diff --git a/deps/gnostr-grep b/deps/gnostr-grep
index ff9785d97..985775af2 160000
--- a/deps/gnostr-grep
+++ b/deps/gnostr-grep
@@ -1 +1 @@
-Subproject commit ff9785d9701aa363dbbc78202866ce0390d63cbb
+Subproject commit 985775af29939af8e7a5c934a155a4229433596e
commit 565bd40f5946233ce4cc4b550a7b0c4d32953880
Author: @RandyMcMillan <
[email protected]>
Date: Sat Dec 9 21:19:14 2023 -0500
deps/gnostr-sha256:v0.0.4
diff --git a/deps/gnostr-sha256 b/deps/gnostr-sha256
index d9b22c6ad..60a179f1a 160000
--- a/deps/gnostr-sha256
+++ b/deps/gnostr-sha256
@@ -1 +1 @@
-Subproject commit d9b22c6ad111f7bd7b3192d7ccad10bee51d5061
+Subproject commit 60a179f1adc435b8f16caf410eb3179252e09929
commit 4adfc4f166954fd2fe84c71dcdf759eaa4fea92e
Author: @RandyMcMillan <
[email protected]>
Date: Sun Dec 10 21:27:49 2023 -0500
template/gnostr-hexidrome
diff --git a/template/gnostr-hexidrome b/template/gnostr-hexidrome
index 9258fffda..de1cd591c 100755
--- a/template/gnostr-hexidrome
+++ b/template/gnostr-hexidrome
@@ -1,8 +1,16 @@
#!/usr/bin/env python3
import sys
+def get_arg(index):
+ try:
+ sys.argv[index]
+ except IndexError:
+ return ''
+ else:
+ return sys.argv[index]
+
# define a function to check if a number is a palindrome
-def is_palindrome(n):
+def gnostr_hexidrome(n):
# convert the number to a string
s = str(n)
# check if the string is the same forwards and backwards
@@ -20,7 +28,7 @@ def loop(lb, ub):
# loop through the range of numbers
for n in range(start, end+1):
# if the number is a palindrome, add it to the list
- if is_palindrome(n):
+ if gnostr_hexidrome(n):
palindromes.append(n)
# print the list of palindromes
@@ -40,45 +48,48 @@ def loop(lb, ub):
## print('[{}]'.format(''.join(str(x)[2:] for x in hexlist)))
print('{}'.format(''.join(str(x)[2:] for x in hexlist)))
+
+
+
+
+
if (args_count := len(sys.argv)) == 3:
- if int(sys.argv[1]) > int(sys.argv[2]):
- ## print("int(sys.argv[1]) > int(sys.argv[2])");
- lower_bound = int(sys.argv[2]);
- upper_bound = int(sys.argv[1]);
+ if int(get_arg(1)) > int(get_arg(2)):
+ ## print("int(get_arg(1)) > int(get_arg(2))");
+ lower_bound = int(get_arg(2));
+ upper_bound = int(get_arg(1));
loop(lower_bound, upper_bound)
- if int(sys.argv[1]) < int(sys.argv[2]) or int(sys.argv[1]) == int(sys.argv[2]):
- ## print("int(sys.argv[1]) < int(sys.argv[2])");
- lower_bound = int(sys.argv[1]);
- upper_bound = int(sys.argv[2]);
+ if int(get_arg(1)) < int(get_arg(2)) or int(get_arg(1)) == int(get_arg(2)):
+ ## print("int(get_arg(1)) < int(get_arg(2))");
+ lower_bound = int(get_arg(1));
+ upper_bound = int(get_arg(2));
loop(lower_bound, upper_bound)
-elif args_count == 2:
+elif (args_count := len(sys.argv)) == 2:
- if int(sys.argv[1]) > int(sys.argv[2]):
- print("int(sys.argv[1]) > int(sys.argv[2])");
+ if int(get_arg(1)) > int(get_arg(2)):
+ print("int(get_arg(1)) > int(get_arg(2))");
lower_bound = int(0);
- upper_bound = int(sys.argv[2]);
+ upper_bound = int(get_arg(2));
loop(lower_bound, upper_bound)
- if int(sys.argv[1]) < int(sys.argv[2]):
- print("int(sys.argv[1]) < int(sys.argv[2])");
+ if int(get_arg(1)) < int(get_arg(2)):
+ print("int(get_arg(1)) < int(get_arg(2))");
lower_bound = int(0);
- upper_bound = int(sys.argv[1]);
+ upper_bound = int(get_arg(1));
loop(lower_bound, upper_bound)
-
-elif args_count > 2:
-
- print("Usage:\n")
- print("is_palindrome <int>\n")
- print("is_palindrome <int> <int>\n")
+elif (args_count := len(sys.argv)) > 2:
+ print("Usage:")
+ print("gnostr-hexidrome <int>")
+ print("gnostr-hexidrome <int> <int>")
raise SystemExit(0)
-elif args_count < 2:
+elif (args_count := len(sys.argv)) < 2:
- print("Usage:\n")
- print("is_palindrome <int>\n")
- print("is_palindrome <int> <int>\n")
+ print("Usage:")
+ print("gnostr-hexidrome <int>")
+ print("gnostr-hexidrome <int> <int>")
raise SystemExit(0)
commit 172b01115a9f5d5c53377203b4c274788f62a16c
Author: @RandyMcMillan <
[email protected]>
Date: Tue Oct 31 16:32:50 2023 -0400
cargo.mk:make cargo-deps-gnostr-cat toolchain=nightly
diff --git a/cargo.mk b/cargo.mk
index bce0cad65..d76b30509 100644
--- a/cargo.mk
+++ b/cargo.mk
@@ -37,7 +37,10 @@ cargo-report:### cargo-report
cargo-deps-gnostr-all:cargo-deps-gnostr-cat cargo-deps-gnostr-cli cargo-deps-gnostr-command cargo-deps-gnostr-grep cargo-deps-gnostr-legit cargo-deps-gnostr-sha256### cargo-deps-gnostr-all
cargo-deps-gnostr-cat:### cargo-deps-gnostr-cat
- cargo -Z unstable-options -C deps/gnostr-cat install --path .
+ rustup-init -y -q --default-toolchain $(TOOLCHAIN) && \
+ source "$(HOME)/.cargo/env" && \
+ cd deps/gnostr-cat && $(MAKE) cargo-build-release cargo-install
+ ## cargo $(Z) deps/gnostr-cat install --path .
cargo-deps-gnostr-cli:### cargo-deps-gnostr-cli
cargo -Z unstable-options -C deps/gnostr-cli install --path .
cargo-deps-gnostr-command:### cargo-deps-gnostr-command
commit 0ae3354b93e31d2f946404fe59d114db247e1d98
Author: @RandyMcMillan <
[email protected]>
Date: Tue Dec 5 20:38:54 2023 -0500
build.cmake.sh
commit df842883142c67f491dd62b84d0d773a88595112
Author: @RandyMcMillan <
[email protected]>
Date: Sat Nov 4 19:18:24 2023 -0400
template/gnostr-hexidrome:initial commit
diff --git a/template/gnostr-hexidrome b/template/gnostr-hexidrome
index de1cd591c..9258fffda 100755
--- a/template/gnostr-hexidrome
+++ b/template/gnostr-hexidrome
@@ -1,16 +1,8 @@
#!/usr/bin/env python3
import sys
-def get_arg(index):
- try:
- sys.argv[index]
- except IndexError:
- return ''
- else:
- return sys.argv[index]
-
# define a function to check if a number is a palindrome
-def gnostr_hexidrome(n):
+def is_palindrome(n):
# convert the number to a string
s = str(n)
# check if the string is the same forwards and backwards
@@ -28,7 +20,7 @@ def loop(lb, ub):
# loop through the range of numbers
for n in range(start, end+1):
# if the number is a palindrome, add it to the list
- if gnostr_hexidrome(n):
+ if is_palindrome(n):
palindromes.append(n)
# print the list of palindromes
@@ -48,48 +40,45 @@ def loop(lb, ub):
## print('[{}]'.format(''.join(str(x)[2:] for x in hexlist)))
print('{}'.format(''.join(str(x)[2:] for x in hexlist)))
-
-
-
-
-
if (args_count := len(sys.argv)) == 3:
- if int(get_arg(1)) > int(get_arg(2)):
- ## print("int(get_arg(1)) > int(get_arg(2))");
- lower_bound = int(get_arg(2));
- upper_bound = int(get_arg(1));
+ if int(sys.argv[1]) > int(sys.argv[2]):
+ ## print("int(sys.argv[1]) > int(sys.argv[2])");
+ lower_bound = int(sys.argv[2]);
+ upper_bound = int(sys.argv[1]);
loop(lower_bound, upper_bound)
- if int(get_arg(1)) < int(get_arg(2)) or int(get_arg(1)) == int(get_arg(2)):
- ## print("int(get_arg(1)) < int(get_arg(2))");
- lower_bound = int(get_arg(1));
- upper_bound = int(get_arg(2));
+ if int(sys.argv[1]) < int(sys.argv[2]) or int(sys.argv[1]) == int(sys.argv[2]):
+ ## print("int(sys.argv[1]) < int(sys.argv[2])");
+ lower_bound = int(sys.argv[1]);
+ upper_bound = int(sys.argv[2]);
loop(lower_bound, upper_bound)
-elif (args_count := len(sys.argv)) == 2:
+elif args_count == 2:
- if int(get_arg(1)) > int(get_arg(2)):
- print("int(get_arg(1)) > int(get_arg(2))");
+ if int(sys.argv[1]) > int(sys.argv[2]):
+ print("int(sys.argv[1]) > int(sys.argv[2])");
lower_bound = int(0);
- upper_bound = int(get_arg(2));
+ upper_bound = int(sys.argv[2]);
loop(lower_bound, upper_bound)
- if int(get_arg(1)) < int(get_arg(2)):
- print("int(get_arg(1)) < int(get_arg(2))");
+ if int(sys.argv[1]) < int(sys.argv[2]):
+ print("int(sys.argv[1]) < int(sys.argv[2])");
lower_bound = int(0);
- upper_bound = int(get_arg(1));
+ upper_bound = int(sys.argv[1]);
loop(lower_bound, upper_bound)
-elif (args_count := len(sys.argv)) > 2:
- print("Usage:")
- print("gnostr-hexidrome <int>")
- print("gnostr-hexidrome <int> <int>")
+
+elif args_count > 2:
+
+ print("Usage:\n")
+ print("is_palindrome <int>\n")
+ print("is_palindrome <int> <int>\n")
raise SystemExit(0)
-elif (args_count := len(sys.argv)) < 2:
+elif args_count < 2:
- print("Usage:")
- print("gnostr-hexidrome <int>")
- print("gnostr-hexidrome <int> <int>")
+ print("Usage:\n")
+ print("is_palindrome <int>\n")
+ print("is_palindrome <int> <int>\n")
raise SystemExit(0)
commit a9d7cdee8ea1a12a003cb86b33b47acf615b9eb0
Author: @RandyMcMillan <
[email protected]>
Date: Sun Dec 10 22:37:05 2023 -0500
make:gnostr-command:make cargo-b-release
diff --git a/gnostr.mk b/gnostr.mk
index 594c6e46f..88a715d5c 100644
--- a/gnostr.mk
+++ b/gnostr.mk
@@ -212,7 +212,7 @@ deps/gnostr-command/.git:gnostr-git
@devtools/refresh-submodules.sh deps/gnostr-command
deps/gnostr-command/gnostr-command:deps/gnostr-command/.git
cd deps/gnostr-command && \
- make install
+ make cargo-b-release
deps/gnostr-command/target/release/gnostr-command:deps/gnostr-command/gnostr-command## gnostr-command
gnostr-command:deps/gnostr-command/target/release/gnostr-command## gnostr-command
cp $< $@ && exit;
commit d3d1af32d4720eadac808cc3a349f8321b83516a
Author: @RandyMcMillan <
[email protected]>
Date: Sun Dec 10 20:05:41 2023 -0500
deps/gnostr-command :v0.0.8
diff --git a/deps/gnostr-command b/deps/gnostr-command
index 16fcb646f..16f6641c5 160000
--- a/deps/gnostr-command
+++ b/deps/gnostr-command
@@ -1 +1 @@
-Subproject commit 16fcb646f08dcf719c027360fe4549efda0afc8a
+Subproject commit 16f6641c5d33ece7cdc33de74abb89a2c175b89a
commit 656394206898415b30428aa16b802c35383f58a9
Author: @RandyMcMillan <
[email protected]>
Date: Tue Jan 9 00:04:25 2024 -0500
tui
diff --git a/tui b/tui
new file mode 160000
index 000000000..dd951402f
--- /dev/null
+++ b/tui
@@ -0,0 +1 @@
+Subproject commit dd951402f9d8283574d787268d7577d54c2ad210
commit 10617c10a3540ffa8e266bfb31bcbddf7653a07b
Author: @RandyMcMillan <
[email protected]>
Date: Tue Jan 9 00:03:55 2024 -0500
CMakeLists.txt
diff --git a/CMakeLists.txt b/CMakeLists.txt
index f670444ad..9936cc7ed 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -122,9 +122,48 @@ add_dependencies(nostr configurator)
##TODO:rename to gnostr-get-relays
## once tools are stable
add_executable(gnostr-get-relays-c src/gnostr-get-relays.c)
+add_executable(gnostr-set-relays-c src/gnostr-set-relays.c)
add_executable(gnostr-pi src/gnostr-pi.c)
+install(PROGRAMS template/gnostr-add DESTINATION bin)
+install(PROGRAMS template/gnostr-add.sh DESTINATION bin)
+install(PROGRAMS template/gnostr-blockheight DESTINATION bin)
+install(PROGRAMS template/gnostr-e DESTINATION bin)
+install(PROGRAMS template/gnostr-fs DESTINATION bin)
+install(PROGRAMS template/gnostr-functions DESTINATION bin)
+install(PROGRAMS template/gnostr-get-relays DESTINATION bin)
+install(PROGRAMS template/gnostr-git-log DESTINATION bin)
+install(PROGRAMS template/gnostr-git-reflog DESTINATION bin)
+install(PROGRAMS template/gnostr-git-send DESTINATION bin)
+install(PROGRAMS template/gnostr-git-show DESTINATION bin)
+install(PROGRAMS template/gnostr-hexidrome DESTINATION bin)
+install(PROGRAMS template/gnostr-iftop DESTINATION bin)
+install(PROGRAMS template/gnostr-init DESTINATION bin)
+install(PROGRAMS template/gnostr-jsmin.c DESTINATION bin)
+install(PROGRAMS template/gnostr-keyconv DESTINATION bin)
+install(PROGRAMS template/gnostr-nip DESTINATION bin)
+install(PROGRAMS template/gnostr-nonce DESTINATION bin)
+install(PROGRAMS template/gnostr-nvm DESTINATION bin)
+install(PROGRAMS template/gnostr-org DESTINATION bin)
+install(PROGRAMS template/gnostr-post DESTINATION bin)
+install(PROGRAMS template/gnostr-proxy DESTINATION bin)
+install(PROGRAMS template/gnostr-proxy-test DESTINATION bin)
+install(PROGRAMS template/gnostr-query DESTINATION bin)
+install(PROGRAMS template/gnostr-relays DESTINATION bin)
+install(PROGRAMS template/gnostr-send DESTINATION bin)
+install(PROGRAMS template/gnostr-set-relays DESTINATION bin)
+install(PROGRAMS template/gnostr-set-relays.c DESTINATION bin)
+install(PROGRAMS template/gnostr-snapshot DESTINATION bin)
+install(PROGRAMS template/gnostr-syndication DESTINATION bin)
+install(PROGRAMS template/gnostr-syndication-test DESTINATION bin)
+install(PROGRAMS web/gnostr-web DESTINATION bin)
+install(PROGRAMS web/gnostr-web-deploy DESTINATION bin)
+install(PROGRAMS template/gnostr-weeble DESTINATION bin)
+install(PROGRAMS template/gnostr-wobble DESTINATION bin)
+install(PROGRAMS template/gnostr-xor DESTINATION bin)
+
+
#//////////////////////////
# link with libraries
# lib_dep contains a cascade definition of all the libraries needed to link
@@ -280,6 +319,20 @@ install(TARGETS gnostr-gnode
CONFIGURATIONS Release
RUNTIME DESTINATION /usr/local/bin)
+install(TARGETS gnostr-get-relays-c
+ CONFIGURATIONS Debug
+ RUNTIME DESTINATION ${CMAKE_SOURCE_DIR}/bin)
+install(TARGETS gnostr-get-relays-c
+ CONFIGURATIONS Release
+ RUNTIME DESTINATION /usr/local/bin)
+
+install(TARGETS gnostr-set-relays-c
+ CONFIGURATIONS Debug
+ RUNTIME DESTINATION ${CMAKE_SOURCE_DIR}/bin)
+install(TARGETS gnostr-set-relays-c
+ CONFIGURATIONS Release
+ RUNTIME DESTINATION /usr/local/bin)
+
install(TARGETS gnostr-client
CONFIGURATIONS Debug
RUNTIME DESTINATION ${CMAKE_SOURCE_DIR}/bin)
@@ -308,6 +361,13 @@ install(TARGETS gnostr-get-relays-c
CONFIGURATIONS Release
RUNTIME DESTINATION /usr/local/bin)
+install(TARGETS gnostr-set-relays-c
+ CONFIGURATIONS Debug
+ RUNTIME DESTINATION ${CMAKE_SOURCE_DIR}/bin)
+install(TARGETS gnostr-set-relays-c
+ CONFIGURATIONS Release
+ RUNTIME DESTINATION /usr/local/bin)
+
install(TARGETS gnostr-tests
CONFIGURATIONS Debug
RUNTIME DESTINATION ${CMAKE_SOURCE_DIR}/bin)
commit 0293a1f79037f72b9d9133dab88ea4e7b8e43ad5
Author: @RandyMcMillan <
[email protected]>
Date: Tue Jan 9 00:04:38 2024 -0500
web
diff --git a/web b/web
index aecdadeaf..e43ac48cf 160000
--- a/web
+++ b/web
@@ -1 +1 @@
-Subproject commit aecdadeafe33f3704667d4cfaf438c5be875a61d
+Subproject commit e43ac48cf8843ae781e9f8aa3dae6c001ec5c921
commit ddad1e4625481c926f3a772e1265212014d494ef
Author: @RandyMcMillan <
[email protected]>
Date: Tue Jan 9 00:04:49 2024 -0500
workspace
diff --git a/workspace b/workspace
new file mode 160000
index 000000000..642b0fc2a
--- /dev/null
+++ b/workspace
@@ -0,0 +1 @@
+Subproject commit 642b0fc2a43c2380c41c4690a1354b27ad890177
commit c18fa2abbd45eb8a348e316b949acccc8a711486
Author: @RandyMcMillan <
[email protected]>
Date: Tue Jan 9 00:03:32 2024 -0500
test
diff --git a/test/first-gnostr-commit.json b/test/first-gnostr-commit.json
new file mode 100644
index 000000000..0fce34e70
--- /dev/null
+++ b/test/first-gnostr-commit.json
@@ -0,0 +1 @@
+{"id":"fbf73a17a4e0fe390aba1808a8d55f1b50717d5dd765b2904bf39eba18c51f7c","kind":1,"pubkey":"edfa27d49d2af37ee331e1225bb6ed1912c6d999281b36d8018ad99bc3573c29","tags":[],"created_at":1660682269,"content":"@jb55 - follow up nostril patch\n\nhttps://github.com/jb55/nostril\n\n\n\nFrom d7653ab0dd587154b0192c487532a400bcd3a0ec Mon Sep 17 00:00:00 2001\nFrom: randymcmillan <
[email protected]>\nDate: Tue, 16 Aug 2022 21:27:50 +0100\nSubject: [PATCH 2/2] README.md: update relay to wss://relay.damus.io\n\nFollow up to commit:\n\nc88f7e09eb7da93960faa3053e3cd130a240ea98\n---\n README.md | 4 ++--\n 1 file changed, 2 insertions(+), 2 deletions(-)\n\ndiff --git a/README.md b/README.md\nindex c04f0bd..76472f4 100644\n--- a/README.md\n+++ b/README.md\n@@ -53,9 +53,9 @@ Wrap event to send to a relay:\n\n Send to a relay:\n\n- $ ./nostril --envelope --sec <key> --content \"this is a message\" | websocat wss://nostr-pub.wellorder.net\n+ $ ./nostril --envelope --sec <key> --content \"this is a message\" | websocat wss://relay.damus.io\n\n Send a nip04 DM:\n\n- $ ./nostril --envelope --dm <pubkey> --sec <key> --content \"this is a secret\" | websocat wss://nostr-pub.wellorder.net\n+ $ ./nostril --envelope --dm <pubkey> --sec <key> --content \"this is a secret\" | websocat wss://relay.damus.io\n\n--\n2.37.1\n\n","sig":"cdfa5f5190741d72f44e026e8768e751f9b36de71dcd4ab5bed3e2577abbb9f69c9041a6908b128fd6c6978a8c241bb317da55564aee5abdaa6daf75d177f80e"}
commit 2bb20eb7498c2b2bcb57bcf6a63fc2c5708eb5b7
Author: @RandyMcMillan <
[email protected]>
Date: Tue Jan 9 00:01:57 2024 -0500
.gitignore
diff --git a/.gitignore b/.gitignore
index 1bbd9df0e..731ccd373 100644
--- a/.gitignore
+++ b/.gitignore
@@ -102,6 +102,7 @@ ext/secp256k1-0.3.2/examples/CTestTestfile.cmake
ext/wt-4.10.0/wt-config-version.cmake
ext/wt-4.10.0/wt-config.cmake
+ext/wt-4.10.0/examples
ext/wxWidgets-3.2.2.1
commit 97bd937ee95f6a348b694f548455558f32064204
Author: @RandyMcMillan <
[email protected]>
Date: Mon Jan 8 23:59:21 2024 -0500
.github/workflows/gnostr-docker.yml
diff --git a/.github/workflows/gnostr-docker.yml b/.github/workflows/gnostr-docker.yml
new file mode 100644
index 000000000..8f6413d62
--- /dev/null
+++ b/.github/workflows/gnostr-docker.yml
@@ -0,0 +1,60 @@
+name: gnostr-docker
+
+on:
+ pull_request:
+ branches:
+ - '*'
+ - '*/*'
+ - '**'
+ - 'master'
+ - 'main'
+ push:
+ branches:
+ - '*'
+ - '*/*'
+ - '**'
+ - 'master'
+ - 'main'
+
+env:
+ GIT_DISCOVERY_ACROSS_FILESYSTEM: 1
+
+jobs:
+ build:
+ runs-on: ubuntu-20.04
+
+ strategy:
+ fail-fast: false
+ matrix:
+ tag: ["latest", "slim-bullseye", "slim-bookworm"]
+
+ container: rust:${{ matrix.tag }}
+
+ steps:
+ ## notice: this is a pre checkout step
+ ## notice: additional operations can be done prior to checkout
+ ## - run: apk update && apk add bash cmake git python3 && python3 -m ensurepip
+ - run: apt-get update && apt-get install build-essential cmake libexpat1-dev libcurl4-openssl-dev libssl-dev git make pkg-config python3 python-is-python3 sudo tcl zlib1g-dev -y
+ - run: printenv
+ - name: checkout@v3 fetch-depth submodules set-safe-dir true
+ uses: actions/checkout@v3
+ with:
+ fetch-depth: '100'
+ submodules: 'true'
+ set-safe-directory: 'true'
+ ## notice: these are post checkout steps
+ ## - run: apk update && apk add autoconf automake build-base openssl-dev libtool make
+ - run: touch ~/GITHUB_TOKEN.txt
+ - run: git config --global --add safe.directory /__w/gnostr/gnostr || true
+ - run: make detect
+ - run: make
+ - run: make gnostr-legit
+ - run: make bins
+ - run: make tui
+ - run: make gnostr-git
+ - run: make gnostr-all
+ - run: make gnostr-install
+ - run: make all
+ - run: make install
+ - run: gnostr --sec $(gnostr-sha256) --content "$(gnostr-git show HEAD)" | gnostr-post-event wss://relay.damus.io
+ - run: make bins-test-fetch-by-id
commit d6f4d273e8181c9f1ccfeadfb0f743ea0ba31daa
Author: @RandyMcMillan <
[email protected]>
Date: Sat Nov 4 19:38:38 2023 -0400
template/gnostr-hexidrome:get_arg(arg):
diff --git a/template/gnostr-hexidrome b/template/gnostr-hexidrome
index 9258fffda..de1cd591c 100755
--- a/template/gnostr-hexidrome
+++ b/template/gnostr-hexidrome
@@ -1,8 +1,16 @@
#!/usr/bin/env python3
import sys
+def get_arg(index):
+ try:
+ sys.argv[index]
+ except IndexError:
+ return ''
+ else:
+ return sys.argv[index]
+
# define a function to check if a number is a palindrome
-def is_palindrome(n):
+def gnostr_hexidrome(n):
# convert the number to a string
s = str(n)
# check if the string is the same forwards and backwards
@@ -20,7 +28,7 @@ def loop(lb, ub):
# loop through the range of numbers
for n in range(start, end+1):
# if the number is a palindrome, add it to the list
- if is_palindrome(n):
+ if gnostr_hexidrome(n):
palindromes.append(n)
# print the list of palindromes
@@ -40,45 +48,48 @@ def loop(lb, ub):
## print('[{}]'.format(''.join(str(x)[2:] for x in hexlist)))
print('{}'.format(''.join(str(x)[2:] for x in hexlist)))
+
+
+
+
+
if (args_count := len(sys.argv)) == 3:
- if int(sys.argv[1]) > int(sys.argv[2]):
- ## print("int(sys.argv[1]) > int(sys.argv[2])");
- lower_bound = int(sys.argv[2]);
- upper_bound = int(sys.argv[1]);
+ if int(get_arg(1)) > int(get_arg(2)):
+ ## print("int(get_arg(1)) > int(get_arg(2))");
+ lower_bound = int(get_arg(2));
+ upper_bound = int(get_arg(1));
loop(lower_bound, upper_bound)
- if int(sys.argv[1]) < int(sys.argv[2]) or int(sys.argv[1]) == int(sys.argv[2]):
- ## print("int(sys.argv[1]) < int(sys.argv[2])");
- lower_bound = int(sys.argv[1]);
- upper_bound = int(sys.argv[2]);
+ if int(get_arg(1)) < int(get_arg(2)) or int(get_arg(1)) == int(get_arg(2)):
+ ## print("int(get_arg(1)) < int(get_arg(2))");
+ lower_bound = int(get_arg(1));
+ upper_bound = int(get_arg(2));
loop(lower_bound, upper_bound)
-elif args_count == 2:
+elif (args_count := len(sys.argv)) == 2:
- if int(sys.argv[1]) > int(sys.argv[2]):
- print("int(sys.argv[1]) > int(sys.argv[2])");
+ if int(get_arg(1)) > int(get_arg(2)):
+ print("int(get_arg(1)) > int(get_arg(2))");
lower_bound = int(0);
- upper_bound = int(sys.argv[2]);
+ upper_bound = int(get_arg(2));
loop(lower_bound, upper_bound)
- if int(sys.argv[1]) < int(sys.argv[2]):
- print("int(sys.argv[1]) < int(sys.argv[2])");
+ if int(get_arg(1)) < int(get_arg(2)):
+ print("int(get_arg(1)) < int(get_arg(2))");
lower_bound = int(0);
- upper_bound = int(sys.argv[1]);
+ upper_bound = int(get_arg(1));
loop(lower_bound, upper_bound)
-
-elif args_count > 2:
-
- print("Usage:\n")
- print("is_palindrome <int>\n")
- print("is_palindrome <int> <int>\n")
+elif (args_count := len(sys.argv)) > 2:
+ print("Usage:")
+ print("gnostr-hexidrome <int>")
+ print("gnostr-hexidrome <int> <int>")
raise SystemExit(0)
-elif args_count < 2:
+elif (args_count := len(sys.argv)) < 2:
- print("Usage:\n")
- print("is_palindrome <int>\n")
- print("is_palindrome <int> <int>\n")
+ print("Usage:")
+ print("gnostr-hexidrome <int>")
+ print("gnostr-hexidrome <int> <int>")
raise SystemExit(0)
commit 34d7fe71f63aa2180a695bf8d871e0b3312fc415
Author: @RandyMcMillan <
[email protected]>
Date: Sun Dec 10 22:44:26 2023 -0500
.gitmodules:gnostr.mk:make bins
diff --git a/.gitmodules b/.gitmodules
index 279431df4..e34303196 100644
--- a/.gitmodules
+++ b/.gitmodules
@@ -112,3 +112,5 @@
[submodule "bins"]
path = bins
url = https://github.com/gnostr-org/gnostr-bins.git
+ ignore = dirty
+ depth = shallow
diff --git a/gnostr.mk b/gnostr.mk
index 88a715d5c..8e60b0730 100644
--- a/gnostr.mk
+++ b/gnostr.mk
@@ -217,6 +217,9 @@ deps/gnostr-command/target/release/gnostr-command:deps/gnostr-command/gnostr-com
gnostr-command:deps/gnostr-command/target/release/gnostr-command## gnostr-command
cp $< $@ && exit;
+.PHONY:bins
+bins:
+ @cd bins && make cargo-b-release && make cargo-i
deps/gnostr-legit/.git:gnostr-git
@devtools/refresh-submodules.sh deps/gnostr-legit
commit bcf6c4879e93171b24b11c767b5dd7db2e8c9941
Author: @RandyMcMillan <
[email protected]>
Date: Tue Jan 9 00:00:57 2024 -0500
.github/workflows/gnostr.yml
diff --git a/.github/workflows/gnostr.yml b/.github/workflows/gnostr.yml
index 1480ec290..9d3b2964e 100644
--- a/.github/workflows/gnostr.yml
+++ b/.github/workflows/gnostr.yml
@@ -2,6 +2,8 @@ name: gnostr-matrix
# Controls when the action will run.
on:
+ schedule:
+ - cron: '0 2 * * *' # run at 2 AM UTC
pull_request:
branches:
- '*'
@@ -57,6 +59,7 @@ jobs:
with:
submodules: 'true'
set-safe-directory: 'true'
+ fetch-depth: '10'
- uses: actions-rs/
[email protected] #if: ${{ !env.ACT }}
commit 247bd244580096055a796b09f89cef2baaee005d
Author: @RandyMcMillan <
[email protected]>
Date: Tue Jan 9 00:01:15 2024 -0500
src/gnostr-set-relays.c
diff --git a/src/gnostr-set-relays.c b/src/gnostr-set-relays.c
new file mode 100755
index 000000000..7389ff07b
--- /dev/null
+++ b/src/gnostr-set-relays.c
@@ -0,0 +1,12 @@
+#ifndef GNOSTR_GET_RELAYS
+#define GNOSTR_GET_RELAYS
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+int main(int argc, const char **argv) {
+ char command[128];
+ strcpy(command, "curl -sS 'https://api.nostr.watch/v1/online' ");
+ system(command);
+ return 0;
+}
+#endif
commit 83fed51847f43de2266a89674d555c594fe70e41
Author: @RandyMcMillan <
[email protected]>
Date: Tue Jan 9 00:02:22 2024 -0500
deps
diff --git a/deps/gnostr-cat b/deps/gnostr-cat
index a011051f8..91d71b255 160000
--- a/deps/gnostr-cat
+++ b/deps/gnostr-cat
@@ -1 +1 @@
-Subproject commit a011051f8ebf8a92794a7ec8eeb548a1f084772e
+Subproject commit 91d71b2552b676b971a461a95793d73ae9573c35
diff --git a/deps/gnostr-legit b/deps/gnostr-legit
index 91613c604..000005f54 160000
--- a/deps/gnostr-legit
+++ b/deps/gnostr-legit
@@ -1 +1 @@
-Subproject commit 91613c60403eda0fe552c67969bb2ff4871c2f23
+Subproject commit 000005f5468d6f2d058a6e1fb1aee76efe7ef83d
diff --git a/deps/gnostr-sha256 b/deps/gnostr-sha256
index 60a179f1a..25fba4634 160000
--- a/deps/gnostr-sha256
+++ b/deps/gnostr-sha256
@@ -1 +1 @@
-Subproject commit 60a179f1adc435b8f16caf410eb3179252e09929
+Subproject commit 25fba46349ada61bfb773abdbaa1457df95d71fe
commit 5ad7a6d861afaad4e7a2422b61ca788b5b5bfa9a
Author: @RandyMcMillan <
[email protected]>
Date: Sun Dec 10 16:08:23 2023 -0500
.gitmodules:add gnostr-bins as bins
diff --git a/.gitmodules b/.gitmodules
index fe84ae771..279431df4 100644
--- a/.gitmodules
+++ b/.gitmodules
@@ -109,3 +109,6 @@
branch = master
ignore = dirty
depth = shallow
+[submodule "bins"]
+ path = bins
+ url = https://github.com/gnostr-org/gnostr-bins.git
diff --git a/bins b/bins
new file mode 160000
index 000000000..46fd6f4c2
--- /dev/null
+++ b/bins
@@ -0,0 +1 @@
+Subproject commit 46fd6f4c28eb878b66b738215d60e0cbb9eba28d
commit 1f96ad6fc9e6e78a712b2ea0346f3a9af983ed78
Author: @RandyMcMillan <
[email protected]>
Date: Tue Jan 9 00:04:14 2024 -0500
bins
diff --git a/bins b/bins
index 46fd6f4c2..227875e9b 160000
--- a/bins
+++ b/bins
@@ -1 +1 @@
-Subproject commit 46fd6f4c28eb878b66b738215d60e0cbb9eba28d
+Subproject commit 227875e9bcffee4aab3c6656816bbe27d9eafbe3
commit 92d290bc6b5a318e892da78f36bbbbc764b5fd52
Author: @RandyMcMillan <
[email protected]>
Date: Tue Jan 9 00:00:29 2024 -0500
gnostr.c
diff --git a/gnostr.c b/gnostr.c
index 71c36917f..3e8aca637 100644
--- a/gnostr.c
+++ b/gnostr.c
@@ -98,24 +98,27 @@ void version()
}
void usage()
{
- printf("usage: gnostr [OPTIONS]\n");
+ printf("\nusage: gnostr [OPTIONS]\n");
printf("\n");
- printf(" GNOSTR-GIT:\n");
- printf(" CONFIG:\n");
+ printf(" gnostr --sec $(gnostr-git config --global --get gnostr.secretkey)");
printf("\n");
- printf(" gnostr-git config\n");
- printf(" gnostr git config --global\n");
- printf(" gnostr git config --global --add gnostr.secretkey $(gnostr-sha256 12345)\n");
- printf(" gnostr git config --global --get gnostr.secretkey\n");
- printf(" 5994471abb01112afcc18159f6cc74b4f511b99806da59b3caf5a9c173cacfc5\n");
+ printf(" gnostr --sec $(gnostr-git config --global --get gnostr.secretkey) --envelope --content \" \"\n\n");
+ printf("\n");
+ printf("COMMAND CONTEXT:\n\n");
+ printf(" gnostr --sec $(gnostr-sha256 $(curl -s https://blockchain.info/q/getblockcount)) \\\n -t block \\\n -t $(curl -s https://blockchain.info/q/getblockcount) \\\n --envelope \\\n --content \"BLOCK:$(curl -s https://blockchain.info/q/getblockcount)\"\n\n");
printf("\n");
- printf(" gnostr --sec $(gnostr-git config --global --get gnostr.secretkey)\n");
+ printf("GNOSTR-GIT:\n");
+ printf("CONFIG:\n");
printf("\n");
- printf(" gnostr --sec $(gnostr-git config --global --get gnostr.secretkey) --envelope --content \n");
- printf(" RELAY OPTIONS\n");
+ printf(" gnostr-git config\n\n");
+ printf(" gnostr git config --global\n\n");
+ printf(" gnostr git config --global --add gnostr.secretkey $(gnostr-sha256 12345)\n");
+ printf(" gnostr git config --global --get gnostr.secretkey\n");
+//printf(" 5994471abb01112afcc18159f6cc74b4f511b99806da59b3caf5a9c173cacfc5");
printf("\n");
+ printf("RELAY OPTIONS:\n\n");
printf("\n");
- printf(" NOSTR OPTIONS\n");
+ printf("NOSTR OPTIONS:\n");
printf("\n");
printf(" --content <string> the content of the note\n");
printf(" --dm <hex pubkey> make an encrypted dm to said pubkey. sets kind and tags.\n");
@@ -679,7 +682,8 @@ static int mine_event(struct nostr_event *ev, int difficulty)
return 0;
if ((res = count_leading_zero_bits(ev->id)) >= difficulty) {
- fprintf(stderr, "mined %d bits\n", res);
+ //fprintf(stderr, "mined %d bits\n", res);
+ fprintf(stderr, "");
return 1;
}
}
commit 7424f78f4caaf00bb747bd571891f2b417d7112d
Author: @RandyMcMillan <
[email protected]>
Date: Tue Jan 9 11:34:32 2024 -0500
gnostr.mk:make doc
diff --git a/gnostr.mk b/gnostr.mk
index 357375050..10525ba2a 100644
--- a/gnostr.mk
+++ b/gnostr.mk
@@ -79,11 +79,11 @@ gnostr-docs:docker-start doc/gnostr.1## docs: convert README to doc/gnostr.1
git add --ignore-errors sources/*.md 2>/dev/null || echo && git add --ignore-errors *.md 2>/dev/null || echo
#@git ls-files -co --exclude-standard | grep '\.md/$\' | xargs git
-doc-gnostr-act:
+doc-gnostr-act:gnostr-act
help2man gnostr-act | sed 's/act /gnostr\-act /g' | sed 's/ACT /GNOSTR\-ACT /g' > doc/gnostr-act.1 #&& man doc/gnostr-act.1
-doc-gnostr-cat:
- help2man gnostr-cat > doc/gnostr-cat.1 #&& man doc/gnostr-cat.1
-doc-gnostr-git:
+doc-gnostr-cat:gnostr-cat
+ #help2man gnostr-cat > doc/gnostr-cat.1 #&& man doc/gnostr-cat.1
+doc-gnostr-git:gnostr-git
help2man gnostr-git | sed 's/ git / gnostr\-git /g' | sed 's/ GIT / GNOSTR\-GIT /g' > doc/gnostr-git.1 #&& man doc/gnostr-git.1
.PHONY:doc
doc:doc-gnostr-act doc-gnostr-cat doc-gnostr-git gnostr-install##
commit dd867c2d338a8ad2dc441f7a73ddc64367b9d9bf
Author: @RandyMcMillan <
[email protected]>
Date: Tue Jan 9 11:32:27 2024 -0500
.github/workflows/gnostr-docker.yml
diff --git a/.github/workflows/gnostr-docker.yml b/.github/workflows/gnostr-docker.yml
index 43d26d8ba..f927d9562 100644
--- a/.github/workflows/gnostr-docker.yml
+++ b/.github/workflows/gnostr-docker.yml
@@ -57,7 +57,6 @@ jobs:
- run: make gnostr-git
- run: make gnostr-grep
- run: make gnostr-legit
- - run: make gnostr-lfs
- run: make gnostr-org
- run: make gnostr-proxy
- run: make gnostr-sha256
the npubs age is as old as time itself
the real question you wanted to ask was how old is your first published note
commit f9e5f149487c1b864dbf8ea17a4977cd01832241
Author: @RandyMcMillan <
[email protected]>
Date: Tue Jan 9 00:06:28 2024 -0500
README.md
diff --git a/README.md b/README.md
index 9ba6ead6f..3c2c4de3b 100644
--- a/README.md
+++ b/README.md
@@ -1,5 +1,5 @@
[![pre-release-matrix](https://github.com/gnostr-org/gnostr/actions/workflows/pre-release.yml/badge.svg)](https://github.com/gnostr-org/gnostr/actions/workflows/pre-release.yml)
-
+
# gnostr: a git+nostr workflow utility
### install make:
@@ -167,5 +167,3 @@ nostril --mine-pubkey --pow <difficulty>
</p>
</details>
-
-
commit db0943ff25589c89436e47dfd5bcd326775e4cd3
Author: @RandyMcMillan <
[email protected]>
Date: Tue Jan 9 00:13:26 2024 -0500
.github/workflows/gnostr-docker.yml
diff --git a/.github/workflows/gnostr-docker.yml b/.github/workflows/gnostr-docker.yml
index 8f6413d62..221dabc40 100644
--- a/.github/workflows/gnostr-docker.yml
+++ b/.github/workflows/gnostr-docker.yml
@@ -34,7 +34,7 @@ jobs:
## notice: this is a pre checkout step
## notice: additional operations can be done prior to checkout
## - run: apk update && apk add bash cmake git python3 && python3 -m ensurepip
- - run: apt-get update && apt-get install build-essential cmake libexpat1-dev libcurl4-openssl-dev libssl-dev git make pkg-config python3 python-is-python3 sudo tcl zlib1g-dev -y
+ - run: apt-get update && apt-get install autoconf build-essential cmake libexpat1-dev libcurl4-openssl-dev libssl-dev git make pkg-config python3 python-is-python3 sudo tcl zlib1g-dev -y
- run: printenv
- name: checkout@v3 fetch-depth submodules set-safe-dir true
uses: actions/checkout@v3
@@ -48,13 +48,29 @@ jobs:
- run: git config --global --add safe.directory /__w/gnostr/gnostr || true
- run: make detect
- run: make
- - run: make gnostr-legit
- run: make bins
- run: make tui
- - run: make gnostr-git
- - run: make gnostr-all
- - run: make gnostr-install
- - run: make all
- - run: make install
+ - run: make gnostr-act
+ - run: make gnostr-aio
+ - run: make gnostr-cat
+ - run: make gnostr-cli
+ - run: make gnostr-command
+ - run: make gnostr-git
+ - run: make gnostr-grep
+ - run: make gnostr-legit
+ - run: make gnostr-lfs
+ - run: make gnostr-org
+ - run: make gnostr-proxy
+ - run: make gnostr-py
+ - run: make gnostr-sha256
+ - run: make hyper-nostr
+ - run: make hyper-sdk
+ - run: make secp256k1
+ - run: make gnostr-all
+ - run: make gnostr-install
+ - run: make all
+ - run: make install
- run: gnostr --sec $(gnostr-sha256) --content "$(gnostr-git show HEAD)" | gnostr-post-event wss://relay.damus.io
- run: make bins-test-fetch-by-id
+
+ - run: gnostr --sec $(gnostr-sha256) --content "$(curl -sSL "https://mempool.space/api/mempool/recent")" | gnostr-post-event wss://relay.damus.io | jq
commit ed7f6e651b19257fc1cb0f91055643e71ce8f5ad
Author: @RandyMcMillan <
[email protected]>
Date: Tue Jan 9 00:05:11 2024 -0500
.gitmodules
diff --git a/.gitmodules b/.gitmodules
index e34303196..8f28c23d5 100644
--- a/.gitmodules
+++ b/.gitmodules
@@ -114,3 +114,18 @@
url = https://github.com/gnostr-org/gnostr-bins.git
ignore = dirty
depth = shallow
+[submodule "workspace"]
+ path = workspace
+ url = https://github.com/gnostr-org/gnostr-workspace.git
+ ignore = dirty
+ depth = shallow
+[submodule "drives"]
+ path = drives
+ url = https://github.com/gnostr-org/gnostr-drives.git
+ ignore = dirty
+ depth = shallow
+[submodule "tui"]
+ path = tui
+ url = https://github.com/gnostr-org/gnostr-tui.git
+ ignore = dirty
+ depth = shallow
commit 64f06ac774641d49544492996194d4cc697374f0
Author: @RandyMcMillan <
[email protected]>
Date: Tue Jan 9 10:13:41 2024 -0500
.github/workflows/gnostr-docker.yml
diff --git a/.github/workflows/gnostr-docker.yml b/.github/workflows/gnostr-docker.yml
index 221dabc40..43d26d8ba 100644
--- a/.github/workflows/gnostr-docker.yml
+++ b/.github/workflows/gnostr-docker.yml
@@ -51,7 +51,6 @@ jobs:
- run: make bins
- run: make tui
- run: make gnostr-act
- - run: make gnostr-aio
- run: make gnostr-cat
- run: make gnostr-cli
- run: make gnostr-command
@@ -61,10 +60,7 @@ jobs:
- run: make gnostr-lfs
- run: make gnostr-org
- run: make gnostr-proxy
- - run: make gnostr-py
- run: make gnostr-sha256
- - run: make hyper-nostr
- - run: make hyper-sdk
- run: make secp256k1
- run: make gnostr-all
- run: make gnostr-install
commit c2fb6d62001ffb535087475281019f1127d848cb
Author: @RandyMcMillan <
[email protected]>
Date: Tue Jan 9 00:05:25 2024 -0500
drives
diff --git a/drives b/drives
new file mode 160000
index 000000000..274a20baf
--- /dev/null
+++ b/drives
@@ -0,0 +1 @@
+Subproject commit 274a20bafbae08cf2367eec27b8560ad9be96c06
commit a611f9fa08acce6aa27e940ef9dcc2ff9eee8af4
Author: @RandyMcMillan <
[email protected]>
Date: Tue Jan 9 00:05:52 2024 -0500
gnostr.js
diff --git a/gnostr.js b/gnostr.js
deleted file mode 100755
index 351e6ae95..000000000
--- a/gnostr.js
+++ /dev/null
@@ -1,48 +0,0 @@
-#!/usr/bin/env node
-
-var shell = require('shelljs');
-
-if (!shell.which('git')) {
- console.log(shel.which('git'));
- shell.echo('Sorry, this script requires git');
- shell.exit(1);
-}
-// console.log(shell.which('git'));
-if (!shell.which('gnostr')) {
- console.log(shell.which('gnostr'));
- shell.echo('Sorry, this script requires gnostr');
- shell.exit(1);
-}
-// console.log(shell.which('gnostr'));
-if (!shell.which('gnostr-proxy')) {
- console.log(shell.which('gnostr-proxy'));
- shell.echo('Sorry, this script requires gnostr');
- shell.exit(1);
-}
-// console.log(shell.which('gnostr-proxy'));
-if (!shell.which('gnostr-sha256')) {
- console.log(shell.which('gnostr-sha256'));
- shell.echo('Sorry, this script requires gnostr-sha256');
- shell.exit(1);
-}
-// console.log(shell.which('gnostr-sha256'));
-
-var body = shell.exec('gnostr --sec $(gnostr-sha256)');
-//console.log(body);
-
-
-const { argv } = require('node:process');
-const process = require('node:process');
-const path = require('node:path');
-const { cwd } = require('node:process');
-// console.log(`cwd=${cwd()}`);
-
-// print process.argv
-argv.forEach((val, index) => {
-
- if (`${val}` == `-h`)
- { console.log(`HELP!!`); }
- else
- { console.log(`${index}: ${val}`); }
-
-});
Hot take: Voting in the political sense is not a right. Democracy performs much better with more strict voting privileges.
commit c1d04784c259be85a97af055b75547b2e771e219
Author: @RandyMcMillan <
[email protected]>
Date: Tue Jan 9 00:06:17 2024 -0500
GNUmakefile
diff --git a/GNUmakefile b/GNUmakefile
index 0b085f356..623b35047 100644
--- a/GNUmakefile
+++ b/GNUmakefile
@@ -285,7 +285,7 @@ endif
bash -c "[ '$(shell uname -s)' == 'Linux' ] && sudo apt-get install python-is-python3 || echo "
bash -c "[ '$(shell uname -s)' == 'Linux' ] && sudo apt-get install util-linux || echo "
bash -c "[ '$(shell uname -s)' == 'Linux' ] && sudo apt-get install virtualenv || echo "
- bash -c "[ '$(shell uname -s)' == 'Linux' ] && sudo apt-get install zlib || echo "
+ bash -c "[ '$(shell uname -s)' == 'Linux' ] && sudo apt-get install zlib1g-dev || echo "
## install gvm sequence
@rm -rf $(HOME)/.gvm || echo "not removing ~/.gvm"
@@ -295,7 +295,7 @@ endif
bash -c "[ '$(shell uname -m)' == 'i386' ] && echo 'is i386' || echo 'not i386';"
## install rustup sequence
- $(shell echo which rustup) || curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | bash -s -- -y --no-modify-path --default-toolchain stable --profile default & . "$(HOME)/.cargo/env"
+ $(shell echo which rustup) || curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | bash -s -- -y --no-modify-path --default-toolchain stable --profile default #& . "$(HOME)/.cargo/env"
## install nvm sequence
@bash -c "curl https://raw.githubusercontent.com/creationix/nvm/master/install.sh | bash && export NVM_DIR='$(HOME)/.nvm'; [ -s '$(NVM_DIR)/nvm.sh' ] && \. '$(NVM_DIR)/nvm.sh'; [ -s '$(NVM_DIR)/bash_completion' ] && \. '$(NVM_DIR)/bash_completion' &"
commit 05b69ad6a5a8a2ff82df24918cea9abda78fa7e5
Author: @RandyMcMillan <
[email protected]>
Date: Tue Jan 9 11:06:50 2024 -0500
deps/gnostr-cli
diff --git a/deps/gnostr-cli b/deps/gnostr-cli
index cba8b4a2f..39ea27aec 160000
--- a/deps/gnostr-cli
+++ b/deps/gnostr-cli
@@ -1 +1 @@
-Subproject commit cba8b4a2f65dba6bc0297cfba654e4402377a20a
+Subproject commit 39ea27aecc7b9708849070345afabeff27861a1b
commit 513a9c69fad3bee1ff2eccaeb9bf12a0c714c066
Author: @RandyMcMillan <
[email protected]>
Date: Tue Jan 9 11:33:28 2024 -0500
src/gnostr-set-relays.c
diff --git a/src/gnostr-set-relays.c b/src/gnostr-set-relays.c
index 25fff8cf4..cbd682497 100755
--- a/src/gnostr-set-relays.c
+++ b/src/gnostr-set-relays.c
@@ -13,6 +13,15 @@
#define TEST_FUN_NAME STR(TEST_FUN)
+void help(){
+ printf("help");
+ exit(0);
+}
+void version(){
+ printf("v0.0.0");
+ exit(0);
+}
+
void some_func(void)
{
//char command[256];
@@ -28,6 +37,29 @@ void another_func(void)
int main(int argc, const char **argv) {
+ if (argc >= 2){
+ if (argv[0]){
+ //printf(" %s",argv[0]);
+ }
+ if (argv[1]){
+ //printf(" %s",argv[1]);
+ }
+ if (!strcmp(argv[1], "-h")){
+ //printf("argv[1]: %s",argv[1]);
+ help();
+ }
+ if (!strcmp(argv[1], "--help")){
+ //printf("argv[1]: %s",argv[1]);
+ help();
+ }
+ if (!strcmp(argv[1], "-v")){
+ version();
+ }
+ if (!strcmp(argv[1], "--version")){
+ version();
+ }
+ exit(0);
+ }
TEST_FUN();
//printf("TEST_FUN_NAME=%s\n", TEST_FUN_NAME);
commit a856d497fd64d6ca295f18db5742d8e3ef94df48
Author: @RandyMcMillan <
[email protected]>
Date: Tue Jan 9 11:36:30 2024 -0500
.gitignore:cargo init
diff --git a/.gitignore b/.gitignore
index 731ccd373..3f51b294e 100644
--- a/.gitignore
+++ b/.gitignore
@@ -171,3 +171,10 @@ web/wt_config.xml
web/APP_KEY
.gnostr/org
.gnostr/web
+
+
+# Added by cargo
+#
+# already existing elements were commented out
+
+#/target
commit 8507fcf44d998e50d1666a3d638200471b03d50f
Author: @RandyMcMillan <
[email protected]>
Date: Tue Jan 9 12:27:03 2024 -0500
GNUmakefile:make nvm
diff --git a/GNUmakefile b/GNUmakefile
index 623b35047..a1cdfa422 100644
--- a/GNUmakefile
+++ b/GNUmakefile
@@ -364,6 +364,16 @@ tags:tag
@git tag $(OS)-$(OS_VERSION)-$(ARCH)-$(shell date +%s)
@git push -f --tags || echo "unable to push tags..."
+.PHONY: nvm
+.ONESHELL:
+nvm: ## nvm
+ @echo "$(NODE_VERSION)" > .nvmrc
+ @curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/master/install.sh | bash || git pull -C $(HOME)/.nvm && export NVM_DIR="$(HOME)/.nvm" && [ -s "$(NVM_DIR)/nvm.sh" ] && \. "$(NVM_DIR)/nvm.sh" && [ -s "$(NVM_DIR)/bash_completion" ] && \. "$(NVM_DIR)/bash_completion" && nvm install $(NODE_VERSION) && nvm use $(NODE_VERSION)
+ @source ~/.bashrc && nvm alias $(NODE_ALIAS) $(NODE_VERSION) &
+
+nvm-clean: ## nvm-clean
+ @rm -rf ~/.nvm
+
-include gnostr.mk
-include gnostr-act.mk
-include venv.mk
commit 4af407e2c429848f62d38278b9b9803c18b78ade
Author: @RandyMcMillan <
[email protected]>
Date: Tue Jan 9 12:28:02 2024 -0500
.github/workflows/gnostr-docker.yml
diff --git a/.github/workflows/gnostr-docker.yml b/.github/workflows/gnostr-docker.yml
index f927d9562..fb6b9ca9a 100644
--- a/.github/workflows/gnostr-docker.yml
+++ b/.github/workflows/gnostr-docker.yml
@@ -48,6 +48,7 @@ jobs:
- run: git config --global --add safe.directory /__w/gnostr/gnostr || true
- run: make detect
- run: make
+ - run: make nvm
- run: make bins
- run: make tui
- run: make gnostr-act
commit eb155dc8c568c08adbab8e71e24c0a4b6a7744ad
Author: @RandyMcMillan <
[email protected]>
Date: Tue Jan 9 12:32:13 2024 -0500
Cargo.toml:Cargo.lock:gnostr:v0.0.0
diff --git a/Cargo.lock b/Cargo.lock
index c40704646..5f70fe97e 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -114,7 +114,7 @@ dependencies = [
[[package]]
name = "gnostr"
-version = "0.1.0"
+version = "0.0.0"
dependencies = [
"inline-c",
]
commit a0f6e3615c5c016c59409a5d1b4a7156d1414ddc
Author: @RandyMcMillan <
[email protected]>
Date: Tue Jan 9 12:38:56 2024 -0500
gnostr.mk:make gnostr-tui gnostr-bins
diff --git a/gnostr.mk b/gnostr.mk
index 10525ba2a..7629ba3bc 100644
--- a/gnostr.mk
+++ b/gnostr.mk
@@ -271,7 +271,8 @@ deps/gnostr-command/target/release/gnostr-command:deps/gnostr-command/gnostr-com
gnostr-command:deps/gnostr-command/target/release/gnostr-command## gnostr-command
cp $< $@ && exit;
-.PHONY:bins
+.PHONY:bins gnostr-bins
+gnostr-bins:bins
bins:
@cd bins && make cargo-b-release && make cargo-i
bins-test-post-event:
@@ -280,7 +281,8 @@ bins-test-fetch-by-id:
gnostr-fetch-by-id wss://relay.damus.io fbf73a17a4e0fe390aba1808a8d55f1b50717d5dd765b2904bf39eba18c51f7c | jq || true
#gnostr-fetch-by-id wss://relay.damus.io fbf73a17a4e0fe390aba1808a8d55f1b50717d5dd765b2904bf39eba18c51f7c | jq .content || true
-.PHONY:tui
+.PHONY:tui gnostr-tui
+gnostr-tui:tui
tui:
@cd tui && make build-release install
commit 77dfec515d2f23497e9f3322d6750a6017a55524
Author: @RandyMcMillan <
[email protected]>
Date: Tue Jan 9 12:51:09 2024 -0500
.github/workflows/gnostr-docker.yml
diff --git a/.github/workflows/gnostr-docker.yml b/.github/workflows/gnostr-docker.yml
index fb6b9ca9a..2eb2fbcd7 100644
--- a/.github/workflows/gnostr-docker.yml
+++ b/.github/workflows/gnostr-docker.yml
@@ -34,7 +34,7 @@ jobs:
## notice: this is a pre checkout step
## notice: additional operations can be done prior to checkout
## - run: apk update && apk add bash cmake git python3 && python3 -m ensurepip
- - run: apt-get update && apt-get install autoconf build-essential cmake libexpat1-dev libcurl4-openssl-dev libssl-dev git make pkg-config python3 python-is-python3 sudo tcl zlib1g-dev -y
+ - run: apt-get update && apt-get install autoconf build-essential cmake libexpat1-dev libcurl4-openssl-dev libssl-dev git make nodejs npm pkg-config python3 python-is-python3 sudo tcl zlib1g-dev -y
- run: printenv
- name: checkout@v3 fetch-depth submodules set-safe-dir true
uses: actions/checkout@v3
@@ -61,7 +61,7 @@ jobs:
- run: make gnostr-org
- run: make gnostr-proxy
- run: make gnostr-sha256
- - run: make secp256k1
+ - run: make libsecp256k1.a
- run: make gnostr-all
- run: make gnostr-install
- run: make all
commit 829316a438157ff7f63973bf7bdf3b52a4fdd064
Author: @RandyMcMillan <
[email protected]>
Date: Tue Jan 9 13:50:53 2024 -0500
Cargo.toml:package info:publish
diff --git a/.github/workflows/gnostr-docker.yml b/.github/workflows/gnostr-docker.yml
index 2eb2fbcd7..575e2d3b2 100644
--- a/.github/workflows/gnostr-docker.yml
+++ b/.github/workflows/gnostr-docker.yml
@@ -58,7 +58,6 @@ jobs:
- run: make gnostr-git
- run: make gnostr-grep
- run: make gnostr-legit
- - run: make gnostr-org
- run: make gnostr-proxy
- run: make gnostr-sha256
- run: make libsecp256k1.a
diff --git a/Cargo.toml b/Cargo.toml
index ca46ab1f4..30a824b3f 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -1,50 +1,19 @@
-
-# Config for 'cargo dist'
-[workspace.metadata.dist]
-# The preferred cargo-dist version to use in CI (Cargo.toml SemVer syntax)
-cargo-dist-version = "0.14.1"
-# CI backends to support
-ci = "github"
-# The installers to generate for each app
-installers = ["shell", "homebrew"]
-# A GitHub repo to push Homebrew formulas to
-tap = "gnostr-org/homebrew-gnostr-org"
-# Target platforms to build apps for (Rust target-triple syntax)
-targets = ["aarch64-apple-darwin", "x86_64-apple-darwin", "x86_64-unknown-linux-gnu"]
-# Publish jobs to run in CI
-publish-jobs = ["homebrew"]
-# Publish jobs to run in CI
-pr-run-mode = "plan"
-# Whether to install an updater program
-install-updater = true
[package]
name = "gnostr"
-version = "0.0.44"
-license = "Apache-2.0"
-rust-version = "1.76"
+version = "0.0.0"
edition = "2021"
-readme = "README.md"
+authors = ["gnostr <
[email protected]>","extrawurst <
[email protected]>", "TODO:add more contributors"]
+description = "gnostr: a git+nostr workflow utility"
+rust-version = "1.65"
+exclude = [".github/*", ".vscode/*", "assets/*"]
homepage = "https://github.com/gnostr-org/gnostr"
repository = "https://github.com/gnostr-org/gnostr"
-documentation = "https://github.com/gnostr"
-categories = ["version-control", "development-tools", "gnostr", "nostr"]
-keywords = ["git", "gnostr", "nostr"]
-description = "git+nostr workflow utility"
-authors = ["gnostr <
[email protected]>","Mike Dilger <
[email protected]>", "DanConwayDev <
[email protected]>", "Max Inden <
[email protected]>","fiatjaf <
[email protected]>", "Nate Levin <
[email protected]>", "Nethanja Focking <
[email protected]>", "Daniele Tonon <
[email protected]>", "jeremyd (@jeremyd)"]
-
-exclude = [".github", "deps", "scripts", "docs"]
+readme = "README.md"
+license = "MIT"
+categories = ["command-line-utilities"]
+keywords = ["git", "gui", "cli", "terminal", "ui", "gnostr"]
-[build-dependencies]
-cc = { version = "1.0.98", features = ["libc"] }
-include_dir = { version = "0.7.3", features = ["glob", "metadata"] }
-markdown = { version = "1.0.0-alpha.17", features = ["json", "log", "serde"] }
+# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[dependencies]
-cc = "1.0.98"
-include_dir = { version = "0.7.3", features = ["glob", "metadata"] }
-markdown = { version = "1.0.0-alpha.17", features = ["json", "log", "serde"] }
-
-# The profile that 'cargo dist' will build with
-[profile.dist]
-inherits = "release"
-lto = "thin"
+inline-c = "0.1.7"
commit 7c34b9f965a1da4160155aaa16f0885b4a696359
Author: @RandyMcMillan <
[email protected]>
Date: Sat Jan 13 13:07:52 2024 -0500
doc/gnostr-act.1
diff --git a/doc/gnostr-act.1 b/doc/gnostr-act.1
index ec49139a4..ba4870c9c 100644
--- a/doc/gnostr-act.1
+++ b/doc/gnostr-act.1
@@ -1,7 +1,7 @@
.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.49.3.
-.TH ACT "1" "January 2024" "act version 0.0.13" "User Commands"
+.TH ACT "1" "January 2024" "act version 0.0.0" "User Commands"
.SH NAME
-act \- manual page for act version 0.0.13
+act \- manual page for act version 0.0.0
.SH DESCRIPTION
Run GitHub actions locally by specifying the event name (e.g. `push`) or an action name directly.
.SS "Usage:"
@@ -19,7 +19,7 @@ Defines the path where the actions get cached and host workspaces created. (defa
user that triggered the event (default "nektos/act")
.TP
\fB\-\-artifact\-server\-addr\fR string
-Defines the address to which the artifact server binds. (default "10.2.0.2")
+Defines the address to which the artifact server binds. (default "10.1.5.8")
.TP
\fB\-\-artifact\-server\-path\fR string
Defines the path where the artifact server stores uploads and retrieves downloads from. If not specified the artifact server will not start.
@@ -34,7 +34,7 @@ bind working directory to container, rather than copy
Display system information for bug report
.TP
\fB\-\-cache\-server\-addr\fR string
-Defines the address to which the cache server binds. (default "10.2.0.2")
+Defines the address to which the cache server binds. (default "10.1.5.8")
.TP
\fB\-\-cache\-server\-path\fR string
Defines the path where the cache server stores caches. (default "/Users/git/.cache/actcache")
commit c019f4879d1c939c4c46f79134dce49f8db63112
Author: @RandyMcMillan <
[email protected]>
Date: Sat Jan 13 13:04:25 2024 -0500
.gitignore
diff --git a/.gitignore b/.gitignore
index 3f51b294e..c6ecfb525 100644
--- a/.gitignore
+++ b/.gitignore
@@ -178,3 +178,4 @@ web/APP_KEY
# already existing elements were commented out
#/target
+.gnostr/webview
commit b1575239f8f609b68ac103437f406ed14661c0ce
Author: @RandyMcMillan <
[email protected]>
Date: Tue Jan 9 15:44:42 2024 -0500
.github/workflows/gnostr-docker.yml
diff --git a/.github/workflows/gnostr-docker.yml b/.github/workflows/gnostr-docker.yml
index 575e2d3b2..36140dcf3 100644
--- a/.github/workflows/gnostr-docker.yml
+++ b/.github/workflows/gnostr-docker.yml
@@ -1,6 +1,8 @@
name: gnostr-docker
on:
+ schedule:
+ - cron: '0 2 * * *' # run at 2 AM UTC
pull_request:
branches:
- '*'
@@ -47,6 +49,7 @@ jobs:
- run: touch ~/GITHUB_TOKEN.txt
- run: git config --global --add safe.directory /__w/gnostr/gnostr || true
- run: make detect
+ - run: cmake .
- run: make
- run: make nvm
- run: make bins
@@ -65,7 +68,7 @@ jobs:
- run: make gnostr-install
- run: make all
- run: make install
+ - run: ls /usr/local/bin
- run: gnostr --sec $(gnostr-sha256) --content "$(gnostr-git show HEAD)" | gnostr-post-event wss://relay.damus.io
- run: make bins-test-fetch-by-id
-
- run: gnostr --sec $(gnostr-sha256) --content "$(curl -sSL "https://mempool.space/api/mempool/recent")" | gnostr-post-event wss://relay.damus.io | jq
commit 9ee41e90edcf54b0dd2f7d1a5b549b57bd9df7c9
Author: @RandyMcMillan <
[email protected]>
Date: Thu Jan 11 21:35:51 2024 -0500
gnostr.mk:make tui
diff --git a/gnostr.mk b/gnostr.mk
index 3824c95bb..80f1db6ec 100644
--- a/gnostr.mk
+++ b/gnostr.mk
@@ -287,7 +287,7 @@ bins-test-fetch-by-id:
gnostr-tui:tui
tui:
@devtools/refresh-submodules.sh tui
- @cd tui && make build-release install
+ @cd tui && make build-release install && cd ..
deps/gnostr-legit/.git:gnostr-git
@devtools/refresh-submodules.sh deps/gnostr-legit
commit 76b306fb1b66a5b060545da8918c690d39c8f728
Author: @RandyMcMillan <
[email protected]>
Date: Sat Jan 13 13:07:07 2024 -0500
deps/gnostr-lfs
diff --git a/deps/gnostr-lfs b/deps/gnostr-lfs
index 1f9c6959d..ddebe0425 160000
--- a/deps/gnostr-lfs
+++ b/deps/gnostr-lfs
@@ -1 +1 @@
-Subproject commit 1f9c6959dae2bf8f4c21cae17a976b3727d0049a
+Subproject commit ddebe0425f480fe55b2622ac7c8e30b98c944990
commit 643c856911445c18381a80f9aca4e896efef4712
Author: @RandyMcMillan <
[email protected]>
Date: Thu Jan 11 22:51:06 2024 -0500
gnostr.mk:gnostr-all:remove gnostr-tui
diff --git a/gnostr.mk b/gnostr.mk
index 80f1db6ec..803b314e1 100644
--- a/gnostr.mk
+++ b/gnostr.mk
@@ -555,7 +555,7 @@ gnostr-all:
type -P gnostr || $(MAKE) -j gnostr
$(MAKE) -j gnostr-install
type -P gnostr-post-event || $(MAKE) -j bins
- type -P gnostr-tui || $(MAKE) -j tui
+ #type -P gnostr-tui || $(MAKE) -j tui
type -P gnostr-cat || $(MAKE) -j gnostr-cat
type -P gnostr-cli || $(MAKE) -j gnostr-cli
type -P gnostr-grep || $(MAKE) -j gnostr-grep
commit 1108d5f700b9354e209eac51deee5f58f02ffe15
Author: @RandyMcMillan <
[email protected]>
Date: Sat Jan 13 13:03:55 2024 -0500
doc/gnostr-get-relays-c.1:remove
diff --git a/doc/gnostr-get-relays-c.1 b/doc/gnostr-get-relays-c.1
deleted file mode 100644
index ad2f010fd..000000000
--- a/doc/gnostr-get-relays-c.1
+++ /dev/null
@@ -1,18 +0,0 @@
-.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.49.3.
-.TH GNOSTR-GET-RELAYS-C "1" "January 2024" "gnostr-get-relays-c v0.0.0" "User Commands"
-.SH NAME
-gnostr-get-relays-c \- manual page for gnostr-get-relays-c v0.0.0
-.SH DESCRIPTION
-help
-.SH "SEE ALSO"
-The full documentation for
-.B gnostr-get-relays-c
-is maintained as a Texinfo manual. If the
-.B info
-and
-.B gnostr-get-relays-c
-programs are properly installed at your site, the command
-.IP
-.B info gnostr-get-relays-c
-.PP
-should give you access to the complete manual.
commit 49b4f34804d688640a32ed10c9e2566f5b0c2f22
Author: @RandyMcMillan <
[email protected]>
Date: Sat Jan 13 13:07:33 2024 -0500
template/gnostr-fs
diff --git a/template/gnostr-fs b/template/gnostr-fs
old mode 100644
new mode 100755
commit 512e608b31ceed3de4b9ed214b35dffdc22745e0
Author: @RandyMcMillan <
[email protected]>
Date: Sat Jan 13 13:13:47 2024 -0500
.github/workflows/gnostr-bot.yml
diff --git a/.github/workflows/gnostr-bot.yml b/.github/workflows/gnostr-bot.yml
index 3a69238a1..db35445e9 100644
--- a/.github/workflows/gnostr-bot.yml
+++ b/.github/workflows/gnostr-bot.yml
@@ -41,7 +41,7 @@ jobs:
set-safe-directory: 'true'
- run: git config --global --add safe.directory /__w/gnostr/gnostr || true
- run: printenv
- - run: apt-get update && apt-get install clang clang-14 libclang-common-14-dev libclang-rt-14-dev libclang1-14 libgc1 libobjc-12-dev libobjc4 cargo cmake-data libarchive13 libjsoncpp25 librhash0 libuv1 cmake python3 python-is-python3 sudo binfmt-support libclang-cpp14 libcurl3-nss libgit2-1.5 libhttp-parser2.9 libllvm14 libmbedcrypto7 libmbedtls14 libmbedx509-1 libnspr4 libnss3 libpfm4 libpipeline1 libstd-rust-1.63 libstd-rust-dev libz3-4 libz3-dev llvm-14 llvm-14-dev llvm-14-linker-tools llvm-14-runtime llvm-14-tools nss-plugin-pem python3-pkg-resources python3-pygments python3-yaml rustc gettext gettext-base -y
+ - run: apt-get update && apt-get install binfmt-support cargo clang clang-14 cmake cmake-data gettext gettext-base lib32gcc-s1 lib32stdc++6 libarchive13 libc6-i386 libclang-common-14-dev libclang-cpp14 libclang-rt-14-dev libclang1-14 libcurl3-nss libgc1 libgit2-1.5 libhttp-parser2.9 libjsoncpp25 libllvm14 libmbedcrypto7 libmbedtls14 libmbedx509-1 libnspr4 libnss3 libobjc-12-dev libobjc4 libpfm4 libpipeline1 librhash0 libstd-rust-1.63 libstd-rust-dev libuv1 libz3-4 libz3-dev llvm-14 llvm-14-dev llvm-14-linker-tools llvm-14-runtime llvm-14-tools nss-plugin-pem python-is-python3 python3-pkg-resources python3-pygments python3-yaml rustc sudo -y
- run: cargo install gnostr-sha256
- run: cargo install gnostr-bins
- run: rm -rf CMakeCache.txt
commit d7ab41137a33d85c02df1753d904448ec6130710
Author: @RandyMcMillan <
[email protected]>
Date: Sat Jan 13 13:03:31 2024 -0500
gnostr.mk
diff --git a/gnostr.mk b/gnostr.mk
index 803b314e1..97424f86e 100644
--- a/gnostr.mk
+++ b/gnostr.mk
@@ -42,7 +42,6 @@ gnostr-act\
gnostr-blockheight\
gnostr-cli\
gnostr-client\
-gnostr-get-relays-c\
gnostr-get-relays\
gnostr-git-log\
gnostr-git-reflog\
commit 4e1bef94bc08741d57eb8b16e1d2f1d978b2ac1c
Author: @RandyMcMillan <
[email protected]>
Date: Sat Jan 13 23:42:39 2024 -0500
doc/gnostr-tui.1
diff --git a/doc/gnostr-tui.1 b/doc/gnostr-tui.1
index 4f12f0698..aca991952 100644
--- a/doc/gnostr-tui.1
+++ b/doc/gnostr-tui.1
@@ -1,14 +1,14 @@
.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.49.3.
-.TH GNOSTR-TUI "1" "January 2024" "gnostr-tui 0.0.2" "User Commands"
+.TH GNOSTR-TUI "1" "January 2024" "gnostr-tui 0.0.3" "User Commands"
.SH NAME
-gnostr-tui \- manual page for gnostr-tui 0.0.2
+gnostr-tui \- manual page for gnostr-tui 0.0.3
.SH SYNOPSIS
.B gnostr-tui
[\fI\,OPTIONS\/\fR]
.SH DESCRIPTION
-gnostr\-tui 0.0.2
+gnostr\-tui 0.0.3
gnostr <
[email protected]>:extrawurst <
[email protected]>
-blazing fast terminal\-ui for git
+terminal\-ui for gnostr
.SH OPTIONS
.TP
\fB\-t\fR, \fB\-\-theme\fR <THEME>
commit 1e70ec712d55683128f13e40d0ab351da2106e17
Author: @RandyMcMillan <
[email protected]>
Date: Sat Jan 13 23:35:17 2024 -0500
.gitmodules:db
diff --git a/.gitmodules b/.gitmodules
index 791ab1303..d404a8008 100644
--- a/.gitmodules
+++ b/.gitmodules
@@ -124,3 +124,6 @@
url = https://github.com/gnostr-org/gnostr-tui.git
ignore = dirty
depth = shallow
+[submodule "gnostr-db"]
+ path = db
+ url = https://github.com/gnostr-org/gnostr-db.git
diff --git a/db b/db
new file mode 160000
index 000000000..08bf5f266
--- /dev/null
+++ b/db
@@ -0,0 +1 @@
+Subproject commit 08bf5f266f36414f6af1220aa46dfbf91ab1d285
commit 3cf1df62a3a67bac23a8ba6d6189f3d28fed6b86
Author: @RandyMcMillan <
[email protected]>
Date: Sat Jan 13 19:51:11 2024 -0500
tui:v0.0.3
diff --git a/tui b/tui
index dd951402f..51807f34e 160000
--- a/tui
+++ b/tui
@@ -1 +1 @@
-Subproject commit dd951402f9d8283574d787268d7577d54c2ad210
+Subproject commit 51807f34e81431d6a6ea4c1b8ee0a677c588c33b
commit 6a80654412093128318002f29d960b7bb1c3eb23
Author: @RandyMcMillan <
[email protected]>
Date: Sat Jan 13 23:41:17 2024 -0500
doc/gnostr-db-cli.1:doc/gnostr-db.1
diff --git a/doc/gnostr-db-cli.1 b/doc/gnostr-db-cli.1
new file mode 100644
index 000000000..16678775c
--- /dev/null
+++ b/doc/gnostr-db-cli.1
@@ -0,0 +1,39 @@
+.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.49.3.
+.TH NODE-CLI "1" "January 2024" "node-cli 0.1.0" "User Commands"
+.SH NAME
+node-cli \- manual page for node-cli 0.1.0
+.SH DESCRIPTION
+node\-cli 0.1.0
+CLI for interacting with the P2P network.
+.SS "USAGE:"
+.IP
+gnostr\-db\-cli <SUBCOMMAND>
+.SS "FLAGS:"
+.TP
+\fB\-h\fR, \fB\-\-help\fR
+Prints help information
+.TP
+\fB\-V\fR, \fB\-\-version\fR
+Prints version information
+.SS "SUBCOMMANDS:"
+.TP
+get
+Get value by key from a specific node
+.TP
+help
+Prints this message or the help of the given subcommand(s)
+.TP
+set
+Set a key\-value pair on a specific node
+.SH "SEE ALSO"
+The full documentation for
+.B node-cli
+is maintained as a Texinfo manual. If the
+.B info
+and
+.B node-cli
+programs are properly installed at your site, the command
+.IP
+.B info node-cli
+.PP
+should give you access to the complete manual.
diff --git a/doc/gnostr-db.1 b/doc/gnostr-db.1
new file mode 100644
index 000000000..41f322cab
--- /dev/null
+++ b/doc/gnostr-db.1
@@ -0,0 +1,20 @@
+.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.49.3.
+.TH GNOSTR-DB "1" "January 2024" "gnostr-db " "User Commands"
+.SH NAME
+gnostr-db \- manual page for gnostr-db
+.SH DESCRIPTION
+gnostr\-db [\-n (won't append newline)] [num (e.g 5)]
+.PP
+v0.0.0
+.SH "SEE ALSO"
+The full documentation for
+.B gnostr-db
+is maintained as a Texinfo manual. If the
+.B info
+and
+.B gnostr-db
+programs are properly installed at your site, the command
+.IP
+.B info gnostr-db
+.PP
+should give you access to the complete manual.
commit 0493e6eb8c8dd6d8ab1653565db94cd2bbe8cd7f
Author: @RandyMcMillan <
[email protected]>
Date: Sat Jan 13 13:14:10 2024 -0500
package.json
diff --git a/package.json b/package.json
index dda1c8e1e..7036dce4a 100644
--- a/package.json
+++ b/package.json
@@ -9,7 +9,11 @@
"test": "test"
},
"scripts": {
- "test": "./gnostr.js"
+ "test": "./gnostr.js",
+ "h-test": "./gnostr.js -h",
+ "help-test": "./gnostr.js --help",
+ "v-test": "./gnostr.js -v",
+ "version-test": "./gnostr.js --version"
},
"repository": {
"type": "git",
commit 0f32aae3f19e22e037ebc1e12437a06c7e8e6472
Author: @RandyMcMillan <
[email protected]>
Date: Sun Jan 14 15:13:01 2024 -0500
gnostr.mk:doc/gnostr-tests.1
diff --git a/doc/gnostr-tests.1 b/doc/gnostr-tests.1
index e69de29bb..927504a95 100644
--- a/doc/gnostr-tests.1
+++ b/doc/gnostr-tests.1
@@ -0,0 +1,34 @@
+.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.49.3.
+.TH GNOSTR-TESTS "1" "January 2024" "gnostr-tests v0.0.0" "User Commands"
+.SH NAME
+gnostr-tests \- manual page for gnostr-tests v0.0.0
+.SH SYNOPSIS
+.B gnostr-tests
+[\fI\,--help\/\fR] [\fI\,--version\/\fR] [\fI\,--port VAR\/\fR] \fI\,port\/\fR
+.SH DESCRIPTION
+.SS "Positional arguments:"
+.TP
+port
+gnostr\-tests <int> [default: 0]
+.SS "Optional arguments:"
+.TP
+\fB\-h\fR, \fB\-\-help\fR
+shows help message and exits
+.TP
+\fB\-v\fR, \fB\-\-version\fR
+prints version information and exits
+.TP
+\fB\-\-port\fR
+gnostr\-tests \fB\-\-port\fR <int> [default: 0]
+.SH "SEE ALSO"
+The full documentation for
+.B gnostr-tests
+is maintained as a Texinfo manual. If the
+.B info
+and
+.B gnostr-tests
+programs are properly installed at your site, the command
+.IP
+.B info gnostr-tests
+.PP
+should give you access to the complete manual.
diff --git a/gnostr.mk b/gnostr.mk
index 8a30b77c1..795af0c96 100644
--- a/gnostr.mk
+++ b/gnostr.mk
@@ -56,6 +56,7 @@ gnostr-req\
gnostr-send\
gnostr-set-relays\
gnostr-sha256\
+gnostr-tests\
gnostr-tui\
gnostr-weeble\
gnostr-wobble\
commit 269f1486a3a88951838d1419bd7c23674729b215
Author: @RandyMcMillan <
[email protected]>
Date: Sun Jan 14 23:06:04 2024 -0500
template/gnostr-keyconv:doc/gnostr-keyconv.1
diff --git a/doc/gnostr-keyconv.1 b/doc/gnostr-keyconv.1
index 0c87e472e..9466c7474 100644
--- a/doc/gnostr-keyconv.1
+++ b/doc/gnostr-keyconv.1
@@ -6,7 +6,7 @@ gnostr-keyconv \- manual page for gnostr-keyconv v0.0.0
.IP
gnostr\-keyconv [\-h, \fB\-\-help]\fR
.IP
-gnostr\-keyconv [\-v, \fB\-\-verion]\fR
+gnostr\-keyconv [\-v, \fB\-\-version]\fR
.IP
gnostr\-keyconv [\-t, \fB\-\-tests]\fR
.IP
diff --git a/template/gnostr-keyconv b/template/gnostr-keyconv
index 42581b92f..6d7c81dd3 100755
--- a/template/gnostr-keyconv
+++ b/template/gnostr-keyconv
@@ -159,7 +159,7 @@ def supported_prefixes():
def help():
print("\n")
print(" gnostr-keyconv [-h, --help]\n")
- print(" gnostr-keyconv [-v, --verion]\n")
+ print(" gnostr-keyconv [-v, --version]\n")
print(" gnostr-keyconv [-t, --tests]\n")
print(" gnostr-keyconv [-p, --prefixes]\n")
print(" gnostr-keyconv [-vecs, --vectors]\n")
commit d6b436ef6695ddc9c099aed234bc22d55f5a0742
Author: @RandyMcMillan <
[email protected]>
Date: Sun Jan 14 18:31:40 2024 -0500
gnostr.c: || or
diff --git a/gnostr.c b/gnostr.c
index 3e8aca637..bb7b73dad 100644
--- a/gnostr.c
+++ b/gnostr.c
@@ -484,11 +484,11 @@ static int parse_args(int argc, const char *argv[], struct args *args, struct no
for (; argc; ) {
arg = *argv++; argc--;
- if (!strcmp(arg, "--help") | !strcmp(arg, "-h")) { usage(); }
+ if (!strcmp(arg, "--help") || !strcmp(arg, "-h")) { usage(); }
- if (!strcmp(arg, "--version") | !strcmp(arg, "-v")) { version(); }
+ if (!strcmp(arg, "--version") || !strcmp(arg, "-v")) { version(); }
- if (!strcmp(arg, "--about") | !strcmp(arg, "-a")) { about(); }
+ if (!strcmp(arg, "--about") || !strcmp(arg, "-a")) { about(); }
if (!strcmp(arg, "--hash")){ openssl_hash(argc, *argv, args); }
commit a73369631ffa8420a06e3935edc488a0787df1de
Author: @RandyMcMillan <
[email protected]>
Date: Sat Jan 13 20:16:35 2024 -0500
tui
diff --git a/tui b/tui
index 51807f34e..087e6b041 160000
--- a/tui
+++ b/tui
@@ -1 +1 @@
-Subproject commit 51807f34e81431d6a6ea4c1b8ee0a677c588c33b
+Subproject commit 087e6b041c9fb15b79f3f0aa2f41a40b0f098b16
commit 2b8916391996f000d310c2075c646d6a5e3a21d7
Author: @RandyMcMillan <
[email protected]>
Date: Sat Jan 13 23:39:22 2024 -0500
make:db
diff --git a/db b/db
index 08bf5f266..7c8981338 160000
--- a/db
+++ b/db
@@ -1 +1 @@
-Subproject commit 08bf5f266f36414f6af1220aa46dfbf91ab1d285
+Subproject commit 7c8981338fe4ac958c26294962215c23f00d0f1e
diff --git a/gnostr.mk b/gnostr.mk
index 97424f86e..8a30b77c1 100644
--- a/gnostr.mk
+++ b/gnostr.mk
@@ -42,6 +42,8 @@ gnostr-act\
gnostr-blockheight\
gnostr-cli\
gnostr-client\
+gnostr-db\
+gnostr-db-cli\
gnostr-get-relays\
gnostr-git-log\
gnostr-git-reflog\
@@ -287,6 +289,11 @@ gnostr-tui:tui
tui:
@devtools/refresh-submodules.sh tui
@cd tui && make build-release install && cd ..
+.PHONY:db gnostr-db
+gnostr-db:db
+db:
+ @devtools/refresh-submodules.sh db
+ @cd db && make build-release install && cd ..
deps/gnostr-legit/.git:gnostr-git
@devtools/refresh-submodules.sh deps/gnostr-legit